構文
構文は以下の通りです。
WorksheetFunction.Index(配列, 行番号, [列番号])
解説
WorksheetFunctionは、ExcelVBAの組み込みオブジェクトで、Excelのワークシート関数をVBAから呼び出す際に使用します。Index関数は、データの中から特定の値を取り出すときにとても便利な関数です。配列には、データが入っている範囲やリストを指定します。行番号には、取り出したい値が何行目にあるかを指定します。列番号(省略可能)には、取り出したい値が何列目にあるかを指定します。1次元の場合は省略できます。
プログラミング例
具体的なプログラミング例を紹介します。
Sub インデックス関数の例()
Dim データ範囲 As Range
Dim 結果 As Variant
' データ範囲をA1からC3に設定
Set データ範囲 = Range("A1:C3")
' データ範囲の2行目、3列目の値を取得
結果 = WorksheetFunction.Index(データ範囲, 2, 3)
' 結果をメッセージボックスで表示
MsgBox "取り出した値は:" & 結果
End Sub
Dim データ範囲 As Range
Dim 結果 As Variant
' データ範囲をA1からC3に設定
Set データ範囲 = Range("A1:C3")
' データ範囲の2行目、3列目の値を取得
結果 = WorksheetFunction.Index(データ範囲, 2, 3)
' 結果をメッセージボックスで表示
MsgBox "取り出した値は:" & 結果
End Sub
上記のプログラムは、データ範囲という変数にシート上のA1からC3までの範囲を指定します。また、Index関数を使用して、データ範囲の中の2行目・3列目の値を「結果」に代入します。最後に、MsgBoxで取り出した結果を表示します。
まとめ
Index関数を使うと、大きなデータの中からでも簡単に必要な情報を見つけることができます。