[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『毎日同じ時間にマクロを実行する方法』(ねこちぐら)
常にExcelが開かれていることを前提に、毎日同じ時間になると
自動で実行するマクロを考えています。
毎日7:00になると、Sheet1のA1セルの値をクリアする仕様にしたいので、
↓のようなコードを考えてみました。
Sub macro1() '時間指定自動起動
Application.OnTime TimeValue("07:00:00"), "ALLRESET", TimeValue("00:00:30")
End Sub
Sub A1RESET() 'A1セルのクリア
Dim MyDate As Date
Range("A1").ClearContents
MyDate = DateValue(Now() + 1)
Application.OnTime TimeValue("07:00:00") + (MyDate), "A1RESET", TimeValue("00:00:30") '翌日のOnTimeセット
End Sub
これを基準モジュールで実行していますが、指定時刻になっても
A1セルのクリアが実行されません。
どういった改善を加えればよいのか、どなたかご伝授お願いします。
< 使用 Excel:Excel2019、使用 OS:Windows10 >
Int(Now()) とすれば、日付情報だけになります。
(???) 2020/07/14(火) 13:40
現在時刻から7時間後になってしまっていたのですね。
Application.OnTime DateValue(Date + 1) + TimeValue("07:00:00") に変更して
翌日の7時に実行されるように変更してみました。時計の時刻を手動で翌日にずらして
マクロの自動実行が確認できたので大丈夫そうです。
ありがとうございました!
(ねこちぐら) 2020/07/14(火) 14:42
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.