Excelで縦横クロスするセルの値を抽出したい。
INDEX関数とMATCH関数でできるそうですが、よくわからない。
本記事ではこのような悩みにお応えします。
記事の内容
- XLOOKUP関数とは
- XLOOKUP関数で縦横クロスするセルを抽出する方法
- XLOOKUP関数の注意点
記事を書いた人
Excelではさまざまな関数がサポートされています。
やりたいと思ったことは関数を使うことでたいてい実現できちゃいます。
今回取り上げるテーマはセルの値の取り出し。
それも縦と横で値を検索し、クロスするセルの値を取り出す方法をご紹介します。
INDEX関数とMATCH関数の組み合わせでも実現できますが、今回はもっと簡単なXLOOKUP関数だけでやってみます。
XLOOKUP関数はセルの値を拾ってくる関数
まずXLOOKUP関数についてご紹介します。
XLOOKUP関数は、検索値と同じ行(または列)に存在するセルの値を拾ってきてくれる関数です。
計算式は次のようにあらわされます。
XLOOKUP関数の式
=XLOOKUP(検索値, 検索範囲, 戻り範囲)
検索値 | 何を探すか。 検索対象となる値を設定する。 |
検索範囲 | 検索値をどこで探すか。 検索値を探す範囲を指定する |
戻り範囲 | どの範囲の値を表示するか。 表示したい値が存在する行(または列)を指定する。 |
XLOOKUP関数は、検索値が含まれる行(または列)を指定して、それと同じ行(または列)にあるセルの値を拾ってこれます。
セルの場所を意識することなく値を表示できるので、効率的にデータの抽出ができるようになります。
クロス検索はXLOOKUP関数にXLOOKUP関数を入れ込む
データ抽出をするとき、縦方向だけでなく、横方向の別の検索値も対象にして、それらがクロスするセルの値を取り出したいケースも発生しうると思います。
イメージは下図。Microsoft 365 Basicの2022年の金額を知りたい場合です。
このケースでは、INDEX関数とMATCH関数の組み合わせで実現するのが一般的です。
確かにこれでもできます。でもちょっと分かりづらい。
そんなあなたは、XLOOKUP関数を使いましょう。
XLOOKUP関数なら同じ関数を二つ使うだけでクロスするセルの値を抽出できます。
XLOOKUPでクロス抽出
=XLOOKUP(検索値, 検索範囲, XLOOKUP(検索値, 検索範囲, 戻り値))
XLOOKUP関数の戻り値に、さらにXLOOKUP関数を入れ込みます。
こうすることで戻り値の範囲が絞られて、クロスするセルを抽出できるようになります。
INDEX関数とMATCH関数を組み合わせるよりはるかにわかりやすいですね!
ぜひ使っていきましょう。
XLOOKUP関数の注意点(Officeバージョンによっては使えない)
INDEX関数とMATCH関数の組み合わせと同様に、縦横でクロスするセルの値を抽出できるXLOOKUP関数。
唯一欠点があります。
それが、XLOOKUP関数が最近登場した関数であることです。
新しいOfficeバージョンでしか使えません。
Microsoft の公式サイトを見ると、Office 2021からサポートすると記載しています。
Office 2016やOffice 2019を使っている人はXLOOKUP関数は使えません。
そんなあなたはINDEX関数とMATCH関数の組み合わせで対応しましょう。
もしくは、Office 2016/2019は、2025年でサポートが切れるので、この機会にMicrosoft 365にしてしまうのも手です。
Microsoft 365 ならXLOOKUP関数が使えます。
-
Microsoft 365 Personal(旧Office 365 Solo)とは
続きを見る
公式サイトもチェック!
最大 1 TB のクラウド ストレージ、高度なセキュリティ機能、革新的なアプリが、すべて 1 つのプランに含まれています。
最大 6 TB のクラウド ストレージ (ユーザーあたり 1 TB)、高度なセキュリティ機能、革新的なアプリが、すべて 1 つのプランに含まれています