VBSプログラミング最初の一歩 VBScript

Subプロシージャ

サブルーチンを作る場合、VBScriptでは、SubプロシージャとFunctionプロシージャの二つの方法があります。プロシージャとはVBScriptでいうサブルーチンのことです。サブルーチンは一般的な言葉ですが、言語によってはプロシージャと言ったり、関数と言ったりします。

そのプロシージャ(サブルーチン)にVBScriptではSubとFunctionの2種類があるわけです。しかし、他のプログラミング言語ではこの二つを分けていない場合も少なくありません。実際、両者に大した違いはありませんが、ここではより簡単なSubプロシージャをまず学習しましょう。

Subプロシージャは非常に単純です。作成も呼び出しも簡単に出来ます。

まず、例題としてSubプロシージャを使わないプログラムを作ってみます。

MsgBox "明日は"
MsgBox "晴れ"
MsgBox "です"

最初に「明日は」次に「晴れ」そして最後に「です」を表示しています。ただそれだけのプログラムですが、ここで「晴れ」と表示している部分をSubプロシージャに分割してみましょう。

MsgBox "明日は"
tenki
MsgBox "です"

Sub tenki
	MsgBox "晴れ"
End Sub



まず、下の方に Sub tenki という部分が出来ていることに気がつくでしょう。これがSubプロシージャです。まずはこの部分を見てみましょう。最初に Sub と書かれて、その後 tenki とあります。この tenki が今回作ったSubプロシージャの名前です。名前は変数と同じ要領で付けます。このSubプロシージャはこの行からEnd Subの行までです。その間に何が書かれているかというと

MsgBox "晴れ"

と書かれています。ここではこの一行だけですが、Subプロシージャ内には何行書いてもかまいません。そして、このSubプロシージャを呼び出すと、その中のプログラムが実行されることになります。この tenki というSubプロシージャを呼び出すと、「晴れ」と表示される、ということです。

では、Subプロシージャの呼び出しはどのように行うのでしょうか? それはプロシージャ名を書くだけです。つまり、ここでは単に tenki と書けばよいということになります。

では、プログラムの一番最初から見ていきましょう。まず「これは」と画面に表示します。そして、tenki という行が出ています。ここで Subプロシージャを呼び出しています。そのため、画面には「テスト」と出ます。そして、プロシージャの実行が終わると元の行に戻ってきて、次の行を実行します。つまり「です」と画面に表示されるわけです。

今までVBScriptで書いたプログラムは上から順に実行されていきましたが、Subの部分はそのままでは実行されないことに注意してください。Sub部分は呼び出しを行わないと実行されません。

☆Subプロシージャの書き方1
呼び出し方:プロシージャ名を書くだけ
呼び出されるSubプロシージャの書きかた:

Sub プロシージャ名
	処理
	・
	・
End Sub

このようにしてプロシージャを使います。

問題10-1:
入力を行いその内容をそのままメッセージボックスで表示するサブルーチンを作ろう。
そして、それを3回呼び出そう。