web-dev-qa-db-ja.com

文字列VLOOKUPでExcelが失敗する

このようなテーブルがあります

   B   C
43 XS  6
44 S   11
45 M   16
46 L   21
47 XL  26
48 XXL 31

私は式を書きました:

`VLOOKUP("S",B43:C48,2)`

21の値を返しています。なぜですか。 11を返すはずです!

pdateこの正確なエラーを別の表に再現しました。 VLOOKUPは、検索値が数値の場合に機能しますが、文字列を使用すると一貫して失敗します。

17
Tony Stark

次のように、4番目の引数で「完全一致」を指定しない限り、VLOOKUPは奇妙なことを行います。

=VLOOKUP("S",B43:C48,2,FALSE)

Excelのヘルプファイルから:

VLOOKUP(lookup_value、table_array、col_index_num、range_lookup)

range_lookupがTRUEの場合、table_arrayの最初の列の値は昇順で配置する必要があります。..、-2、-1、0、1、2、...、A-Z、FALSE、TRUE。そうでない場合、VLOOKUPは正しい値を提供しない可能性があります。 range_lookupがFALSEの場合、table_arrayをソートする必要はありません。

そしてまた:

range_lookupは、VLOOKUPで完全一致と近似一致のどちらを検索するかを指定する論理値です。 TRUEまたは省略された場合、おおよその一致が返されます。つまり、完全一致が見つからない場合は、lookup_valueより小さい次に大きい値が返されます。 FALSEの場合、VLOOKUPは完全一致を検索します。見つからない場合は、エラー値#N/Aが返されます。

26
e.James

また、フォーマットタイプが一致しないと問題が発生します。 (1つのセルは数値を含むようにフォーマットされ、もう1つのセルはテキストを含むようにフォーマットされます)。このページの問題/解決策#2を参照してください:

VLOOKUP()を使用する場合の3つの一般的な問題の解決策

4
peter k