ExcelのISNUMBER関数は、指定したセルの値が数値かどうかを判定する関数です。単独で使うだけでなく、SEARCH関数やFIND関数と組み合わせて「特定の文字列を含むか」を判定する使い方がとても便利で、実務で多用されます。

この記事では、ISNUMBER関数の基本の使い方から、文字列を含むかの判定、IF関数や条件付き書式との組み合わせ、他のIS関数との違い、よくある注意点まで、具体例つきでわかりやすく解説します。Googleスプレッドシートでも同じように使えます。

ISNUMBER関数とは?(読み方・できること)

ISNUMBER関数(読み方:イズナンバー)は、指定したセルや数式の値が数値であれば TRUE、数値でなければ FALSE を返す関数です。「IS(〜である)+ NUMBER(数値)」で、文字どおり「数値かどうか」を調べます。

データの種類を確認したり、数値かどうかで処理を分けたいときに役立ちます。

ISNUMBER関数の構文と引数

=ISNUMBER(値)

引数 説明

(必須)
数値かどうかを判定したいセル、または数式を指定します。

結果は必ず TRUE または FALSE のどちらかになります。エラーにはならず、数値以外なら静かに FALSE を返すのが特徴です。

ISNUMBER関数の判定例

どんな値が TRUE / FALSE になるのか、代表的な例を確認しましょう。日付や時刻もExcel内部では数値(シリアル値)として扱われるため TRUE になる点に注意してください。

セルの内容 数式 結果
123 =ISNUMBER(A1) TRUE
-5.8 =ISNUMBER(A2) TRUE
2026/6/14(日付) =ISNUMBER(A3) TRUE(シリアル値のため)
ABC(文字列) =ISNUMBER(A4) FALSE
“123”(文字列の数字) =ISNUMBER(A5) FALSE
空白セル =ISNUMBER(A6) FALSE

「見た目は数字でも、文字列として入力された値は FALSE になる」ため、データの不備チェックにも使えます。

IF関数と組み合わせて処理を分ける

ISNUMBER関数は単独だと TRUE / FALSE を返すだけですが、IF関数と組み合わせると、数値かどうかで表示や計算を切り替えられます。

=IF(ISNUMBER(A2), A2*2, "数値以外")

セルA2が数値ならその値を2倍にし、数値でなければ「数値以外」と表示します。入力チェックにも応用できます。

=IF(ISNUMBER(A1), "入力済み", "数値を入力してください")

【重要】ISNUMBER+SEARCHで「特定の文字列を含むか」判定する

ISNUMBER関数のもっとも実用的な使い方が、SEARCH関数と組み合わせて「セルに特定の文字(キーワード)が含まれているか」を判定する方法です。

=ISNUMBER(SEARCH("東京", A1))

仕組みはこうです。SEARCH関数は文字列が見つかると「その位置(数値)」を返し、見つからないと #VALUE! エラーを返します。これをISNUMBERで包むと、含む→TRUE/含まない→FALSE に変換できます。

セルA1の内容 =ISNUMBER(SEARCH(“東京”, A1))
東京都新宿区 TRUE(「東京」を含む)
大阪府大阪市 FALSE(含まない)

IF関数と組み合わせれば、「含む場合だけ印をつける」といった処理ができます。

=IF(ISNUMBER(SEARCH("東京", A1)), "対象", "")

大文字・小文字を区別したいときはFINDを使う

SEARCHは大文字・小文字を区別しませんが、FIND関数に置き換えると区別して判定できます。

=ISNUMBER(FIND("Apple", A1)) … 「Apple」と完全に一致する大文字小文字のみTRUE

条件付き書式で「特定の文字を含む行」に色を付ける

この組み合わせは条件付き書式とも相性抜群です。ルールに数式 =ISNUMBER(SEARCH("キーワード", $A1)) を設定すると、特定の文字を含むセルや行を自動で色分けできます。大量のデータから該当データを一目で見つけられるようになります。

検索関数(VLOOKUP・MATCH)との組み合わせ

VLOOKUPやMATCHの結果をISNUMBERで包むと、「検索値が見つかったか」を TRUE / FALSE で確認できます。

=ISNUMBER(MATCH(A1, B1:B10, 0)) … A1がリストB1:B10に存在すればTRUE

他のIS関数との違い

Excelには値の種類を調べるIS関数がいくつかあります。目的に応じて使い分けましょう。

関数 TRUEになる条件
ISNUMBER 値が数値(日付・時刻も含む)のとき
ISTEXT 値が文字列のとき
ISBLANK セルが空白のとき
ISERROR 値がエラー(#VALUE! など)のとき

GoogleスプレッドシートでもISNUMBERは使える

ISNUMBER関数はExcel専用ではなく、Googleスプレッドシートでも同じ書き方で使えます。=ISNUMBER(SEARCH("文字", A1)) による「含むか判定」もそのまま利用できます。

よくある注意点

  • 日付・時刻はTRUEになる … 内部的に数値(シリアル値)のため。日付だけを除きたい場合は別途判定が必要です。
  • 文字列の数字(”123″)はFALSE … 見た目が数字でも、文字列として入力された値は数値とみなされません。
  • ISNUMBER自体はエラーを出さない … 数値以外やエラー値を渡しても、エラーにはならず FALSE を返します。

よくある質問(FAQ)

Q. セルが特定の文字を含むか調べるには?

A. =ISNUMBER(SEARCH("調べたい文字", 対象セル)) を使います。含めばTRUE、含まなければFALSEになります。

Q. ISNUMBERとISTEXTの違いは?

A. ISNUMBERは「数値かどうか」、ISTEXTは「文字列かどうか」を判定します。逆の関係と考えるとわかりやすいです。

Q. 日付を数値と判定したくない場合は?

A. 日付もISNUMBERではTRUEになります。日付を区別したい場合はISNUMBERだけでなく、セルの表示形式やほかの関数と組み合わせて判定します。

関連する関数

  • SEARCH関数 … 文字列の位置を調べる。ISNUMBERと組み合わせて「含むか判定」。
  • FIND関数 … 大文字・小文字を区別して文字列を検索。
  • ISTEXT関数 … 値が文字列かどうかを判定。
  • ISBLANK関数 … セルが空白かどうかを判定。
  • IF関数 … 判定結果で処理を分ける。

まとめ

ExcelのISNUMBER関数は、=ISNUMBER(値) で値が数値かどうかを TRUE / FALSE で判定する関数です。

  • 数値なら TRUE、文字列・空白なら FALSE(日付・時刻もTRUEになる点に注意)
  • =ISNUMBER(SEARCH(“文字”, セル)) で「特定の文字を含むか」判定できる(最重要の使い方)
  • 大文字小文字を区別するならFINDを使う
  • IF関数・条件付き書式・検索関数と組み合わせて幅広く応用できる
  • Googleスプレッドシートでも同じ数式で使える

ISNUMBER関数を活用して、データ検証や文字列の判定を効率化しましょう。

ABOUT ME
IT解決チャンネル編集部
ExcelやWord、Windows、Googleスプレッドシートなど、ビジネスで使うITツールの使い方を初心者にもわかりやすく解説しています。関数の使い方から実務で役立つ応用テクニックまで、画像付きでていねいに紹介。パソコン操作で困ったときの頼れる情報源を目指しています。