在没有其他计时器完成提交响应后运行macros

我再次用新的查询,我已经做了macros,并将其分配在Workbook.open ,现在我想稍微改变一下,我想提示消息框,其中包含Do You want to Stop Macro ? 选项YESNO ,如果我点击是在10秒的工作簿打开,我想留在相同的Excel不执行macros; 否则,如果点击“ NO或者10秒完成,则运行macros。

VBA有一个MsgBox函数,但是你不能让这个时间像你想要的那样。

要获得超时function的提示,可以使用WScript.Shell对象的Popup方法。 您可以使用CreateObject调用创buildShell对象,并查看有关如何使用它的更多详细信息的Popup方法的MSDN文档 。

@Dharmendra也许你可以试试这个代码:

 Private Sub Workbook_Open() wbClose End Sub Sub wbClose() Dim time As Integer, prompt As String time = 10 'this is in seconds format prompt = "This Workbook will close in " & time & " seconds." & _ vbLf & "Press OK if you want some changes to this Workbook." With CreateObject("WScript.Shell") Select Case .Popup(prompt, time, "Message", 0) Case 1 Exit Sub End Select End With ThisWorkbook.Close True End Sub 

只要做一些修改,如果你喜欢。 谢谢!