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

変数宣言の強制

VBScriptでは、変数を使うときに自由に使うことが出来ます。特に準備はいりません。しかし、それでは困ることがあります。たとえば以下のプログラムを見てください。

str = InputBox("文字を入力してください")
MsgBox stt

このプログラムでは、入力した文字を変数strに入れています。そして、それを表示しようと想ったのですが、誤ってsttと書いてしまいました。このため、何も表示されません。誤りにすぐ気がつけばいいですが、なかなかわからないものです。

このような誤りを事前に防ぐために変数宣言というものがあります。変数宣言はあらかじめ「こういう変数を使いますよ」ということを宣言しておくものです。たとえば、上の例では、strという命令を使いますので、

Dim str

とすることでstrという変数を使うことを宣言できます。Dimは配列でもおなじみの命令です。しかし、これだけではこの変数を使う、ということを宣言しただけで「宣言していない変数は使えない」ということにはなりません。変数の宣言をしなければ変数が使えないようにしてしまうことで、誤りにすぐ気が付くことができます。それを行う命令が Option Explicit です。

Option Explicit
Dim str

str = InputBox("文字を入力してください")
MsgBox stt

この状態で実行すると、MsgBox stt のところにプログラムが進んだところで「変数 stt が宣言されていない」というエラーメッセージが出て止まります。このため誤りにすぐに気がつくことが出来、「何がおかしいんだろう」と悩むことが無くなります。

このように変数の宣言を強制した方が特に長いプログラムの場合には開発効率が良くなります。
慣れないうちは、変数宣言を強制しなくてもいいですが、慣れてきたら強制してやってみましょう。

なお、C言語やJavaなどの言語では変数宣言は強制です。

問題11-5:
2回入力した数を変数に入れ、足して表示する。ただし変数宣言を強制にして、やってみよう。