主なデータ型としては、バイト型 (Byte)、ブール型 (Boolean)、整数型 (Integer)、長整数型 (Long)、
通貨型 (Currency)、10 進型 (Decimal)、単精度浮動小数点数型 (Single)、倍精度浮動小数点数型 (Double)、
日付型 (Date)、文字列型 (String)、オブジェクト型 (Object)、バリアント型 (Variant) (既定値)、
ユーザー定義型、固有オブジェクト型があります。
データ型 | 記憶領域の サイズ | 範囲 |
バイト型 (Byte) | 1 バイト | 0 〜 255 |
ブール型 (Boolean) | 2 バイト | 真 (True) または偽 (False) |
整数型 (Integer) | 2 バイト | -32,768 〜 32,767 |
長整数型 (Long) | 4 バイト | -2,147,483,648 〜 2,147,483,647 |
単精度 浮動小数点数型 (Single) | 4 バイト | -3.402823E38 〜 -1.401298E-45 (負の値)。 1.401298E-45 〜 3.402823E38 (正の値)。 |
倍精度 浮動小数点数型 (Double) | 8 バイト | -1.79769313486231E308 〜 -4.94065645841247E-324 (負の値)。 4.94065645841247E-324 〜 1.79769313486232E308 (正の値)。 |
通貨型 (Currency) | 8 バイト | -922,337,203,685,477.5808 〜 922,337,203,685,477.5807 |
10 進型 (Decimal) | 14 バイト | 小数部分を持たない数値の場合、 -79,228,162,514,264,337,593,543,950,335 〜 79,228,162,514,264,337,593,543,950,335 の範囲の値をとります。
小数点以下 28 桁の数値の場合、 -7.9228162514264337593543950335 〜 7.9228162514264337593543950335 の範囲の値をとります。
絶対値の最小値は 0 を除いた場合、 0.0000000000000000000000000001 です。 |
日付型 (Date) | 8 バイト | 西暦 100 年 1 月 1 日〜西暦 9999 年 12 月 31 日 |
オブジェクト型 (Object) | 4 バイト | オブジェクトを参照するデータ型 |
文字列型 (String) (可変長) | 10 バイト + 文字列の長さ | 0 〜 2GB |
文字列型 (String) (固定長) | | 文字列の長さ 1 〜 2GB |
バリアント型 (Variant) (数値) | 16 バイト | 倍精度浮動小数点数型の範囲と同じ。 |
バリアント型 (Variant) (文字列) | 22 バイト + 文字列の長さ | 可変長の文字列型の範囲と同じ。 |
ユーザー 定義型 | 要素に依存 | それぞれの要素の範囲はそのデータ型の範囲と同じ。 |
どのデータ型の配列にも、20 バイトのメモリ、各配列の次元ごとに 4 バイト、
およびデータそのものが占めるバイト数を合計したメモリが必要です。
データが占めるメモリのバイト数は、要素数に各要素のサイズを掛けて計算することができます。
たとえば、それぞれ 2 バイトの 4 つの整数型の要素からなる 1 次元配列のデータは、8 バイトを占めます。
データに必要な 8 バイトとオーバーヘッドの 24 バイトの和により、この配列の合計メモリ必要量は 32 バイトになります。
配列を含むバリアント型には、配列のみのときに比べて 12 バイト大きいメモリが必要です。