【Microsoft Excel】 VLOOKUP関数 使い方 詳しく解説 図解

【Microsoft Excel】 VLOOKUP関数 使い方 詳しく解説 図解

デスクワーク(Excel)で、最も活用できる関数といっても過言ではありません。
使い方を、かならずマスターしましょう。

VLOOKUP関数とは

VLOOKUP 関数は、表や範囲から行ごとに数値や文字列などを検索し、同じ行の値を返します。

VLOOKUP関数の書式

VLOOKUP(検索値, 範囲, 列番号, [検索の型])

“検索値”:必須。検索の対象となる値。
“範囲”:必須。VLOOKUP が検索値と戻り値を検索するセル範囲。
“列番号”:必須。戻り値を含む列の番号。範囲の左端の列が1となります。
“検索の型”:省略可。VLOOKUP を使用して、近似一致を検索するか、完全一致を検索するかを指定する論理値。
TRUEを指定もしくは省略すると、左端列は数字または英字を基準に並べ替えられているものとみなされ、検索値に最も近い値が検索されます。
FALSEを指定すると、左端列から検索値と完全に一致する値が検索されます。
※TRUE=1,FALSE=0の意味

VLOOKUP関数の使い方 解説

①範囲をB3:E7とする。検索値をG3(値は3)とし、列番号を2とする。検索の型は0(完全一致)。下図1参照。

数式: =VLOOKUP(G3,B3:E7,2,0)
結果: hogehogeEX

この場合、データテーブル”B3~E7″の左端にあたる”B2~E2″を検索対象とし、G3の値”3″を検索します。
検索で一致した行にて、指定した列番号”2″にある値を返します。
つまり、B5の行がヒットし、その2列目である、C5のセルの値の”hogehogeEX”が取得されます。

②範囲をB3:E7とする。検索値をG4(値は5)とし、列番号を2とする。検索の型は0(完全一致)。下図1参照。

数式: =VLOOKUP(G4,B3:E7,2,0)
結果: hogehogeFINAL

①と違うところは、検索値です。検索値をG4とし、G4の値は”5″となります。
つまり、B列(B3~B7)から、”5″を検索し、ヒットした7行目(B7)から、列番号2なのでB7から数えて2列目のC7の値”hogehogeFINAL”が取得されます。

下図1

もっとわかりやすく、図で説明します。
下の図は、F6のセルにて、VLOOKUP関数を使っています。
F6の計算式 : =VLOOKUP(F2,A2:D6,2,0)
F6の出力結果 : hogehoge2nd

下図2

VLOOKUP関数のおさらい

①指定した”範囲”の一番左の列から指定した”検索値”を検索する
②検索値がヒットした行の指定した”列番号”の値を取得する
③”検索の型”は、1を指定するとあいまいな検索(検索値を超えない一番大きい値が対象となる)、0を指定すると完全一致検索となる。

VLOOKUP関数の用途

検索対象のセルが一列に並んでいるリストから、値を検索するときに重宝します。
検索対象のセルが一行に並んでいるリストから、値を検索したいときは、HLOOKUP関数を使います。

VLOOKUP関数使用時の注意点

・VLOOKUP関数で検索値が見つからなかった場合、”#N/A”が表示されます。
・検索列に検索値に該当する値が2つ以上あった場合、最上位の検索値が対象と見なされます。上から順に検索し、見つかったらその列を対象とするイメージを持つと良いでしょう。
・結合したセルを検索列(範囲の一番左の列)にしない。

VLOOKUP関数で、よくある”#N/A”が表示される理由

①理由:検索値と一致する値が無い。
対策:範囲の一番左の列に検索値が本当にあるかを確認する。

②理由:検索値と一致する値があるように見えるが、スペースが入っていることにより一致していない。
対策:範囲の一番左の列に検索値が本当にあるかを確認し、ある場合、検索値のはじめや終わりに不要なスペースが入っていないか確認する。

③理由:検索値と一致する値があるように見えるが、記号やスペースの全角/半角に違いがある。
対策:範囲の一番左の列に検索値が本当にあるかを確認し、ある場合、検索値のはじめや記号やスペースが半角なのか全角なのか確認する。

④理由:範囲がずれている。一行目にVLOOKUP関数を埋め込み、下の行まで計算式を引っぱった(オートフィル)時に生じる。
対策:例えば、「=VLOOKUP(G4,B3:E7,2,0)」の様な計算式を埋め込んで、下の行へ計算式を引っぱりたい(オートフィル)場合。範囲”B3:E7″を絶対参照にする。
B3:E7→$B$3:$E$7に変更する。「=VLOOKUP(G4,$B$3:$E$7,2,0)」にすることで、下の行へ計算式を引っぱっても(オートフィル)範囲がずれない。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする