Excel VBA 質問スレ Part39 [転載禁止]©5ch.io
レス数が950を超えています。1000を超えると書き込みができなくなります。
0966デフォルトの名無しさん
2016/02/17(水) 18:11:29.39ID:ZHMdTa0oDoEventsがないと、そのプログラムは「応答なし」になって固まってしまう。(実際は処理をしてるんだけど)
DoEventsを入れると、そのタイミングでWindowsのイベントを処理してくれる。
Windowsのイベントというのは、キー入力とかマウス操作とか。
以下のコードは合計100万回×100万回のループでいつ終わるかわからないけど、実行中もExcelの操作はできるし
マクロの終了ボタンも押せる。
Sub Sample()
Dim i As Long
Dim j As Long
Dim k As Long
Debug.Print "開始"
For i = 1 To 1000000
DoEvents
For j = 1 To 1000000
k = Rnd * 10
Next
Next
Debug.Print "終了"
End Sub
レス数が950を超えています。1000を超えると書き込みができなくなります。