VLOOKUP関数では、基本的には列番号を数字で指定しますが、表の列数が多いと列番号を数えるのが大変です。MATCH関数を使えば、表の見出しの名前を使って指定することができます。
目次
MATCH関数を使ってVLOOKUP関数の列番号を表の見出しの名前を使って指定する
基本的なVLOOKUP関数の使い方
たとえば、以下のような商品リストから商品名に基づき、価格を検索します。

VLOOKUP関数では、検索したい範囲を指定し、表示させるデータを列番号で指定します。
VLOOKUP(検索値,範囲,列番号,[検索方法]) |
---|
検索値で指定した値を、範囲の左端列から検索。検索値と一致するデータの左から列番号目の値を抽出し表示する。 |
商品リストの「価格」は6列目にあるので、列番号には「6」を指定します。

この表の列数が多いと、列番号を数えるのも大変になります。そこで以下では、見出しの「価格」という名前を使って列番号を指定します。
MATCH関数を使って列番号を指定
MATCH関数は、指定された値が指定された範囲内の何番目にあるかを表示させる関数です。
MATCH(検索値,検索範囲,[照合の種類]) |
---|
検索範囲内で検索値が何番目にあるかを指定する。照合の種類は「1」以下、「0」完全一致、「-1」以上から選択することができる。 |
たとえば、商品リストの「価格」が何列目にあるかを調べるには以下のように数式を入力します。
=MATCH(“価格”,$E$2:$J$2,0)

Enterで確定すれば「6」と正しい列番号が表示されます。

先ほどのVLOOKUP関数の数式の列番号をMATCH関数の数式に変更します。

Enterで確定すれば、正しい価格が表示されます。

また、MATCH関数の検索値をセル参照にすれば、表示させる内容を柔軟に変更することができます。
=VLOOKUP(B3,$E$3:$J$12,MATCH($C$2,$E$2:$J$2,0),FALSE)

たとえば、セルC2を「メーカー」に変更すれば、メーカー名が表示されます。

このようにMATCH関数を使えば、列番号を分かりやすく指定でき、検索内容を柔軟に変更することもできます。
コメント