EXCELのシート内でデータを検索して、そのデータのある行のいずれかの値を取得したい場合にVLOOKUP関数を利用します。
こちらの記事では、値が見つからない時にエラーとなる場合の回避方法をご紹介しています。
あるはずの値が見つからない場合の対処法は下記の記事でご紹介していますので併せてご確認ください。
VLOOKUP関数の構文
(構文)
VLOOKUP(検索値, 範囲, 列番号, [検索方法])
設定値
引数名 | 説明 |
---|---|
検索値 (必須) | 検索の対象となる値を指定します。直接値指定以外にセルを指定する事も出来ます。 |
範囲 (必須) | 検索値が含まれるであろう範囲を指定します。注意点としては、検索値は必ず1列目であることと、戻り値として欲しい列も含めた範囲を指定しなければならないことです。例えば探したい値はA列だが、欲しい値はB列となる場合、A:Bとなる。 |
列番号 (必須) | 検索して一致した行の戻り値となる行番号を指定します。左から順に1、2、3と数えます。 |
検索の型 (省略可) | 完全一致とするか近似一致とするかを指定します。FALSEで完全一致指定となります。省略時は規定値のTRUEとなります。ほとんどのケースでFALSEを指定します。 |
VLOOKUP関数の使用例
下記はVLOOKUP関数の簡単な使用例です。
A列に商品コード、B列に商品名、C列に価格があり、商品コードをもとに商品名と価格を検索する簡単な仕組みです。
![](https://it.withinit.com/wp-content/uploads/2022/01/excel-220128-001.png)
セルF2の商品名を取得するVLOOKUP関数の入力内容
=VLOOKUP(E2,A2:C10,2,FALSE)
セルG2の価格を取得するVLOOKUP関数の入力内容
=VLOOKUP(E2,A2:C10,3,FALSE)
VLOOKUP関数のエラー回避方法
VLOOKUP関数で目的の値が見つからない場合 #N/A エラーが表示されます。
こちらでは、この #N/A エラーを表示させないようにする方法をご紹介します。
下記では、検索対象が見つからないため #N/A の表示になっています。
![](https://it.withinit.com/wp-content/uploads/2022/01/excel-220128-002.png)
これを回避するために、ここではISERROR関数を利用します。
具体的な使用例は下記の通りです。
セルF2の商品名を取得するVLOOKUP関数の入力内容
=IF(ISERROR(VLOOKUP(E2,A2:C10,2,FALSE)),"データなし",VLOOKUP(E2,A2:C10,2,FALSE))
セルG2の価格を取得するVLOOKUP関数の入力内容
=IF(ISERROR(VLOOKUP(E2,A2:C10,3,FALSE)),"データなし",VLOOKUP(E2,A2:C10,3,FALSE))
ISERROR関数は、検査対象が#N/A, #VALUE!,#REF!,#DIV/0!,#NUM!,#NAME?,#NULL! の場合に TRUE を返却します。
この仕組みを利用し、IF関数で分岐処理を作り、VLOOKUP関数で値が見つからない #N/A エラーの時は、”データなし” と表示するようにしています。
エラーにならない場合は、再度VLOOKUP関数で値取得して表示しています。
![](https://it.withinit.com/wp-content/uploads/2022/01/excel-220128-003.png)