秀丸マクロ, Word VBA, or the like -13ページ目

データ型(2)

前回から引き続きデータ型の説明です。

前回説明した1+1の計算を実際に行なわせて、数値型のデータと、文字型のデータでどうなるか見てみます。

まずはマクロで文字型データの11とを足して結果をメッセージボックスで表示させます。

文字型のデータの場合は、データ(値)をダブルクォーテーションでくくります。

この場合、1をダブルクォーテーションでくくって、以下のようにコードを記述します。
message "1" + "1";


これを実行するとメッセージボックスに以下の様な答えが表示されます。
秀丸マクロ, Word VBA, or the like-Dtype01


次に、数値型11とを足してみます。数値型の場合は、ダブルクォーテーションでデータ(値)をくくる必要は有りません。

なので、単に1+1でOKです。

但し、
message 1 + 1;

と記述して実行すると、以下のようにエラーメッセージが表示されます。

秀丸マクロ, Word VBA, or the like-Dtype02


なぜかと言うと、messageの後に記述されるパラメータ(メッセージボックスに表示させる文字)は、文字型データでなけれならないからです。

だからといって上で述べたようにダブルクォーテーションでくくって、
message "1+1";

としても単純に『1+1』という文字が表示されるだけです。

なので、メッセージボックスに数値同士の1+1の答えを表示させるには、
1+1という数値同士の計算結果(数値型データ)を文字型のデータに変換する必要があります。

この変換を置こなてくれるのがstr関数です。

strの後の()の中に、文字列に変換したい数値型データを記述します。

例えばstr (100)だと、100という数値が『100』という文字に変換されます。

また、str (1+1)と記述すれば1+1の答え、つまり2という数値が文字型データの2に変換されます。

このstr関数を使って以下のようなコードを記述します。
message str (1 + 1);


これで、以下のように1+1の計算結果がメッセージボックスに表示されます。
秀丸マクロ, Word VBA, or the like-Dtype03