Excel VBA(エクセル マクロ) 小技集そのK Excel立ち上げ時にマクロ自動実行

Excel立ち上げ時にマクロを自動実行する方法。

私の場合、エクセル立ち上げ時にWebからホームページデータの取り込みを行い、値の処理をさせたいため、Excel立ち上げ時のホームページ取り込みの時はマクロは実行してもらいたくない。

よって、立ち上げ時にウエイトを入れて、マクロを実行するようにする。

その前にエクセル立ち上げ時に自動実行する方法を考える。

VBE(VBA編集画面)の左側にVBAプロジェクトというものがあって、Thisworkをダブルクリックすると、編集画面が出てくるので、以下のプログラムを入れる。



Private Sub Workbook_Open()
Call dati
End Sub

これで、立ち上げ時にマクロ”dati”が自動実行される。


次に立ち上げ時にウェイトをかけて実行させる場合はこうなる。

Private Sub Workbook_Open()
Application.OnTime Now + TimeValue("00:00:50"), "dati", Now + TimeValue("00:01:59")
End Sub

そうすると、Excel立ち上げ時のホームページ取り込み中の50秒後はマクロは実行されず、50秒後にマクロ"dati"が自動実行する。


Windowsの指定時刻プログラム実行機能「スケジュールされたタスクの管理」(【スタート】→【コントロールパネル】→【タスク】→【スケジュールされたタスクの管理】)で指定時刻にエクセルファイルを立ち上げたとき、ホームページデータ取り込み、データベース追記を自動実行できる。


忍者Admaxのテキスト広告で収入UP!

実践!ExcelデータベースTOP