ISNA関数の使い方:セルの値が「#N/A」エラーかどうか判定する関数:Excel関数

ISNA関数の使い方:セルの値が「#N/A」エラーかどうか判定する関数:Excel関数

ISNA関数は、セルの値が「#N/A」エラーかどうかを判定する関数です。

エラーなら「TRUE」を返し、エラーでなければ「FALSE」を返します。「#N/A」エラーは、検索系の関数(例えば、VLOOKUP関数)で目的の検索対象が見つからなかった場合に発生するエラーです。

「#N/A」に限らず、セルの値がエラーかどうか判定する場合は「ISERROR関数」か「ISERR関数」を使います。

ISNA関数の基本的な使い方

対応バージョン:Excel365 2019 2016 2013 2010

ISNA関数の書式です。

=ISNA(テストの対象)
※カッコ内の「テストの対象」を引数といいます。

引数の説明

  • 〔テストの対象〕:エラーになっているかを調べるセルを指定。数式や関数も指定可能

ISNA関数の使用例

下記のサンプルは、商品コード・商品名・単価を保存してある商品一覧から、商品コードをキーにVLOOKUP関数で商品名と単価を検索しています。

ISNA関数でエラーを調べる

=VLOOKUP(A2,A5:C10,2)

サンプルは、4行目からの商品一覧から商品コードを検索キーワードにして、「VLOOKUP関数」で商品名と単価を検索していますが、商品一覧に存在しない商品コードを入力したためエラー(#N/A)となったという例です。

このままでは、見た目が良くないので「ISNA関数」を使ってエラー処理をします。

ISNA関数は、「#N/A」となったかどうかを判定し、「#N/A」なら「TRUE」を返す関数なので、その戻り値を使い、予め検索結果がエラーになると分かる場合は何らかの処理を行い、エラーでなければ通常の処理を行うよう制御します。

この処理をする場合、「IF関数」と「ISNA関数」を組合せて使用します。

IF関数とISNA関数でエラーを制御する

=IF(ISNA(VLOOKUP(A2,A5:C10,2)),”該当なし”,VLOOKUP(A2,A5:C10,2))

関数の説明

  1. ISNA関数の引数に計算式「VLOOKUP(A2,A5:C10,2)」を指定
  2. IF関数でISNA関数の戻り値を評価し、TRUE(真の場合)は「該当なし」を表示。FALSE(偽の場合)は、再度「VLOOKUP関数」を実行

このように、IF関数と組合せてエラーのときは任意の文字列を表示する、もしくは空白を表示するというような処理を追加するだけで、見た目にも分かりやすいものになります。

ISNA関数と同じ分類の関数

ISNA関数と同じ系列の関数は以下のページで探せます。

Excel関数カテゴリの最新記事