【Excel初心者向け】INDEX関数の使い方|検索や抽出の基本を理解する

Excelで「特定の位置にあるデータを取り出したい」と感じたことはないでしょうか。
例えば「3行目の値だけ欲しい」「指定した列のデータを取得したい」といった場面です。

このようなときに便利なのがINDEX関数です。
検索系の関数として知られていますが、実は「セル参照を柔軟に扱う関数」としても重要な役割があります。

INDEX関数は、VLOOKUPやXLOOKUPと組み合わせて使われることも多く、基礎を理解しておくと応用の幅が大きく広がります。
この記事では「使い方」「具体例」「エラーの原因」まで、初心者でも理解できる形で順番に解説していきます。

スポンサーリンク

INDEX関数とは?セル参照から値を取り出す仕組みを解説

INDEX関数とは、指定した範囲(配列)の中から、行番号と列番号をもとに値を取り出す関数です。
簡単に言うと「表の中の位置を指定して値を取得する」ための関数です。

基本構文は以下のとおりです。

=INDEX(配列, 行番号, 列番号)

「配列」はデータの範囲を指します。
「行番号」と「列番号」で、その範囲内のどの位置の値を取り出すかを決めます。

INDEX関数の使い方と配列の意味

配列とは、単純に「セルの範囲」のことです。
例えば A1:C4 のような範囲を指定すると、その中から位置を指定して値を取得できます。

具体例①

ABC
1商品価格数量
2商品A1005
3商品B2003
4商品C1508

この表で「商品Bの価格」を取り出したい場合は以下のように書きます。

=INDEX(A2:C4, 2, 2)

A2:C4 の範囲で、2行目・2列目を指定しています。
つまり B3セルの「200」が返されます。

具体例②

同じ表で「商品Cの数量」を取得する場合です。

=INDEX(A2:C4, 3, 3)

範囲内の3行目・3列目なので、C4セルの「8」が返されます。

実務での補足コメント

INDEX関数は「位置がわかっているデータ」を取得するのに向いています。
一方で「条件で検索する」場合は、MATCH関数と組み合わせることが多くなります。

INDEX関数の使い方(構文)とは?引数の意味をやさしく解説

INDEX関数はシンプルな構文ですが、それぞれの引数の意味を理解することが重要です。
特に初心者の方は「行番号」「列番号」でつまずきやすいポイントです。

INDEX関数の使い方と行番号の考え方

行番号は、指定した範囲の中で何行目かを表します。
ここで注意したいのは「シート全体ではなく、範囲の中での位置」という点です。

具体例①

範囲が A2:C4 の場合、A2が1行目になります。
A3は2行目、A4は3行目です。

具体例②

もし「3」と指定すると、範囲内の3行目なのでA4の行になります。
Excelの行番号(4行目)とは一致しないので注意が必要です。

INDEX関数の使い方と列番号の考え方

列番号も同様に、範囲内での位置を指定します。

具体例①

A2:C4 の場合

  • A列 → 1列目
  • B列 → 2列目
  • C列 → 3列目

具体例②

列番号を「2」と指定すると、B列の値が対象になります。

実務での補足コメント

実務では、範囲の開始位置をどこにするかが重要になります。
範囲の取り方によって行番号・列番号が変わるため、ミスの原因になりやすいポイントです。

INDEX関数の具体例とは?実務でよく使うパターンを紹介

INDEX関数は単体でも使えますが、実務では他の関数と組み合わせて使うケースが多いです。
ここでは基本的な使い方を押さえた上で、実務に近い形の例を紹介します。

INDEX関数の使い方と1列だけの配列

1列だけの範囲でもINDEX関数は使えます。

具体例①

A
1売上
2100
3200
4150

3行目の値を取得する場合は以下のとおりです。

=INDEX(A2:A4, 2)

この場合、列番号は省略できます。
結果はA3の「200」が返されます。

具体例②

2列目だけを対象にすることも可能です。

=INDEX(B2:B4, 3)

B4の値が返されます。

INDEX関数の使い方とMATCH関数の組み合わせ

検索機能として使う場合は、MATCH関数と組み合わせます。

具体例①

商品名から価格を取得する場合

=INDEX(B2:B4, MATCH(“商品B”, A2:A4, 0))

MATCH関数で行番号を取得し、その位置をINDEXで参照しています。

具体例②

列も動的に取得することも可能です。
より柔軟なデータ抽出ができるようになります。

実務での補足コメント

VLOOKUPでは左方向に検索できませんが、INDEXとMATCHを組み合わせることで柔軟に対応できます。
そのため、実務ではこちらの組み合わせが使われる場面も多くあります。

INDEX関数ができない原因とは?よくあるエラーと対処法

INDEX関数はシンプルな関数ですが、いくつかの典型的なミスがあります。
ここでは初心者がつまずきやすいポイントを整理します。

INDEX関数のエラー原因①:範囲と行番号の不一致

指定した行番号が範囲を超えているとエラーになります。

具体例①

A2:A4 の範囲で「5」を指定するとエラーになります。

対処法

  • 範囲の行数を確認する
  • 行番号が範囲内か見直す

INDEX関数のエラー原因②:列番号の指定ミス

列番号を間違えると意図しない値が返ります。

具体例②

A2:C4 で「列番号4」を指定するとエラーになります。

対処法

  • 範囲の列数を確認する
  • 正しい列番号を指定する

INDEX関数のエラー原因③:MATCH関数との組み合わせミス

MATCH関数の結果が正しくないと、INDEXも正しく動きません。

対処法

  • MATCHの検索範囲と条件を見直す
  • 完全一致(0)になっているか確認する

実務での補足コメント

エラーが出た場合は「範囲」「行番号」「列番号」の3点を順番に確認すると原因が特定しやすくなります。
焦らず1つずつ見直すことが重要です。

INDEX関数の使い方まとめとは?基本と応用の整理

INDEX関数は、指定した位置の値を取り出すシンプルな関数です。
しかし、使い方を理解すると非常に応用範囲が広い関数でもあります。

  • 範囲内の位置を指定して値を取得できる
  • 行番号・列番号は範囲内の相対位置で考える
  • MATCH関数と組み合わせることで検索が可能になる

実務では「検索」「抽出」「データ連携」などさまざまな場面で活用されます。
特にデータ量が増えるほど、その効果を実感しやすい関数と言えます。

まずはシンプルな例から試してみて、少しずつ使い方に慣れていくのがおすすめです。