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

数値を文字列に変換

せっかく答えを求めても、ただ数字が出るだけでは味気ないですね。ここでは「面積は12です」のように出るようにしてみましょう。

teihen = 6
takasa = 4

menseki = teihen * takasa / 2

MsgBox "面積は" & menseki & "です"

&は文字を連結する記号です。「面積は12です」と出したいのであれば、「面積は」と「です」の間に答えを挟めばよいわけです。「面積は」「です」は文字列ですから""で囲んでいます。

このプログラムは正しく動作します。しかし、文字列を連結する記号は、 & の他に + も使えるのでした。+を使ってみましょう。

teihen = 6
takasa = 4

menseki = teihen * takasa / 2

MsgBox "面積は" + menseki + "です"

このプログラムは正しく動作しません。エラーが出てしまいます。なぜでしょうか?

その答えは、 + という記号が文字列を連結するという意味だけではなく、数値を足すという意味もあるからです。mensekiという変数には、数値が入っています。ですから、数値を足すのか、文字を連結するのかがはっきりしないのでエラーになっているのです。

では、+は使えないということでしょうか? そういうことではありません。mensekiに数値が入っているのが問題なわけですから、menseki を文字に変換してやればいいわけです。そのためには CStr という関数を使います。

teihen = 6
takasa = 4

menseki = teihen * takasa / 2

MsgBox "面積は" + CStr(menseki) + "です"

このように、mensekiをCStrで囲むと、mensekiが文字列に変換されます。そのため「面積は12です」と正しく表示することが出来るのです。


問題4-4
二つの変数に今日の月と日を代入し「今日は○月○日です」と変数を利用して表示しよう。