Excelファイルを開いた時にVBAのコードを実行するには
ThisWorkbookのOpenプロシージャを利用します。
通常のモジュールとの違い
通常だとモジュールを追加して、そのモジュールにVBAのコードを書いていきます。
今回はイベントを元にしてVBAを起動するのでThisWorkbookにコードを書きます。
イベントとは
ユーザーが行った何らかの行動のことです。
Excelだと「Excelファイルを開く」、「Excelファイルを閉じる」
「セルをクリックする」、「セルの値を変更する」などです。
今回の例では「Excelファイルを開く」がイベントになります。
ThisWorkbookにOpenプロシージャを追加する
VBAエディターを開き、ThisWorkbookをダブルクリックします。
(General)をWorkbookに変更します。
(Declarations)をOpenに変更します。
Workbook_Openプロシージャが追加されます。
Workbook_Openにコードを追加する
Workbook_Openにコードを書いてみます。
Excelファイルを開いた時に、開いたファイルの名前を
メッセージボックスに表示してみます。
Workbook_Openのコードは以下になります
1 2 3 4 5 6 |
Option Explicit Private Sub Workbook_Open() MsgBox ThisWorkbook.Name & "を開きました", vbInformation End Sub |
ファイルを保存して閉じた後、もう一度ファイルを開きます。
Excelファイルを開くと「ファイル名.xlsmを開きました」と
メッセージボックスが表示されます。
コメント