Excelでは数値だけでなく、文字列や日付、エラー値などさまざまなデータを扱います。その中で「セルの内容が数値かどうか」を判定したい場面は多くあります。例えば「計算対象は数値だけにしたい」「文字列が入力されたときは別の処理をしたい」といったケースです。そんなときに役立つのが ISNUMBER関数 です。本記事では、ISNUMBER関数の基本から使用例、注意点までを解説します。
ISNUMBER関数とは?
ISNUMBER関数は、指定したセルや値が「数値」であるかどうかを調べ、TRUE または FALSE を返す関数です。
- 数値(整数、小数、負数、日付や時刻のシリアル値を含む) →
TRUE
- 数値以外(文字列、空白、エラー、論理値) →
FALSE
書式
=ISNUMBER(値)
- 値:判定対象となるセル参照や値を指定します。
使用例
- 数値を判定
=ISNUMBER(100)
→ 結果:TRUE - 文字列を判定
=ISNUMBER("ABC")
→ 結果:FALSE - セル参照を判定
=ISNUMBER(A1)
→ A1が数値ならTRUE、文字列ならFALSE - 日付を判定
=ISNUMBER(DATE(2025,1,1))
→ 結果:TRUE(Excelの日付は内部的に数値で管理されているため) - 検索結果が数値かを確認
=ISNUMBER(SEARCH("山田", A1))
→ A1セル内に「山田」が含まれていればTRUE(SEARCHは位置を数値で返すため)
活用例
- 入力チェック
=IF(ISNUMBER(A1), "数値です", "数値ではありません")
→ A1が数値なら「数値です」、そうでなければ「数値ではありません」と表示 - 検索関数と組み合わせ
SEARCH
やFIND
関数と併用し、特定の文字列がセルに含まれているかどうかを判定できます。 - 数値のみ計算対象にする
入力が数値のときだけ計算を実行する処理を作成できます。
注意点
- 日付や時刻も数値として判定される
Excelの日付はシリアル値、時刻は1日の小数で管理されているため、ISNUMBERはTRUEを返します。 - 空文字はFALSE
数式で""
が返された場合は文字列として扱われ、FALSEになります。 - TRUE/FALSEは数値でない
論理値は数値ではないため、ISNUMBERはFALSEを返します。
関連関数
- ISTEXT関数:文字列かどうかを判定
- ISNONTEXT関数:文字列以外かどうかを判定
- ISBLANK関数:空白セルかどうかを判定
- ISERROR関数:エラーかどうかを判定
- TYPE関数:セルのデータ型を数値コードで返す
まとめ
ISNUMBER関数は、セルの内容が数値かどうかを判定するための関数です。
- 書式:
=ISNUMBER(値)
- 数値や日付 → TRUE
- 文字列、空白、エラー、論理値 → FALSE
- 入力チェックや文字列検索との組み合わせに便利