VLOOKUP関数を使っていると、何列目を表示させるのか設定するとき、いちいち数えるの面倒くさい・・・なんて感じたことありませんか?
今回は、項目名さえ指定してあげれば、何列目を表示させたいのかをわざわざ数える必要がなくなる方法の紹介をしていきます。
まずは普通にVLOOKUP関数を使ってみる
まずは、よくある普通のVLOOKUP関数を使った表を用意します。
式:=VLOOKUP(E3,A:C,2,FALSE)
E3の内容をA列から探し出し、A~C列のうち2列目を表示させるという、シンプルな使い方ですね。
言葉にすると、表の中から作品名を探し出し、ハードや発売日を表示するという式です。
ハードを表示する場合2列目、発売日の場合は3列目を表示するようにしています。
そう、今回はこの、何列目を表示するのかをわざわざ指定するのが面倒くさい!という方に向けた記事になります。
列数の代わりにMATCH関数を使う
検索したい文字列指定を、検索範囲から探し出し、それが何行目(何列目)かを返してくれる、MATCH関数というものがあります。
今回は、列数の代わりにこのMATCH関数を使う事で、列数を指定しなくて済むようにしていきます。
実際にやってみましょう。
結果こそ変わりませんが、列数の代わりにMATCH関数を使うようにしました。
式:=VLOOKUP(E3,A:C,MATCH(F3,$A$1:$C$1,0),FALSE)
このMATCH関数が何をしているのかというと、F3の内容(ハード)を、A1~C1の中から探し、何列目にあるかを調べる式になっています。
ハードは2列目にありますので、2という結果が返ってきます。
そしてMATCH関数は項目名を探すために使っているので、オートフィルで検索先が動かないよう、$A$1:$C$1というように、絶対参照にしています。
こうしておけば、G3で組んだ式をコピーしてG4セルに貼り付けても式が崩れなくなります。
実際に上の図のG4セルは、すでにG3の式をコピペしたMATCH関数を組み込んだ式を使っていますが、ちゃんと発売日が表示されています。(少し隠れてますが)
絶対参照について詳しく知りたい方はコチラの記事もご覧ください。
ちなみに、存在しない項目を指定した場合は、#N/Aとなります。
まとめ
以上、VLOOKUP関数で指定する列数は、MATCH関数を使う事によって自動化できるというお話でした。
項目数が何十・何百もある表であったり、項目の並び順がよく入れ替わる表だったり、大量にVLOOKUP関数を使って複数の項目を表示させたい場合には重宝する組み合わせです。
覚えておくと、大幅な作業短縮につながる事がある内容ですので、ぜひ意識して使い慣れてみてください。
コメント