【VBA】Excelを開いたときに自動でプログラムを実行する方法|Workbook_Openイベントの使い方

目次

経緯

Excelファイルを開いたときに、自動でプログラムが実行されるようにしたいと考え、
今回、VBAの自動起動処理について学びました。

解決方法:ThisWorkbookモジュールでWorkbook_Openを使う

Excelが開かれたタイミングでプログラムを自動実行するには、
「ThisWorkbook」モジュールに、Workbook_Openイベントを記述します。

手順

  1. Excelで「Alt + F11」を押してVBAエディターを開きます。
  2. 左側の「VBAProject(ブック名)」から「ThisWorkbook」をダブルクリックします。
  3. 開いたモジュールウィンドウに、次のコードを記述します。

自動実行の基本コード

Private Sub Workbook_Open()
    ' 実行したいプログラムをここに記述
    MsgBox "Excelを開いたときに自動で実行されました"
End Sub

上記のコードでは、Excelを開いたときにメッセージボックスが表示されます。

この部分を任意の処理(たとえばマクロの呼び出し、セルの初期化、日付の自動入力など)に置き換えることで、
自動化処理を自由に実装できます。

注意点

  • **マクロ有効ブック(.xlsm形式)**として保存する必要があります。
  • マクロが有効でない場合(セキュリティ設定で無効化されている場合など)、実行されません。
  • Workbook_Openイベントは、ブックが開かれたときに1度だけ実行されます。

まとめ

Excelを開いた瞬間に自動で処理を実行したい場合は、

  • ThisWorkbookモジュールに
  • Workbook_Open()イベントを使って
  • 実行内容を記述する

という手順で簡単に実装できます。

繰り返し使う作業を自動化することで、作業効率が大きく向上します。

ここまでお読みいただき、誠にありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次