How do I get the type of a variable using VBScript?
Is VarType what you need?
Returns a value indicating the subtype of a variable.
+--------------+-------+---------------------------------------------+
| Constant | Value | Description |
+--------------+-------+---------------------------------------------+
| vbEmpty | 0 | Empty (uninitialized) |
| vbNull | 1 | Null (no valid data) |
| vbInteger | 2 | Integer |
| vbLong | 3 | Long integer |
| vbSingle | 4 | Single-precision floating-point number |
| vbDouble | 5 | Double-precision floating-point number |
| vbCurrency | 6 | Currency |
| vbDate | 7 | Date |
| vbString | 8 | String |
| vbObject | 9 | Automation object |
| vbError | 10 | Error |
| vbBoolean | 11 | Boolean |
| vbVariant | 12 | Variant (used only with arrays of Variants) |
| vbDataObject | 13 | A data-access object |
| vbDecimal | 14 | Decimal Value |
| vbByte | 17 | Byte |
| vbLongLong | 20 | LongLong integer (64 bit) |
| vbArray | 8192 | Array |
+--------------+-------+---------------------------------------------+
The VarType function never returns the value for Array by itself. It is always added to some other value to indicate an array of a particular type. The value for Variant is only returned when it has been added to the value for Array to indicate that the argument to the VarType function is an array. For example, the value returned for an array of integers is calculated as 2 + 8192, or 8194. If an object has a default property, VarType (object) returns the type of its default property.