Excel VBAで簡単に秒待つ方法:初心者でもできる実践ガイド

こんにちは!大阪市を拠点に活動している『縁紡ぐ』の稲垣です。
SWELLを使ったホームページ制作や、Excel、ACCESS、RPAなどのシステム開発を行っています。
また、Excel、Word、Outlookの研修や、情報セキュリティ研修も行っています。身近なITの相談相手になりたいと思っています。
お気軽にお問い合わせください。
処理を止める方法は2通り
VBA(Visual Basic for Applications)は、Excelでの自動化をするプログラミング言語です。この記事では、VBAを使って特定の秒数待つ方法をご紹介します。初心者でも理解しやすい内容になっていますので、ぜひ最後まで読んでください。
例えば、データの読み込みや外部プログラムとの連携処理では、処理が完了するまで待つ必要があります。待機時間を設けることで、エラーを防ぐことができます。
指定した時刻まで処理を停止
Application.Wait
メソッドを使用することで、指定した時間まで処理を停止させることができます。
Sub WaitExample()
Application.Wait (Now + TimeValue("0:00:10")) ' 10秒待つ
End Sub
解説
Now: 現在の日時を取得します。
TimeValue(“0:00:10”): 10秒を表す時間値を取得します。
Now + TimeValue(“0:00:10”): 現在の時刻に10秒を加えた新しい時刻を計算します。
Application.Wait: 指定された時刻になるまで、Excelのすべての処理を停止します。
Sleep
関数の使用
Windows APIのSleep 関数を使えば、ミリ秒単位で待機できます。
Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Sub SleepExample()
Sleep 5000 ' 5秒待つ
End Sub
PtrSafe
は、64ビット版のExcelで必要です。32ビット版のExcelを使用している場合は、PtrSafe
を省略できますが、64ビット版を考慮し書いておく方がよいでしょう。
まとめ
VBAで特定の秒数待つ方法を紹介しました。Application.Wait
や Sleep
関数を使うことで、簡単に待機処理を実装できます。これにより、より安定した自動化が可能になります。

稲垣
- Excel、ACCESSでのシステム開発が得意
- ITスキルを共有し実践的に学びながら成長する人を見るのが幸せ
- 自家焙煎するほどのコーヒー好き
- 使用言語 VBA、Python、Javascript、Java、HTML、CSS etc.
- 保有資格 Kintoneアソシエイト、日商簿記検定2級、マンション管理士、管理業務主任者、情報セキュリティマネジメント、ExcelVBA etc.
- 業務フロー図の作成や業務時間分析を通して、効率化ポイントを探る人
- お客様にとって本当に良いことかを第一に考える人
コメント