前回は、セルA1にHelloを表示させてみました。
その際に、1行目に
Sub A1にHelloを表示()
と記述しました。
Subとはいったい。。。?
今回は、Excel VBA で必要な「Sub」について解説します。
Excel VBAは、Subで始まりSubで終わる
なにやら意味深なことが表題が書いてありますが、、、とりあえず前回のコードを見てましょう。
Sub A1にHelloを表示()
Range("A1") = "Hello"
End Sub
これを実行すると
セルA1に文字列「Hello」が表示されました。
ここで、コードを眺めてみると、なんとなく2行目はセルA1に「Hello」を入れているんだな。。。なんてことが想像できます。
それでは、1行目の
Sub A1にHelloを表示()
と、3行目の
End Sub
は、なんの意味なのでしょうか?
Subは、「Subプロシージャー」のこと
Subは、「Subプロシージャー」を意味します。
「プロシージャー」とは、プログラム的に言うと、「ひとまとまりの処理の単位」のことです。
なんのことかサッパリわからないと思いますので、料理に例えてみます。
今日の晩御飯に「麻婆豆腐」、「かに玉」、「チャーハン」の三品を作る予定とします。
ここでいう「処理の単位」は、「麻婆豆腐を作る」、「かに玉を作る」、「チャーハンを作る」ということになります。
それぞれが「ひとまとまりの処理の単位」ということになり、専門用語で「プロシージャー」ということになります。
つまり、「プロシージャー」は、 それぞれ「麻婆豆腐を作る」、「かに玉を作る」、「チャーハンを作る」という「ひとまとまりの処理の単位」を表します。
一つのプロシージャーは、「Sub」 と、「End Sub」 で囲むことがVBAコードの記述の決まりになっています。
Subを使ったプログラムコードで晩御飯の料理について記述すると、それぞれの料理は、
Sub 麻婆豆腐()
麻婆豆腐を作る処理
End Sub
Sub かに玉()
かに玉を作る処理
End Sub
Sub かに玉()
チャーハンを作る処理
End Sub
というように記述できます。
「Sub」と「End Sub」で囲まれたそれぞれが一つのプロシージャーということになります。
Subの記述方法
先頭の「Sub」に続けて、半角の空白(スペース)を入力し、「A1にHelloを表示()」を入力します。
「A1にHelloを表示」は、プロシージャー名といいます。
また、「A1にHelloを表示」の後に続けて、「()」を入力しますが、これは今の時点では、そういうものだと思ってください。
※ ()の中に文字を入力して使う場合もありますが、それは本入門シリーズ後半になる予定です。
プロシージャー名には、アルファベット、ひらがな、カタカナ、漢字などが使えます。
数字も使用できますが、先頭には使用できません。
アンダーバーは使えますが、記号やスペースなどは使用できない決まりになっています。
使用できない文字を使うとエラーになってしまいます。
つまり、まとめると、
「Sub プロシージャー名()」と 「End Sub」 の間に実行する処理を記述することになります。
コメント