VBScript のデータ型

Microsoft® Visual Basic® Scripting Edition (以下 VBScript) では、バリアント型 (Variant) と呼ばれるデータ型のみを使用します。バリアント型 (Variant) は、異なる種類の情報を含めることができる特殊なデータ型です。VBScript でのデータ型は、バリアント型 (Variant) ただ 1 つのなので、VBScript の関数の戻り値のデータ型もすべてバリアント型 (Variant) になります。

さらに、バリアント型 (Variant) は、数値と文字列のいずれの情報も含めることができます。バリアント型 (Variant) は、数値が使用されているときは数字として、文字列が使用されているときは文字列として、使用状況に応じて処理されます。VBScript は、数字と思われる情報を処理する場合、その情報を数字とみなし、数字として最も適切な処理を行います。また、文字列と思われる情報を処理する場合も、同様です。ただし、数字をダブル クォーテーション (" ") で囲めば、常に文字列として処理されます。

内部処理形式

バリアント型 (Variant) は、指定された数値情報が、文字列でも、単純な数値でもない場合、たとえば、日付または時間を表す数値情報などは、明確に区別して持つことができます。この場合、結果は常に日付または時間として表示されます。また、バリアント型 (Variant) は、ブール型 (Variant) から倍精度浮動小数点型 (Double) まで、多様な種類の情報を持つことができます。バリアント型 (Variant) として持つことのできる異なる分類の情報は "内部処理形式" と言います。ほとんどの場合、必要とする情報の種類は、バリアント型 (Variant) として最も効率のよいデータ型に内部変換して持つことができます。

次の表は、バリアント型 (Variant) で格納できる内部処理形式データの一覧です。

内部処理形式 内容
Empty 値 Empty 値は、初期化されていない (初期値が代入されていない) バリアント型 (Variant) の変数を示します。その値は、数値変数として使用されるときは 0、文字列変数として使用されるときは長さ 0 の文字列 ("") として扱われます。
Null 値 Null 値は、初期値として有効なデータを持たないバリアント型 (Variant) の変数を表します。
ブール型 (Boolean) 真 (True) または偽 (False) の値を持つデータ型です。
バイト型 0 ~ 255 の範囲の整数値を持つデータ型です。
整数型 -32.768 ~ 32.767 の範囲の整数値を持つデータ型です。
通貨型 (Currency) -922,337,203,685,477.5808 ~ 922,337,203,685,477.5807 の範囲の値を持つデータ型です。
長整数型 -2,147,483,648 ~ 2,147,483,647 の範囲の整数値を持つデータ型です。
単精度浮動小数点数型 -3.402823E38 ~ -1.401298E-45 (負の値) および 1.401298E-45 ~ 3.402823E38 (正の値) の範囲の単精度浮動小数点数を持つデータ型です。
倍精度浮動小数点数型 -1.79769313486232E308 ~ -4.94065645841247E-324 (負の値) および 4.94065645841247E-324 ~ 1.79769313486232E308 (正の値) の範囲の倍精度浮動小数点数を持つデータ型です。
日付 (時刻) 型 西暦 100 年 1 月 1 日~西暦 9999 年 12 月 31 日の日付を表す数字を持つデータ型です。
文字列型 約 2GB までの文字を格納できる可変長文字列を持つデータ型です。
オブジェクト型 オブジェクトを参照するデータ型です。
エラー型 エラー番号を持つデータ型です。

変換関数を使用すると、内部処理形式を現在の形式から別の形式に変換できます。さらに、VarType 関数を使用すると、バリアント型 (Variant) として格納されているデータの内部処理形式を調べることができます。