はじめに
Excel関数 VLOOKUP は検索値が見つからないとセル内に #N/A と表示します。
また #N/A セルを扱った他の関数は 連動してエラー になります。
#N/A が出る例
商品コードで商品名を引く、よくある使い方です。
=VLOOKUP(A2, 商品マスタ!A:B, 2, FALSE)
→ A2 の値が 商品マスタ!A列 に存在する場合は商品名が表示されますが、存在しない場合はセルに #N/A が表示されます。
ISNA で回避する
ISNA は値が #N/A か判定し TRUE/FALSE を返します。これを IF と組み合わせます。
=IF(ISNA(VLOOKUP(A2, 商品マスタ!A:B, 2, FALSE)), "", VLOOKUP(A2, 商品マスタ!A:B, 2, FALSE))
存在しない場合はセルが空欄になります("" を返す)。
他の関数の 連動エラー もなくなります。
IFERROR でもっと短く書く
Excel 2007 以降なら IFERROR が使えます。
=IFERROR(VLOOKUP(A2, 商品マスタ!A:B, 2, FALSE), "")
こちらが現在のスタンダードです。ただし #N/A 以外のエラー(#REF! など)も握り潰す点に注意。(プログラマ気質で ISNA を使いたくなりがちです)
まとめ
| 方法 | 書きやすさ | エラーの絞り込み |
|---|---|---|
ISNA + IF
|
やや長い |
#N/A のみ対応 |
IFERROR |
短い | すべてのエラーを握り潰す |
VLOOKUP を書いたら、まず IFERROR で囲む——これを習慣にするだけで、見やすくなり、エラーも減ります。
下記のような使い方もあり。
=IF(ISNA(VLOOKUP(A2, 商品マスタ!A:B, 2, FALSE)), "×", "○")
宣伝
新人プログラマでも業務アプリ開発しやすいよう設計した、Javaフレームワークを公開しています。HTML・CSS・JavaScript・Java の構成がシンプルに整理されており、サンプルコードを動かしながら学べます。
- HP: https://onepg.com/ja/
- GitHub: https://github.com/sugaiketadao/sicore-ja
- サンプル画面の確認方法: https://github.com/sugaiketadao/sicore-ja#%EF%B8%8F-%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB%E7%94%BB%E9%9D%A2%E3%81%AE%E7%A2%BA%E8%AA%8D%E6%96%B9%E6%B3%95---vs-code
- AI開発の始め方: https://github.com/sugaiketadao/sicore-ja#-ai%E9%96%8B%E7%99%BA%E3%81%AE%E5%A7%8B%E3%82%81%E6%96%B9
- 過去の自分に教えたかった CSS のブロックとインライン
関連記事リンク
他の記事もぜひご覧ください!
読んでいただきありがとうございました!
❤いいね!をしていただけると励みになります。