対象:Excel2003, Excel2007, Excel2010
「エクセル マクロ 一定時間 停止」
という検索が行われていました。
Excelマクロの実行を一定時間停止する方法、マクロの実行を待機させる方法を探している方による検索でしょうか。
[スポンサードリンク]
いくつかの方法が考えられますが、Application.Waitメソッドを利用するのがお手軽だと思います。
▼マクロの実行を1秒待機するコード
Application.Wait Now + TimeValue("00:00:01")
Application.Wait Now + TimeValue("00:00:01")
Application.Waitメソッドは、実行中のマクロを引数で指定された時刻まで停止します。
Now関数で現在の時刻を取得して、それにTimeValue("00:00:01")を加算すると、現在の1秒後の時刻となります。
現在の1秒後にマクロの実行が再開されるので、結果的に1秒待機するということです。
以下のようなマクロを実行すると、A1:A10セルに、1から10までの数値が、1秒ごとに入力されていき、Application.Waitメソッドの動きを確認できるでしょう。
Sub Waitメソッドのテスト()
Dim i As Long
For i = 1 To 10
Application.Wait Now + TimeValue("00:00:01")
Cells(i, 1).Value = i
Next i
End Sub
関連語句
VBA, Visual Basic for Applications
[スポンサードリンク]
Home » エクセルマクロ・Excel VBAの使い方 » Applicationオブジェクト » マクロの実行を一時停止する・待機する方法-Application.Waitメソッド