VLOOKUP関数についてご紹介した「VLOOKUP関数の検索の型」というネタは、このサイトの人気ページの一つです。
「検索の型」というのは、VLOOKUP関数でどういう検索をするのかを指示する4つ目の引数で、「TRUE」か「FALSE」を指定します。
この第4引数・検索の型は、省略すると「TRUE」を指定したのと同じことになり、完全に一致しなくても近似値を返すのが仕様なのですが、
「省略したときにエラー値#N/Aになってしまったので、省略時にはFALSEを指定したのと同じことなのではないのか?」
といったご質問をいただきました。
確認してみると数式が
「=VLOOKUP(C5,マスタ,2,)」
となっていました。
(リスト範囲には「マスタ」という名前が定義され、第2引数では定義された名前「マスタ」を指定しています。)
確かに第4引数には何も指定されていないようです。
ですがこの計算式のあるセルには「#N/A」とエラーが表示されています。
実は、
「=VLOOKUP(C5,マスタ,2,)」
という計算式は第4引数を省略した状態ではありません。
第4引数を省略した場合、
「=VLOOKUP(C5,マスタ,2)」
という式になります。
細かな違いですが、「)」の前、第3引数「2」の後ろが異なっています。
「,」が存在するか否かです。
ご質問いただいた方は、数式バー上で第4引数を削除し
「=VLOOKUP(C5,マスタ,2,)」
という数式にしたとのことでした。
「=VLOOKUP(C5,マスタ,2,)」
と第3引数の後ろに「,」のみがある場合、第4引数を省略したとはみなされず、「0」「FALSE」が指定されたのと同様の状態となり、完全一致する値を探していたために、エラーが発生していたのです。
TRUE:第1引数の検索値に一致するデータがリスト内になければ、検索値未満の最も大きい値を取得。
FALSE:第1引数の検索値と完全一致するデータを取得。一致するものがなければエラー値#N/Aを返す。
省略時はTRUEが指定されたとみなされるが、第3引数の後ろに「,」が残っていた場合、
FALSEが指定されたとみなされる。
細かな点ですが、関数を数式バーやセル内でキーボードから直接編集する場合、ご注意ください。
Home » Excel(エクセル)の関数・数式の使い方 » 検索・行列 » VLOOKUP関数で第4引数を省略した場合