「このセル、空っぽかどうか判定したい」
「数字が入っているときだけ計算したい」
「エラーが出たら空欄にしたい」

こうした「セルの中身を調べる」ときに使うのが情報関数です。ISNUMBER、ISTEXT、ISBLANK——名前が「IS〜」で始まるものが多いため、IS関数とも呼ばれます。

単体ではあまり役に立ちませんが、IF関数と組み合わせた瞬間に強力になります。入力ミスのチェックやエラー回避が、驚くほど簡単に書けるようになります。

この記事では、よく使う情報関数を早見表でまとめ、実務での使い方を解説します。

まず結論:やりたいこと → 使う関数 早見表

やりたいこと 使う関数 戻り値
数値かどうかを調べたい ISNUMBER TRUE / FALSE
文字列かどうかを調べたい ISTEXT TRUE / FALSE
空欄かどうかを調べたい ISBLANK TRUE / FALSE
文字列以外かどうか ISNONTEXT TRUE / FALSE
エラーかどうか(#N/Aを含む) ISERROR TRUE / FALSE
エラーかどうか(#N/Aは除く) ISERR TRUE / FALSE
#N/Aかどうかを調べたい ISNA TRUE / FALSE
エラーなら別の値を返したい IFERROR 指定した値
#N/Aのときだけ別の値を返したい IFNA 指定した値
偶数かどうか ISEVEN TRUE / FALSE
奇数かどうか ISODD TRUE / FALSE
TRUE/FALSEかどうか ISLOGICAL TRUE / FALSE
数式が入っているか ISFORMULA TRUE / FALSE
データの種類を番号で知りたい TYPE 1・2・4・16など
IS系関数はすべて「TRUE」か「FALSE」を返します。
そのため単体で使うことはほとんどありません。IF関数の第1引数(条件)に入れて、「〇〇だったらAを、そうでなければBを」という形で使うのが基本です。

基本の3つ:ISNUMBER・ISTEXT・ISBLANK

実務で使う頻度が圧倒的に高いのがこの3つです。

ISNUMBER — 数値かどうか

=ISNUMBER(A1)
A1の値 結果
100 TRUE
あいうえお FALSE
(空欄) FALSE
2026/8/13(日付) TRUE

日付はTRUEになります。Excelの内部では日付を数値(シリアル値)として扱っているためです。ここは覚えておくと混乱しません。

ISTEXT — 文字列かどうか

=ISTEXT(A1)

ISNUMBERの逆と考えて構いませんが、空欄はどちらもFALSEになる点に注意してください。「数値でない=文字列」ではありません。

ISBLANK — 空欄かどうか

=ISBLANK(A1)
ここが最大の落とし穴です。
ISBLANKが TRUE になるのは「本当に何も入っていないセル」だけです。
数式の結果が空文字(””)の場合は FALSE になります。見た目は空欄でも、数式が入っていれば「空ではない」と判定されます。

見た目の空欄を判定したいなら、こちらを使ってください:

=IF(A1="", "空欄", "入力あり")

IF関数と組み合わせる — ここからが本番

入力チェックを作る

「数値以外が入力されたら警告を出す」という仕組みが、1行で書けます。

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

入力フォームや申請書のテンプレートを作るときに便利です。

空欄なら計算しない

空欄のまま計算すると、0が並んだり、エラーが出たりします。これを防ぎます。

=IF(A1="", "", A1*1.1)

A1が空欄なら何も表示せず、値が入っていれば税込計算をします。見た目がすっきりするので、実務では多用します。

偶数・奇数で行の色を変える

ISEVEN・ISODDは、条件付き書式と組み合わせると力を発揮します。

=ISEVEN(ROW())

これを条件付き書式のルールに入れれば、偶数行だけ色を塗ることができます。長い表を見やすくする定番のテクニックです。

エラー対策:IFERROR が最も実用的

情報関数の中で、もっとも使用頻度が高いのがIFERRORです。

昔の書き方と今の書き方

以前はISERRORとIFを組み合わせる必要がありました。

=IF(ISERROR(VLOOKUP(...)), "", VLOOKUP(...))

同じ数式を2回書く必要があり、長くて読みにくいものでした。いまはIFERRORで1回で済みます。

=IFERROR(VLOOKUP(...), "")

特別な理由がなければIFERRORを使ってください。数式が短くなり、計算も速くなります。

ISERROR・ISERR・ISNA の違い

関数 TRUEになるエラー
ISERROR すべてのエラー(#N/A も含む)
ISERR #N/A 以外のエラー
ISNA #N/A だけ

使い分けの考え方はこうです。

  • #N/A(見つからない)は想定内、それ以外は本当の異常——という場面では ISNA / IFNA を使う
  • とにかくエラーを隠したいだけなら IFERROR
IFERRORを使いすぎない
IFERRORは便利ですが、本当の計算ミスまで隠してしまいます
「参照先がずれている」「桁が違う」といった問題がエラーとして出てくれれば気づけたのに、空欄になって見えなくなる——これは実務でよくある事故です。
VLOOKUPの「見つからない」だけを隠したいなら、IFNAのほうが安全です。

TYPE関数 — 種類を数字で返す

IS系がTRUE/FALSEを返すのに対し、TYPE関数データの種類を番号で返します。

戻り値 意味
1 数値
2 文字列
4 論理値(TRUE/FALSE)
16 エラー値
64 配列

使う場面は限られますが、「なぜか計算できない」原因を調べるときに役立ちます。数値に見えるのにTYPEが2を返すなら、それは文字列として入力された数字です。

よくあるつまずき

「数値なのにISNUMBERがFALSEになる」

文字列として入力された数字です。他システムからコピーしたデータでよく起こります。

見分け方:セルを選ぶと左寄せになっている(数値なら右寄せ)。
直し方:「区切り位置」を実行するか、=VALUE(A1) で数値に変換します。

「空欄のはずなのにISBLANKがFALSE」

前述のとおり、数式が返した空文字(””)はISBLANKでは空欄と判定されません=A1="" で判定してください。

また、スペースが1つ入っているケースもあります。見た目では分からないので、=LEN(A1) で文字数を確認すると判別できます。

「IF(ISBLANK(…))が長くて読みにくい」

多くの場合、IS関数を使わずに書けます。

=IF(A1="", "未入力", "入力済")

IS関数は「それでしか書けないとき」に使う——そう考えると数式がすっきりします。

よくある質問(FAQ)

ISNUMBERとTYPE、どちらを使うべき?

判定して分岐したいだけならISNUMBERで十分です。TYPEは「何が入っているのか調べたい」という調査目的で使います。

Googleスプレッドシートでも同じように使える?

使えます。ISNUMBER・ISTEXT・ISBLANK・IFERROR・IFNAなど、主要な情報関数はほぼ同じ書き方で動きます。詳しくはExcelとGoogleスプレッドシートの違いをご覧ください。

エラーを非表示にするだけなら条件付き書式でもいい?

文字色を白にして見えなくする方法もありますが、値としてはエラーのままです。合計などの計算に影響するので、IFERRORで値を置き換えるほうが確実です。

IS関数は入れ子にできる?

できます。=IF(AND(ISNUMBER(A1), A1>0), "OK", "NG") のように、ANDやORと組み合わせて複雑な条件も作れます。

まとめ

  • 情報関数はセルの中身を調べる関数。IS系はすべてTRUE / FALSEを返す
  • 単体では使わない。IF関数と組み合わせて初めて役に立つ
  • よく使うのはISNUMBER・ISTEXT・ISBLANKの3つ
  • 日付はISNUMBERでTRUEになる(内部的に数値のため)
  • ISBLANKは「本当に空のセル」だけTRUE。数式が返した空文字はFALSE。見た目の空欄は =A1="" で判定する
  • エラー対策はIFERRORが最も実用的。ただし本当のミスまで隠してしまうので、#N/Aだけ隠すならIFNAを使う
  • 「数値なのに計算できない」ときは文字列として入力された数字を疑う(左寄せになっていないか確認)

関連記事:Excel財務関数まとめExcelの数学・三角関数まとめ