SONYのノートPCが24時間で売れ筋ランキング471位→36位に急浮上!他にも人気商品が多数ランクインしたAmazon整備済み品ランキングを今すぐチェックして、お得なアイテムを見逃さないようにしましょう。

【解説】ExcelのINDEX関数とは?行と列を指定してデータを取り出す方法と応用例

「行と列を指定して特定のデータを取り出したい」
「VLOOKUPでは左側の列を参照できない…」

そんなときに使えるのが INDEX関数 です。
INDEX関数は、指定した範囲の中から、行番号と列番号に応じた値を返す関数で、他の関数と組み合わせることでより強力な検索機能として活用できます。

この記事では、INDEX関数の基本構文から使い方、MATCH関数との連携による柔軟な検索まで、わかりやすく解説します。


目次

INDEX関数とは?

  • 読み方:インデックス関数
  • 用途指定したセル範囲の中から、行番号・列番号に応じた値を取得する関数

構文

=INDEX(範囲, 行番号, [列番号])
引数説明
範囲データの対象範囲
行番号何行目かを指定(1から)
列番号(省略可)何列目かを指定(省略時は1列目)

基本的な使い方

例1:2行目・3列目の値を取得

INDEX関数の基本的な使用方法を説明した画像
=INDEX(A2:C4, 2, 3)

→ 範囲A2:C4の中で、「2行3列」のセルの値を取得します。


例2:1列目だけから値を取得(列番号省略)

=INDEX(A2:A5, 3)

→ A2:A5 の3行目(A4)の値を取得


MATCH関数との組み合わせ

例3:氏名を指定して対応する部署を取得(横断検索)

INDEX&MATCHを組み合わせた例を説明
=INDEX(B2:B6, MATCH("佐藤", A2:A6, 0))

→ A列で「佐藤」を検索し、対応するB列(部署)を返す
※VLOOKUPではできない「左側を検索→右側を取得」が可能!


VLOOKUPとの違い

比較項目VLOOKUPINDEX+MATCH
参照方向左→右のみどちらの方向でもOK
列番号の指定列番号(数値)を直接指定MATCHで動的に取得できる
検索精度列構成が変わるとズレやすい範囲が変わっても柔軟に対応
処理速度大規模データではやや遅い高速で安定性が高い(特に複雑な検索に強い)

応用パターン

1. 入力された氏名からスコアを取得(動的検索)

INDEX&MATCH関数を使用した応用例を示していて、動的検索を可能とした画像
=INDEX(C2:C6, MATCH(E2, A2:A6, 0))

→ E2に入力された名前に応じてC列のスコアを表示


2. 2次元配列から行列指定で値を取得

=INDEX(A1:D5, 3, 2)

→ A1:D5 の「3行2列」のセルの値を返す(例:B3)


よくある注意点と対策

注意点解説
行・列番号が範囲外だとエラーになる#REF!エラー → 行・列数を確認して調整
複数範囲の選択時には「エリア番号」も必要通常は1つの範囲だけにしておくのが安全
MATCH関数は「一致モード」に注意0=完全一致がおすすめ(検索精度重視)

まとめ|INDEX関数で自在なデータ取得を実現しよう

INDEX関数は、行番号と列番号を指定してデータを正確に取得できる強力な関数です。

  • VLOOKUPではできない柔軟な検索が可能
  • MATCH関数と組み合わせれば「動的検索式」が簡単に作れる
  • データ構造が変わっても安定した検索ができる

「表のどこに何があるか決まっている」ときは、INDEX関数で迷いのない検索式を構築しましょう。


関連リンク


執筆者:玉城 学(タマキ マナブ)

IT業界歴10年以上。ヘルプデスク・サーバーエンジニアとしてWindowsの設定、クラウド管理、PC最適化を担当。

現在はPC設定・Office活用の専門家として、ブログやYouTubeで情報を発信中。

詳しいプロフィールはこちら

SNSでも情報を発信しています: YouTubeTikTokInstagram

  • URLをコピーしました!

コメント

コメントする


reCaptcha の認証期間が終了しました。ページを再読み込みしてください。

アップロードファイルの最大サイズ: 2 MB。 画像 をアップロードできます。 Youtube、Facebook、Twitter および他サービスへのリンクは自動的にコメント内に埋め込まれます。 ここにファイルをドロップ

目次