ISNA関数 – 値が #N/A エラーかどうかを判定する関数
1. 使い方と活用例
ISNA関数は、指定した値が #N/A(該当なし)エラーであるかを判定し、該当する場合は TRUE、そうでなければ FALSE を返す関数です。
#N/A エラーは、VLOOKUPやMATCHなどの検索関数で、検索対象が見つからない場合によく発生します。
この関数は、#N/Aエラーのみに反応するため、他のエラー(#DIV/0! や #VALUE! など)とは区別されます。
2. 基本の書式
=ISNA(value)
3. 引数の説明
- value – 必須。#N/Aエラーかどうかを調べたい値、またはセル参照。
4. 使用シーン
- VLOOKUPやMATCH関数の結果が #N/A エラーになるかどうかを事前にチェックしたい場合。
- 検索対象が存在しないときに、別の値やメッセージを表示したい場合。
- 他のエラーと区別して、#N/A だけを特別扱いしたいとき。
5. 応用のポイント
ISNA関数は、IF関数と組み合わせて使用することで、#N/Aエラー時にカスタムメッセージや代替値を表示できます。
Excel 2013以降では、より簡潔に同様の処理ができるIFNA関数も登場しており、用途によって使い分けが可能です。
ISNAは他のエラー(#DIV/0!、#VALUE!など)にはFALSEを返すため、他のエラーも包括的に処理したい場合はISERROR関数やIFERROR関数の利用を検討するとよいです。
6. 具体例とその解説
セルA1に以下の式があり、検索対象が存在しない場合の処理をしたいとします。
=VLOOKUP("商品X", B2:C10, 2, FALSE)
この式が #N/A を返す場合、それをISNA関数で検出し、メッセージを表示させるには以下のようにします。
=IF(ISNA(VLOOKUP("商品X", B2:C10, 2, FALSE)), "該当なし", VLOOKUP("商品X", B2:C10, 2, FALSE))
この式では、#N/A エラーが発生したときは「該当なし」と表示され、それ以外の場合は通常の検索結果が表示されます。
7. 関連関数の紹介
- IFNA関数 – 式が #N/A エラーの場合に代替値を返す関数(Excel 2013以降)
- ISERROR関数 – すべてのエラー(#N/A含む)を判定する関数
- IFERROR関数 – エラー時に代替値を返す関数
- NA関数 – 明示的に #N/A エラーを返す関数
- IF関数 – 条件に応じて処理を分ける基本関数
8. まとめ
ISNA関数は、#N/Aエラーの検出に特化した関数で、検索系関数と組み合わせて使うことで柔軟なエラー処理が可能になります。
特定のエラーだけに反応したい場面に最適であり、IF関数と併用することでユーザーフレンドリーな出力が可能になります。
9. 対応バージョン
Excel 2003以降のすべてのバージョンで使用可能です。
Excel 365、Excel 2019 以降でも引き続き利用できます。