[[20200609164941]] 『指定した時間に動作するマクロ』(ポポ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『指定した時間に動作するマクロ』(ポポ)

指定した時間(ここでは17時)にA1セル内のデータをクリアする
以下の様なマクロを組んだのですが、時間になっても動作してくれません。

Sub ALLRESET()

Range("A1").ClearContents

End Sub

Sub SETALARM()

Application.OnTime Now + TimeValue("17:00:00"), "ALLRESET"

End Sub

マクロはSheet1のコードに書き込んであります。

どこが問題で動作してくれないのでしょうか。

宜しくお願い致します。

< 使用 Excel:Office365、使用 OS:Windows10 >


Nowを足す必要無いです。
(γ) 2020/06/09(火) 16:59

 Application.OnTime Int(Now()) + TimeValue("17:00:00"), "ALLRESET"
 とか
 Application.OnTime Date + TimeValue("17:00:00"), "ALLRESET"
 とか
(´・ω・`) 2020/06/09(火) 17:03

ヘルプを確認してみましたら、
| 次の使用例は、午後 5 時に my_Procedure を実行します。
| Application.OnTime TimeValue("17:00:00"), "my_Procedure"
という例が載っていました。時刻は偶然の一致ですか。
確認せずに回答してしまったのですが、結果オーライのようです。

ちなみに、今のでなぜNGかというと、
それは「今から17時間後の動作予約をする」という意味だからですね。

(γ) 2020/06/09(火) 19:19


返信ありがとうございます。

Nowを足さない・Int(Now())・Date 等、色々試したのですが、うまく行きません。

「マクロを実行できません。このブックでマクロが使用できないか、またはすべてのマクロが無効になっている可能性があります。」というエラーが出て実行されません。

セキュリティをすべてのマクロを有効にする設定にしてもダメでした。。。
(ポポ) 2020/06/11(木) 10:27


念のため、こちらをもう一度すべて実行してみてください。

【解決】このブックでマクロが使用できないか、またはすべてのマクロが無効になっている可能性があります。
https://pasokon-labo.com/excel-this-book-cannot-use-macro/

特に、ブックをもう一度開き直すのあたり。
(γ) 2020/06/11(木) 10:35


このマクロはどのモジュールに書いていますか?

試してみたところ、
・シート、ThisWorkBook → エラー
・標準モジュール → 正常に実行される
となりました。

自分の環境は、Excel2013なので違うかもしれませんが、参考まで。

標準モジュールに書く場合、シート名を省略するとアクティブシートになるので、シートが複数ある場合は気を付けた方が良いです。
(うううぅー) 2020/06/12(金) 13:13


OnTimeを使う場合、普通は標準モジュールにコードを書きますが、シートモジュールに書いていませんか?
シートモジュールに書く場合は、プロシジャ名にシートの名前も明記して、"Sheet1.ALLRESET" とかにしないと駄目ですよ。
(???) 2020/06/12(金) 14:44

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.