- Home ›
- Excel VBA入門 ›
- 配列
インデックスの範囲を変更
配列の要素を識別するために使うインデックス番号は、デフォルトでは 0 から開始されますが、これを任意の数値に変更することが出来ます。ここでは Excel VBA を使ってインデックスの範囲を変更する方法について解説します。
(Last modified: )
目次
インデックスの範囲を変更
構文は下記のようになっています。
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
上記のマクロを実行すると次のようになります。
-- --
Excel VBA を使ってインデックスの範囲を変更する方法について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。