'========================================================================================= ' 012 現在より一定時間後にマクロを実行する '----------------------------------------------------------------------------------------- '【ヒント】 ' このマクロは、おためし機能の動作用のコードを含んでいます。(概ね下半分) ' ★★★の行またはサブプロシージャーが、タイトル機能に関係するコードです。(概ね上半分) '========================================================================================= ' ◆標準モジュールのコード◆ '----------------------------------------------------------------------------------------- Option Explicit Dim 指定時刻 As Variant '★★★ Dim 待ち時間 As Variant '★★★ Dim タイトル As String Dim スタイル As Long Dim メッセージ As String Dim 応答 As Variant '========================================================================================= Private Sub 現在より一定時間後にマクロを実行する() '★★★ 指定時刻 = Now + TimeValue("00:00:05") '現在時刻より5秒後 ※1 待ち時間 = TimeValue("00:03:00") '指定時刻に他のプロシージャが実行中の場合の待ち時間 ※1 Application.OnTime TimeValue(指定時刻), _ "一定時間後に実行するマクロ名", _ TimeValue(待ち時間) End Sub '----------------------------------------------------------------------------------------- Sub 一定時間後に実行するマクロ名() メッセージ = "待ち時間の 5秒が経過しました。" & Chr(13) & Chr(13) & _ "他のプロシージャーは実行中でないので、処理を再開します" 応答 = MsgBox(メッセージ, スタイル, タイトル) End Sub '========================================================================================= '<コメント> '※1 HH:MM:SSの形式で任意の時間を記入する (例) 3分後なら 00:03:00 '----------------------------------------------------------------------------------------- Sub おためしマクロ() おためしメッセージを表示する 現在より一定時間後にマクロを実行する '★★★ End Sub '----------------------------------------------------------------------------------------- Private Sub おためしメッセージを表示する() Worksheets("Title").Select Range("P17").Select 'カーソルを定位置へ移動する タイトル = "500連発 第2弾 サンプルマクロ" スタイル = 64 'vbInformation メッセージ = "[OK]ボタンをクリックすると、待ち時間の5秒間は、" & Chr(13) & Chr(13) & _ "他のプロシージャーに実行を譲って、その後に再開します" 応答 = MsgBox(メッセージ, スタイル, タイトル) End Sub '----------------------------------------------------------------------------------------- Sub Auto_Close() Application.DisplayAlerts = False '閉じる際に確認メッセージを出さない ActiveWorkbook.Close '現在開いているブックを閉じる End Sub '-----------------------------------------------------------------------------------------