在执行Workbooks.Open或MsgBox命令后,Excel宏不会处于调试模式

时间:2018-07-11 22:04:27

标签: excel vba excel-vba debugging breakpoints

我以前曾遇到过这个问题,但充其量似乎是零星的。最近,我经常看到它,所以我想问问是否有人知道如何避免这个问题。

我正在运行Excel 2013,在我的代码中,我让用户选择要打开的文件,然后VBA打开该文件。效果很好,但是如果我逐行浏览代码,它将始终在Workbooks.Open命令之后继续运行代码,就像我按F5一样。

fileToOpen = Application.GetOpenFilename("Excel Files,*.xlsx")
If (fileToOpen = "False") Then
    MsgBox ("No file selected; aborting")
    Exit Sub
End If
thisWB = ActiveWorkbook.Name
Workbooks.Open Filename:=fileToOpen, Origin:=xlWindows, UpdateLinks:=0
logicWB = ActiveWorkbook.Name

从最后一行(logicWB = ActiveWorkbook.Name)开始,代码将继续运行,直到到达下一个断点或宏末尾为止。

今天,我也开始在MsgBox命令之后看到这种行为(我使用MsgBox而不是Debug.Print,因为我还需要用户在运行时查看MsgBox),这令人难以置信。到目前为止,我一直在尽力记住要在这两个命令之后立即添加一个Breakpoint,但这显然不是理想的解决方案。

我应该在某处寻找设置吗?还是其他人看到了这种行为,并提出了一种阻止它的方法?

谢谢。

0 个答案:

没有答案