VLOOKUP(Microsoft Excel)で空白を返す
VLOOKUPを使用してデータテーブルから値を返す場合、関数は戻り値で空白とゼロ値を区別しません。ソース値がゼロの場合、VLOOKUPは0を返します。同様に、ソースが空白の場合でも、VLOOKUPは値0を返します。目的によっては、これが行われない場合があります。検索対象のセルが空白か、それとも空白かを知る必要があります。本当に0が含まれている場合。
追求できる多くの異なる解決策があります。 1つの解決策は、VLOOKUPが0を返しても、ソースセルの長さを正しく報告するという事実に依存しています。したがって、返されるものにLEN関数を使用すると、ソースセルが空の場合、LEN関数は0を返しますが、ソースに0が含まれている場合、LENは1を返します(0の値は1文字の長さです)。これは、標準のVLOOKUPの代わりに次の式を使用できることを意味します。
=IF(LEN(VLOOKUP(B1,D:E,2,0))=0,"",VLOOKUP(B1,D:E,2,0))
この場合、VLOOKUPが返すものの長さが0の場合、数式は空白を返します。長さが0でない場合にのみ、VLOOKUPの結果が返されます。
この同じ概念には他にもバリエーションがあり、それぞれが参照されているデータの異なる特性をテストし、実際にそのデータを検索するかどうかを決定します。 (推測できるように、ニーズに合わせて開発するバリエーションは、「参照されるデータのさまざまな特性」によって異なります。)
たとえば、ソースが空白かどうかを直接テストするバリエーションを次に示します。
=IF(VLOOKUP(B1,D:E,2)="","",VLOOKUP(B1,D:E,2))
数式を変更して、ソースセルの複数の条件を確認することもできます。たとえば、ソースが空白の場合、またはソースにエラー値(#N / Aなど)が含まれている場合、このバリエーションは空白を返します。
=IFERROR(TRIM(VLOOKUP(B1,H:H,1,FALSE)),"")
_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。
このヒント(12518)は、Microsoft Excel 2007、2010、2013、2016、2019、およびOffice 365のExcelに適用されます。Excelの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。
linkVLOOKUPで空白を返す。