Excel VBA

Sub プロシージャ

 VBAでプログラムを記述した後で、実際に実行するにはプログラムを呼び出す必要があります。その呼び出す単位となるのがプロシージャです。

 プロシージャの構文は下記となっています。


Sub プロシージャ名()

End Sub

 プロシージャは「Sub」で始まり「End Sub」で終わります。この間に実際のプログラムを記述します。そしてプロシージャを識別するために「Sub」の後ろにプロシージャ名を記述します。

 プロシージャ名はアルファベット、ひらがな、漢字などを使えます。数字も使えますがプロシージャ名の先頭には文字を使わなければなりません。またアンダーバーは使えますが記号やスペースなどは使えません。

正しいプロシージャ名


Sub Test()
Sub 印刷する()
Sub テスト_011()

誤ったプロシージャ名


Sub 011Test()
Sub テスト@()
Sub テスト プロシージャ()

プロシージャの記述場所

 プロシージャはコードウィンドウ内に記述します。

 1つのモジュール内に複数のプロシージャを記述する事もできます。

 複数のプロシージャを記述した場合、自動的にプロシージャとプロシージャの間に横線が入ります。

プロシージャの呼び出し

 記述したプロシージャは、1つ1つをマクロとして実行する事ができます。先ほどのように3つのプロシージャを記述した場合で見てみます。

  1. VBEのメニューバーの「実行」をクリックする。
  2. 「Sub/ユーザーフォームの実行」をクリックする。

 「マクロ」ダイアログボックスが表示され、3つのマクロが表示されていますが、作成したプロシージャのプロシージャ名が表示されます。今回は3つのプロシージャを記述しましたので3つ表示されています。

  1. 「テスト」が選択されている状態で「実行」ボタンをクリックする。

 「テスト」プロシージャが呼び出され、「テスト」プロシージャ内に記述されたプログラムが実行されます。