1 Here is a quick reference table of the VBA data types:
| Data Type | Storage Size | Range Of Values |
| Boolean | 2 Bytes | True or False |
| Byte | 1 Byte | 0 to 255 |
| Currency (scaled integer) | 8 Bytes | -922,337,203,685,477.5808 to 922,337,203,685,477.5807 |
| Date | 8 Bytes | January 1, 100, to December 31, 9999 |
| Decimal | 14 Bytes | +/-79,228,162,514,264,337,593,543,950,335 with no decimal point +/-7.9228162514264337593543950335 with 28 places to the right of the decimal Smallest non-zero number is+/-0.0000000000000000000000000001 |
| Double (double-precision floating-point) | 8 Bytes | -1.79769313486231E308 to -4.94065645841247E-324 for negative values 4.94065645841247E-324 to 1.79769313486232E308 for positive values |
| Integer | 2 Bytes | -32,768 to 32,767 |
| Long (Long integer) | 4 Bytes | -2,147,483,648 to 2,147,483,647 |
| LongLong (LongLong integer) | 8 Bytes | -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 Valid on 64-bit platforms only. |
| LongPtr (Long integer on 32-bit systems, LongLong integer on 64-bit systems) | 4 Bytes on 32-bit systems 8 Bytes on 64-bit systems | -2,147,483,648 to 2,147,483,647 on 32-bit systems -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 on 64-bit systems |
| Object | 4 Bytes | Any Object reference |
| Single (single-precision floating-point) | 4 Bytes | -3.402823E38 to -1.401298E-45 for negative values 1.401298E-45 to 3.402823E38 for positive values |
| String (variable-length) | 10 Bytes + string length | 0 to approximately 2 billion |
| String (fixed-length) | Length of string | 1 to approximately 65,400 |
| Variant (with numbers) | 16 Bytes | Any numeric value up to the range of a Double |
| Variant (with characters) | 22 Bytes + string length (24 Bytes on 64-bit systems) | Same range as for variable-length String |
| User-Defined (using Type) | Number required by elements | The range of each element is the same as the range of its data type. |