VBAサンプル集<br />時刻になったら音を鳴らして知らせる(OnTime)
VBAサンプル集<br />時刻になったら音を鳴らして知らせる(OnTime)

VBAサンプル集時刻になったら音を鳴らして知らせる(OnTime)

エクセル作業に夢中になって、時間を忘れて大慌てって事ありませんか。えっ、無い、そうですか、ではさようなら… あると言う人は以下のプログラムをどうぞ。作成するシート まず、以下ようなシートを作ります。標準モジュールのVBAコード 標準モジュールに以下を追加します。

Sub 時刻で起動() On Error Resume Next With ThisWorkbook.ActiveSheet Dim i As Long For i = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row If .Cells(i, 1) "" And .Cells(i, 2) "" Then If .Cells(i, 2) >= Now And _ .Cells(i, 3) "済" Then Application.OnTime .Cells(i, 2), "メッセージ表示" Exit For End If End If Next End With End Sub

Private Sub メッセージ表示() Dim i As Long, j As Long On Error Resume Next With ThisWorkbook.ActiveSheet For i = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row If .Cells(i, 1) "" And .Cells(i, 2) "" Then If .Cells(i, 2) .Cells(i, 3) "済" Then .Cells(i, 3) = "済" CallBeep 'ここを変更 MsgBox (.Cells(i, 1)) Exit For End If End If Next Call 時刻で起動 End With End Sub

これで鳴るようになります。 これでも鳴らなかったら、サウンドが壊れています。 API Beep Beep(音の周波数, 鳴らすミリ秒) 第1引数が音の周波数、第2引数が鳴らすミリ秒です。 この周波数と、時間、間隔をいろいろ組み合わせると、簡単な音楽も作れ無いことはありません。 Beep音で音楽(Beep,Sleep) 時刻になったら音を鳴らして知らせる最後に

本来は、時間を意識して作業はするべきでしょうね。 この作業は、何時間で、何時まで、と決めてやるのが正しいでしょう。 でもね、人間だから気が付いたら時間が過ぎてたって事もありますからね。 特に集中していると、時間を忘れちゃいますよね。

タイマー関係の処理として以下も参考にしてください。 VBAでのタイマー処理(SetTimer,OnTime) ・Application.OnTime メソッド ・WindowsAPI:SetTimer関数 ・最後に 同じテーマ「マクロVBAサンプル集」の記事 新着記事 NEW ・・・新着記事一覧を見る アクセスランキング ・・・ ランキング一覧を見る このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。

記述には細心の注意をしたつもりですが、間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。 掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。 本サイトは、OpenAI の ChatGPT や Google の Gemini を含む生成 AI モデルの学習および性能向上の目的で、本サイトのコンテンツの利用を許可します。 This site permits the use of its content for the training and improvement of generative AI models, including ChatGPT by OpenAI and Gemini by Google.