■構文
VarType(varname)
■説明
変数の内部処理形式を表す整数型 (Integer) の値を返します。
第一引数:変数を指定します。
戻り値
■サンプルコード
VarType(varname)
■説明
変数の内部処理形式を表す整数型 (Integer) の値を返します。
第一引数:変数を指定します。
戻り値
定数 | 値 | 内容 |
vbEmpty | 0 | Empty 値 (未初期化) |
vbNull | 1 | Null 値 (無効な値) |
vbInteger | 2 | 整数型 (Integer) |
vbLong | 3 | 長整数型 (Long) |
vbSingle | 4 | 単精度浮動小数点数型 (Single) |
vbDouble | 5 | 倍精度浮動小数点数型 (Double) |
vbCurrency | 6 | 通貨型 (Currency) |
vbDate | 7 | 日付型 (Date) |
vbString | 8 | 文字列型 (String) |
vbObject | 9 | オブジェクト |
vbError | 10 | エラー値 |
vbBoolean | 11 | ブール型 (Boolean) |
vbVariant | 12 | バリアント型 (Variant) (バリアント型配列にのみ使用) |
vbDataObject | 13 | 非OLE オートメーション オブジェクト |
vbDecimal | 14 | 10 進数型 |
vbByte | 17 | バイト型 (Byte) |
vbUserDefinedType | 36 | ユーザー定義型を含むバリアント型 |
vbArray | 8192 | 配列 |
■サンプルコード
Option Explicit Dim temp '■Empty値と判定するケース Wscript.Echo VarType(temp) '0 宣言した直後はEmptyと判定されます。 '■Null値と判定するケース temp = Null Wscript.Echo VarType(temp) '1 Nullが代入されているとNullと判定されます '■整数,長整数,バイト型と判定するケース temp = 32767 Wscript.Echo VarType(temp) '2 32767まで整数型なので2を返す temp = 32768 Wscript.Echo VarType(temp) '3 32768からは長整数型ので3を返す temp = 1 Wscript.Echo VarType(temp) '2 256の範囲だからと言ってByte型にはなりません temp = CByte(temp) Wscript.Echo VarType(temp) '17 明示的に型変換するとByte型と判定します '■単精度・倍精度浮動小数点数型と判定するケース temp = 1.1 Wscript.Echo VarType(temp) '5 小数点数は倍精度浮動小数点数型と判定します。 temp = CSng(temp) Wscript.Echo VarType(temp) '4 明示的に型変換すると単精度浮動小数点型と判定します '■日付型と判定するケース temp = Dateserial(2000, 1, 1) Wscript.Echo VarType(temp) '7 日付、時間関係の値が入っていると日付型と判定します '■文字列型と判定するケース temp = "a" Wscript.Echo VarType(temp) '8 ダブルクォーテーションで囲んだ文字・文字列は文字列型と判定します '改行コードやタブといったものも文字列型と判定されます temp = vbCrLf Wscript.Echo VarType(temp) '8 temp = vbTab Wscript.Echo VarType(temp) '8 '■オブジェクトと判定するケース Set temp = CreateObject("Scripting.Dictionary") Wscript.Echo VarType(temp) '9 Set temp = Nothing Wscript.Echo VarType(temp) '9 Nothingを代入してもオブジェクトと判定する '■Bool値と判定するケース temp = (1 < 5) Wscript.Echo VarType(temp) '11 条件式の結果はBool値となります '■バリアント型と判定するケース(バリアント型の配列にのみ使用) Dim temp2() Wscript.Echo VarType(temp2) '8204 = 12:バリアント型 + 8192:配列 Redim temp2(1) Wscript.Echo VarType(temp2) '8204 = 12:バリアント型 + 8192:配列 temp2(0) = 123 Wscript.Echo VarType(temp2) '8204 = 12:バリアント型 + 8192:配列 temp2(0) = "abc" Wscript.Echo VarType(temp2) '8204 = 12:バリアント型 + 8192:配列 '型を宣言しないので、配列はすべてバリアント型の配列となる
0 件のコメント:
コメントを投稿