VBAでは、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バイト | |
| Double | 倍精度浮動小数点型 | # | 8バイト | |
| String | 文字列型 | $ | 10バイト+文字列の長さ | 文字列 |
| Variant | バリアント型 | なし | 数値:16バイト | あらゆる種類の値 |
| Currency | 通貨型 | @ | 8バイト | 値の範囲 |
| CDate | 日付型 | なし | 8バイト | 日付と時刻 |
| Object | オブジェクト型 | なし | 4バイト | オブジェクトを参照するデータ型 |
変数 Name を文字列型の変数として宣言する。
Dim Name As String
変数 i を整数型の変数として宣言する。
Dim i As Integer
現在はメモリを節約してInteger型を指定する必要がなくなってきているので、整数のデータ型を指定するときはLong型が基本になっています。
変数 i を長整数型の変数として宣言する。
Dim i As Long
一つのステートメントで複数の変数を宣言することもできますが、VB.NETなどとは異なり、型はそれぞれ指定する必要があります。
Dim i, j As Long
この場合、変数 j は長整数型になりますが、変数 i はデフォルトのVariant型となります。
変数 i, j を長整数型の変数として宣言するには次のように書く必要があります。
Dim i As Long, j As Longr