- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:「一定の時間間隔で5秒毎にマクロを実行する」)
一定の時間間隔で5秒毎にマクロを実行する
このQ&Aのポイント
- マクロを定期的に実行する方法について質問があります。
- 質問者は、startは正常に動作するが、stopが失敗していると述べています。
- 具体的なエラーメッセージとして、「Ontimeメソッドは失敗しました。Applicationオブジェクト」というものが表示されています。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
「Dim tt As Date」はモジュールの先頭。プロシージャの外に記述してください。 Dim tt As Date Sub t_start() Call last20txt End Sub Sub t_stop() Application.OnTime earliesttime:=tt, procedure:="last20txt", Schedule:=False End Sub Sub last20txt() Dim Srg As Range Dim kensu As Long Set Srg = Cells(1, 1) Workbooks.Open ("C:***.csv") kensu = Cells(Rows.Count, 1).End(xlUp).Row Range(Cells(kensu - 19, 1), Cells(kensu, 4)).Copy Srg ActiveWorkbook.Close Dim wt As Date tn = Now() tt = tn + TimeValue("00:00:05") '5秒後 wt = TimeValue("00:00:02") 'インターバル2秒 Application.OnTime tt, "last20txt", wt End Sub
お礼
ばっちりできました。 ありがとうございました。 またよろしくお願いします。