INDEX+MATCH関数で別ファイルから抽出する方法
ここでは、INDEX関数+MATCH関数で「条件に合うデータを別ファイルから抽出する方法」を解説します。
条件に一致したデータを、元の表があるシートとは別のファイル・シートに抽出する方法で、元の表が変わると抽出したデータも自動的に変わります。
1.別ファイル(ブック)から抽出する方法
では、数式の作り方とポイントを見てみましょう。
1-1.別ファイル参照の数式の作り方
始めに、実際に数式を作ってみます。
例として上のような「社員基本情報一覧」が「Book1のSheet1」に、抽出結果を表示させるための表が「Book2のSheet2」にあるとします。
そして、Book1のSheet1から値を抽出するためのINDEX+MATCH関数の数式を、Book2のSheet2のセルB2に入力してみます。
では、以下手順です。
(1)Book2・Sheet2のセルB2に「=INDEX(」と入力し、fxボタンを押す
(2)引数の選択で「配列、行番号、列番号」をクリックする
(3)関数の引数ダイアログで「配列」クリック後、Book1のSheet1をクリックする
(4)セルA4~E8を選択する
(5)関数の引数ダイアログの「行番号」をクリックし、「MATCH(」と入力後、数式バー上の「MATCH」をクリックする
(6)関数の引数ダイアログの「検査値」に「A2」と入力した後、「照合の種類」に「FALSE」と入力する
(7)関数の引数ダイアログの「検査範囲」クリック後、Book1のSheet1をクリックする
(8)セルA4~A8を選択する
(9)数式バー上の「INDEX」をクリックする
(10)「列番号」に「2」と入力後、OKボタンを押せば完了
これでSheet2の氏名欄に結果が表示されるようになりました。
後はこの数式を右のセルにコピーし、都度INDEX関数の引数「列番号」を、3、4…など適切な数値に直せばOKです。
1-2.別ファイル参照時のポイント
では、次に数式作成時のポイントを見てみましょう。
ちなみに、数式入力後の出来上がりは、次の通りです。
手順中にもありますが、INDEX+MATCH関数で別ファイルを参照する時のポイントは「参照したいファイル・シートにクリックして切り替え、対象セルをクリック(範囲はドラッグ)する」ことです。
ファイル参照を手入力で表現するには、「ファイル名シート名!」と入力する必要があります。
これは手間がかかり、入力間違いも起こりやすいです。
対して、別ファイルを参照させたい引数を入力する際に、「クリックでそのファイルとシートを表示させ、対象セルをクリック、範囲はドラッグ」すれば、数式に「ファイル名シート名!」と自動で入るので、とても簡単です。
2.別ファイル参照で#VALUE!エラーになるか?
エクセル関数によっては「引数で別のファイルを参照すると、そのファイルが閉じた状態では#VALUE!エラーになる」ものがあります。
例えばCOUNTIF関数、SUMIF関数、IFERROR関数などがそれにあたりますが、INDEX+MATCH関数はどうでしょうか?
答えは「エラーにならない」です。
INDEX+MATCH関数は、引数で参照している別のファイルが閉じていたとしてもしっかりと値をとってくるので、#VALUE!エラーにはなりません。
安心して使いましょう。
以上参考になれば幸いです。
【口コミ・評判のいいExcel本の紹介】
INDEX+MATCH関数の、他の記事へのリンクはこちらです。
- INDEX+MATCH関数その他の記事へのリンクはこちら