複数セルのデータをキーとして該当項目を検索する(VLOOKUP関数)

 この記事の親記事はExcelの入力規則のプルダウンに表示されるリストを、他のセルの値に応じて限定する(章や項目などの場合) - stacked tip that highですが、この記事だけでも内容は閉じている*1ので、安心して下さい。

VLOOKUP関数とは?

 さて、例えば右の図のように、都道府県名(以下「県名」)とそれぞれの都道府県庁所在地(以下「県庁所在地」)のデータに対して、県名を指定すると、隣にその県庁所在地が出るようにしたい時、VLOOKUP関数が大変有用です。VLOOKUP関数は、

   VLOOKUP(検索値, 範囲, 列番号, [検索方法])

という引数を持っています。右の例では、セルC3には
   =VLOOKUP($B$3,$B$6:$C$52,2,FALSE)
という式が入っています。この中の3番目の引数は、「左から数えて何列目のデータを引っ張ってきますか?」という意味で、2番めの引数で指定している範囲はB列からC列までなので、C列のデータを引っ張ってきているというわけです。
 例えばこれを、範囲をD列まで広げ、そこに都道府県の木(以下「県の木」)のデータを置き、セルD3に
   =VLOOKUP($B$3,$B$6:$D$52,3,FALSE)
と入力すると、B3で指定した県名の県の木が表示されるようになります。因みにセルC3に
   =VLOOKUP($B$3,$B$6:$D$52,2,FALSE)
と打っても問題ありません。範囲が大きくなろうと、左から2番目のデータを引っ張ってくるだけですから。
 これで、VLOOKUP関数の概要をわかっていただけましたか?VLOOKUP関数は、このようにある値をキーに該当項目を検索してくるにはうってつけの関数です。強いて弱点を言えば、VLOOKUP関数を使う場合は、範囲の一番左の列のデータしか検索範囲に選べないということですね。これを克服するには、INDEX関数とMATCH関数を使えばいいのですが、まぁそれはまたの機会に。

複数のキーを検索に使いたい

 さて、やっと本記事の本題です。さっきまでは、1つのキー「都道府県名」を用いて該当項目を検索し表示しました。これが2つ以上のキーになったら、どうすればよいのでしょうか?

*1:「閉じている」っていう言葉を「この中だけで完結している」という意味で使うのは、数学用語としての「閉じる」の用法なんですかね?

続きを読む