ポイント3:検索範囲の指定でINDIRECT関数を組み合わせる
そして、検索値を入力する欄(ここでは、「No」欄)を作成し、取り出したデータを表示したいセルにVLOOKUP関数を入力します。ここは、ひとまず、「一般」の表からデータを取り出す形で作成しておきます。取り出したデータを表示したいセルにVLOOKUP関数を入力
さぁ。ここからが、今回の組み合わせ術のポイントです。
VLOOKUP関数で、取り出し元の表を切り替えるのに関係する引数は、第2引数の「検索範囲」。今、一般の表のセル範囲が入力されていますね。ここで、【ポイント1:セル範囲名を設定する】で設定したセル範囲名を使用すれば良いのですが、【ポイント2:設定したセル範囲名で表を指定する】で準備したセルを指定してもエラーが発生してしまいます。これでは、設定した「文字列」そのものを指定しているだけで、関数で使用できる「セル範囲名」として認識されないのです。
関数で使用できる「セル範囲名」として認識されないためにエラーが発生
ここで、文字列を関数で使用できるようにする「INDIRECT関数」を使用します! INDIRECT関数の引数に、【ポイント2】で準備したセルを指定し、このINDIRECT関数をVLOOKUP関数の第2引数「検索範囲」に指定します。こうすることで、指定したセル範囲名を表す文字列が関数で使用できる形に変換されて、VLOOKUP関数がそのセル範囲を参照する、というしくみが出来上がります。
文字列を関数で使用できるようにする「INDIRECT関数」を使用
INDIRECT関数については、ガイド記事「セルに入力されている文字を関数で使うには」でも詳しく紹介しています。ぜひ、こちらもご覧下さい。