- Home ›
- Excel VBA入門 ›
- 配列 ›
- HERE
インデックスの範囲を変更
広告
デフォルトの場合、配列の要素を識別するために使うインデックス番号は0から開始されますが、これを好きな数字に変更することが出来ます。
構文は下記のようになっています。
Dim 変数名(最小値 To 最大値) As データ型
例えばインデックス番号として3番から6番を使う場合には次のように記述します。
Dim str(3 To 6) As String
このように配列変数を宣言した場合には、各要素を識別するのに使うインデックス番号も3から6になります。
Dim str(3 To 6) As String str(3) = "山田" str(4) = "佐藤" str(5) = "伊藤" str(6) = "斉藤"
配列によって開始インデックス番号を変更すると、メンテナンスの時に混乱するかもしれませんので統一しておいた方がいいと思います。
サンプルプログラム
では簡単なサンプルで試してみましょう。
Sub テスト()
Dim pref(3 To 6) As String
Dim i As Integer
Dim src As String
Dim msg As String
pref(3) = "東京都"
pref(4) = "神奈川県"
pref(5) = "千葉県"
pref(6) = "埼玉県"
Range("A1").Value = msg
src = "埼玉県"
msg = "関東以外の県です"
For i = 3 To 6
If src = pref(i) Then
msg = "関東の県です"
End If
Next i
Range("A2").Value = msg
End Sub
上記のマクロを実行すると次のようになります。
( Written by Tatsuo Ikura )
OfficePro