当サイトの記事にはプロモーションが含まれています。

PowerPoint VBAでの待機処理【初心者向け解決ガイド】

パソコンパソコン・スマホ教室
スポンサーリンク

皆さん、こんにちは。今日は、PowerPointでVBAを使ってスライドショーを自動化する際に役立つ「待機処理」についてお話しします。例えば、スライド間の切り替えに一定の間隔を設けたいときなどに、この技術が役立ちます。

スポンサーリンク

PowerPoint VBAでの待機処理とは?

PowerPointのイメージ

PowerPointのイメージ

まず、待機処理とは何かを簡単に説明します。これは、プログラムの実行を一時的に停止し、指定した時間が経過した後に再開することを指します。PowerPointのVBAでは、以下の方法で待機処理を実現できます。

Waitメソッドの使用

ExcelのVBAには、`Application.Wait`メソッドがありますが、PowerPointには直接対応するメソッドがありません。しかし、ExcelのWaitメソッドを利用することで、PowerPointでも待機処理を実現できます。以下にその方法を示します。

vba
Sub WaitExample()
Dim xlApp As Object
Set xlApp = CreateObject("Excel.Application")
xlApp.Wait Now + TimeValue("00:00:05") ' 5秒間待機
Set xlApp = Nothing
End Sub

このコードでは、Excelの`Application.Wait`メソッドを呼び出して、5秒間の待機を実現しています。ただし、この方法では待機中にPowerPoint全体が操作不能になる可能性がありますので、注意が必要です。

Sleep関数の使用

もう一つの方法として、WindowsのAPI関数である`Sleep`を使用する方法があります。これは、ミリ秒単位で待機時間を指定できるため、より細かい制御が可能です。以下にその例を示します。

vba
#If VBA7 Then
' 64ビット環境用の宣言
Public Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As LongPtr)
#Else
' 32ビット環境用の宣言
Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
#End If

Sub SleepExample()
Sleep 5000 ' 5000ミリ秒(5秒)待機
End Sub

この方法では、指定した時間だけプログラムの実行を停止しますが、その間、他の操作も停止する点に注意が必要です。

DoEventsを使用した非ブロッキングな待機

待機中もPowerPointの操作を可能にするためには、`DoEvents`を使用した方法があります。以下にその例を示します。

vba
Sub NonBlockingWait(seconds As Double)
Dim endTime As Double
endTime = Timer + seconds
Do While Timer < endTime DoEvents ' 他のイベントを処理 Loop End Sub

この方法では、指定した秒数だけ待機しますが、その間も他の操作が可能です。

よくある質問や疑問

Q1: 待機中にPowerPointが応答しなくなるのはなぜですか?

`Sleep`関数や`Application.Wait`メソッドを使用すると、待機中にPowerPoint全体が操作不能になることがあります。これは、これらの関数がプログラムの実行を完全に停止させるためです。非ブロッキングな待機を実現するには、`DoEvents`を使用した方法を検討してください。

Q2: ミリ秒単位での待機は可能ですか?

はい、`Sleep`関数を使用することで、ミリ秒単位での待機が可能です。ただし、`Sleep`関数はWindowsのAPI関数であり、使用する際には適切な宣言が必要です。

まとめ

PowerPoint VBAでの待機処理には、さまざまな方法があります。それぞれの方法には利点と注意点がありますので、目的や状況に応じて適切な方法を選択してください。もし他にも疑問やお悩み事があれば、お気軽にLINEからお声掛けください。

この記事を書いた人
この記事を書いた人

企業の情報システム部門で10年以上、PC・アカウント・社内ネットワーク・Microsoft 365/Google Workspace運用を担当。年間数百件の問い合わせ対応(PC不調、メール送受信、Excel/Word資料、Teams会議、スマホ連携など)を通じて、初心者がつまずくポイントを「再現→原因切り分け→最短解決」の手順に落とし込んできました

現場や身近で実際に起きたトラブルをベースに、手順だけでなく「なぜそうなるか」「失敗しやすい落とし穴」「安全な設定(セキュリティ)」まで含めて解説します。

相談窓口(問い合わせ/LINE等)を設け、記事で解決しないケースも個別にサポートしていますので「パソコンが急に動かなくなった」「スマホの設定がわからない」などの悩みは一人で抱え込まず、お気軽にご相談ください。

【お問い合わせは下記URLから】
https://m32006400n.xsrv.jp/inquiry-form/

【公式LINEは下記URLから】
https://lin.ee/t8TDjcj

uri uriをフォローする
スポンサーリンク
よかったらシェアしてね! /
uri uriをフォローする

コメント

タイトルとURLをコピーしました