回答:
プロジェクトのロックが解除されて表示可能な場合、Ctrl-Breakは現在のステートメントで一時停止/中断する必要があります。コードでクラスを使用する場合は、VBEのTools.Options .. Generalタブ:Break in Class Modulesを選択する必要がありますが、元に戻すことを忘れないでください。そうしないと、実稼働環境で予期しない結果が生じる可能性があります。
Excelシート/コントロールからのイベントの発生を停止する必要がある場合Application.EnableEvents = False
は、イミディエイトウィンドウまたはコードで使用できます。
特定のプロセスが実行されるのを待つ必要がある場合、PIDを以下の関数に渡すことができます。プロセスの実行が完了すると、VBステートメントの通常の実行が再開されます。
Public Sub processCHK(cid As Long)
Dim strComputer As String
Dim colProcesses
Dim objWMIService
strComputer = "."
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Do
DoEvents
' Update the collection of processes returned
Set colProcesses = objWMIService.ExecQuery("SELECT * FROM Win32_Process WHERE ProcessID " & " = '" & cid & "'")
Loop Until colProcesses.count = 0
End Sub