1:複数の比較 (セルと列の比較)

VLOOKUP関数 - 大文字小文字を無視して検索する (ワイルドカード使用可)

説明
=VLOOKUP (検査値, 範囲, 列番号, [検索方法])
「範囲」の一番左の列から「検査値」を検索し、一致した行の「列番号」で指定した列の値を取得します。
検索方法は[検索方法]で指定します。
見つからない場合は#N/Aを返します。
アルファベットの大文字小文字の違いを無視します。
検査値
探す値を指定します。
「範囲」から、ここで指定した値を探します。
「照合の種類」が「0」で検索値が文字列の場合はワイルドカード文字が使用できます。
任意の一文字を「?」、任意の文字列を「*」で表します。
「?」や「*」を検索したい場合は、「~?」や「~*」のように、文字の前に「~」を付けます。

範囲
検索するセルの範囲を指定します。

列番号
発見した行の何列目に取り出したい値があるかを指定します。
列番号を1にすると、範囲の左端の列の値が返されます。
列番号を2にすると、範囲の左から2列目の値が返されます。

検索方法
検索方法を指定します。
セルの比較で使用する場合は「FALSE」(完全一致)を使用します。

照合の型
照合の型 動作
TRUE または省略 検索値以上の最小の値が検索されます。
検索範囲のデータは、昇順に並べておく必要があります。
FALSE 完全に一致する値が検索されます。
動作例
VLOOKUP関数は若干複雑なため、動作イメージを下記に用意しました。
1.「検索値」の値 (5) を「範囲」(A2:C6)の左端列から検索します。
2 .発見した行(6行目) の「列番号」で指定した列の値を返します。
VLOOKUPの動作イメージ
例1A1:A10の範囲で"A"を検索して取得する。
=VLOOKUP("A", A1:A10, 1, FALSE)
例2A1:B10の範囲でC1を検索して、その2列目を取得する。
=VLOOKUP(C1, A1:B10, 2, FALSE)
例3配列{10, 1; 20, 2; 30, 3; 40, 4}の中で「30」の行の2列目を取得する。結果は3となります。
中括弧({ })内に数値を並べることで配列を作成できます。
「;」(セミコロン)で区切ることで、2次元配列を作成できます。
この例では2行4列の配列を作成しています。
=VLOOKUP(30, {10,1; 20, 2; 30, 3; 40, 4}, 2, FALSE)
例4配列{10, 1; 20, 2; 30, 3; 40, 4}の中で「25」以下の最大値行の2列目を取得する。結果は20となります。
第4引数の[検索方法]を省略しています。
=VLOOKUP(25, {10,1;20,2;30,3;40,4}, 2)
応用A2:A6の範囲を検索する。
=VLOOKUP(検索値, A2:A6,1,FALSE)の計算で、B2, B3, B4を検索します。
見つからない場合は#N/Aと表示します。
大文字小文字の違いは無視します。
=VLOOKUP(B2,A2:A6,1,FALSE)
応用A2:A6の範囲で検索し、見つかった場合はその結果、見つからない場合は"なし"と表示する。
IF関数を組み合わせることで、比較結果に合わせて表示内容を切り替えることができます。
IFERROR関数を組み合わせることで、数式をコンパクトにできます。
=IF(ISNA(VLOOKUP(B2,A2:A6,1,FALSE)),"なし"VLOOKUP(B2,A2:A6,1,FALSE))
=IF(ISNA(VLOOKUP(B2,A2:A6,1,FALSE)),"なし"VLOOKUP(B2,A2:A6,1,FALSE))
応用A2:C6の範囲で検索し、3列目の値を取得する。
=VLOOKUP(A9,A2:C6,3,FALSE)
応用A2:C6の範囲で「検索値」以上の最小値を検索し、3列目の値を取得する。
検索範囲が昇順に並んでいない場合は正しく検索できません。
=VLOOKUP(A9,A2:C6,3,TRUE)
=VLOOKUP(A9,A2:C6,3,TRUE)
応用A2:A6の範囲で検索し、見つからない場合はを赤くする。
条件付き書式を組み合わせることで、比較結果に合わせて書式を切り替えることができます。
ISNA関数を使い、見つからない場合に条件付き書式を適用しています。
[条件付き書式]=ISNA(VLOOKUP(B2,A2:A6,1,FALSE))
応用A2:A6の範囲で検索する。(ワイルドカードを指定する)
[照合の型]に「0」を指定した場合は、ワイルドカートを使った検索が可能です。
「*」を使って先頭が「D」の文字列を検索しています。
「?」を使うと任意の一文字を表すため「AAA」の位置を返します。
「?AA」を検索したい場合は「?」の前に「~」(チルダ)を付けます。
=VLOOKUP(B2,A2:A6,1,FALSE)