ISNA 関数

Excel 2007+

概要

ISNA 関数は、指定された値が #N/A エラーかどうかを判定し、#N/A エラーの場合は TRUE、それ以外の場合は FALSE を返します。VLOOKUP や MATCH などの検索関数でよく発生する #N/A エラーを検出するのに最適です。

構文

ISNA(値)

パラメータ

パラメータ タイプ 必須 説明
任意 はい テスト対象の値。セル参照、数式、またはエラー値を含む任意の値を指定できます。

ISNA関数の使用

ISNA 関数は主に VLOOKUP、HLOOKUP、MATCH などの検索関数でデータが見つからない場合に発生する #N/A エラーを検出するために使用します。IF 関数と組み合わせることで、エラーが発生した際に代替値を表示したり、別の処理を実行したりできます。

ISNAの一般的な例

#N/A エラーの検出

=ISNA(VLOOKUP(D1,A1:B10,2,FALSE))

D1 の値が A1:B10 に見つからない場合に TRUE を返します。

エラーハンドリング

=IF(ISNA(VLOOKUP(A2,$C$2:$D$10,2,FALSE)),"見つかりません",VLOOKUP(A2,$C$2:$D$10,2,FALSE))

検索で見つからない場合「見つかりません」と表示し、見つかった場合は値を返します。

空白との組み合わせ

=IF(ISNA(A1),"データなし",A1)

A1 が #N/A エラーの場合は「データなし」を表示します。

よくある質問

ISNA は #N/A エラーのみを検出します。#REF! や #DIV/0! などの他のエラーは FALSE を返します。すべてのエラーを検出したい場合は ISERROR を使用してください。

ISNA は値をチェックするだけですが、IFNA は #N/A エラーの場合に代替値を返す便利な関数です(Excel 2013以降)。

一般的なエラーと解決策

ISNA が FALSE を返す

Cause: #N/A 以外のエラー(#REF!、#VALUE! など)が発生している

Solution: ISERROR 関数を使用してすべてのエラーをチェックするか、原因エラーを特定してください。

予期しない TRUE の結果

Cause: 空白セルや意図しない #N/A が入力されている

Solution: 入力データを確認し、必要に応じて IFERROR と組み合わせます。

注記

  • ISNA は Excel 2007 以降で使用可能
  • VLOOKUP や MATCH と頻繁に使用されます
  • IF 関数と組み合わせて条件分岐を作成
  • ISERROR と異なり #N/A エラーのみを対象
  • 配列数式や動的配列(Excel 365)でも使用可能

互換性

利用可能: Excel 2007, Excel 2010, Excel 2013, Excel 2016, Excel 2019, Excel 2021, Microsoft 365

利用不可:

コンテンツ最終レビュー: December 9, 2025
更新頻度: 必要に応じて
テスト済みExcelバージョン: Excel 2007+