web-dev-qa-db-ja.com

列内の別のワークシートにExcelセルが存在するかどうかを確認し、別の列の内容を返します

私がやりたいのは、セルD3(現在のワークシート)の内容が最初のワークシート(私の場合はリスト)の列Aに存在するかどうかを言うことです。 (そして、それらは常にどこかに存在します)。列Cの対応する行の内容を返します。

つまり、一致するセルが行12で見つかった場合-C12からデータを返します。

次の構文を使用しましたが、最後の部分を正しく動作させることができないようです。

=IF(ISERROR(MATCH(D3,List!A:A, 0)), "No Match", VLOOKUP(D3,List!A:A,1,TRUE))

数式を修正する方法は?

15
YelizavetaYR

次の式を使用できます。

Excel 2007以降の場合:

=IFERROR(VLOOKUP(D3,List!A:C,3,FALSE),"No Match")

Excel 2003の場合:

=IF(ISERROR(MATCH(D3,List!A:A, 0)), "No Match", VLOOKUP(D3,List!A:C,3,FALSE))

ご了承ください

  • 私はVLOOKUPList!A:Cを使用しており、列№3から値を返します
  • 私はVLOOKUPFALSEと等しい4番目の引数を使用しています。その場合、VLOOKUPは完全に一致するものだけを見つけ、List!A:C doの最初の列の値は- notソートする必要があります(TRUEを使用している場合とは逆)。
23
Dmitry Pavliv