ピアのパソコン学習ガイド
メニュー
Excel関数

INDEX関数の使い方|行と列の番号を指定して値を取り出す

ピアのパソコン学習ガイド 編集部2026年11月12日 更新

※写真はイメージです

書き方

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

表の「上から何行目・左から何列目」を指定して、そのセルの値を取り出します。単体で使うことは少なくて、ほとんどはMATCHと組み合わせて、VLOOKUPではできない「左の列を取り出す」ために使います。

INDEX関数の使い方の図 E2 fx =INDEX(A2:C5,3,2) A B C D E 1 2 3 4 5 商品 単価 在庫 りんご 120 35 みかん 80 60 ぶどう 450 12 もも 300 20 3行目・2列目 450
表(A2:C5)の上から3行目(ぶどう)の、左から2列目(単価)で 450。

この図の表をExcelファイルでダウンロード(問題と答えのシートつき)

引数の意味

引数入れるもの図の例
配列取り出したい表の範囲A2:C5
行番号範囲の上から何行目か3
列番号
省略できる
範囲の左から何列目か。1列だけの範囲なら省略2

行番号・列番号は、シートの行番号ではなく指定した範囲の中で数えます。A2:C5 の1行目は、シートでは2行目です。

MATCHと組み合わせて「名前から値を探す」

MATCHと組み合わせて「名前から値を探す」 E2 fx =INDEX(B2:B5,MATCH("もも",A2:A5,0)) A B C D E 1 2 3 4 5 商品 単価 在庫 りんご 120 35 みかん 80 60 ぶどう 450 12 もも 300 20 ももの単価 300
MATCHで商品の列から「もも」が何番目かを出して(4番目)、INDEXで単価の列の4番目を取り出します。

この形なら、探す列が取り出す列より右にあってもかまいません。VLOOKUPとのちがいや使い分けは、INDEXとMATCHの組み合わせのページにまとめています。

うまくいかないとき

1#REF! になる

行番号・列番号が範囲の大きさを超えています(4行しかないのに5を指定など)。

直し方範囲の行数・列数を見直します。MATCHと組み合わせているなら、MATCHの範囲とINDEXの範囲の行をそろえます。

2ちがう値が出る

行番号をシートの行番号で数えています。

直し方範囲の1行目を「1」として数えます。

使えるバージョン

すべてのExcelとGoogleスプレッドシートで使えます。

サンプルファイルで試す

「問題」のシートの黄色いセルに式を入れて、「答え」のシートと比べてください。

index.xlsx をダウンロード(無料・登録なし)

よくある質問

INDEXとVLOOKUPはどちらを使えばいいですか?

ふつうの表引きならVLOOKUP(365ならXLOOKUP)が簡単です。探す列より左の値を取り出したいときや、列の入れ替えに強くしたいときにINDEX+MATCHを使います。

行番号に0を入れるとどうなりますか?

列全体(列番号に0なら行全体)を返します。SUM(INDEX(…,0,2)) のように、ほかの関数と組み合わせて使います。

一緒に覚えたい関数・操作

このページについて

操作の説明は Microsoft 365 の日本語版Excel(Windows)に合わせています。図はこのサイトで作ったもので、表の会社名・商品名・人名は架空です。運営者情報