【Excel】ISBLANKで空白セルを判定する方法 | 空文字・スペースとの違い

【Excel】ISBLANKで空白セルを判定する方法 | 空文字・スペースとの違い
🛡️ 超解決

セルに何も入力されていないかを調べるには、=ISBLANK(A2)を使います。A2が空のセルならTRUE、文字・数値・数式などがあればFALSEです。入力フォームの未入力欄を探したり、入力前の計算を保留したりするときに役立ちます。

注意したいのは、画面で白く見えるセルがすべて空のセルとは限らないことです。数式の結果が""になっているセルや、スペースが入ったセルはISBLANKではFALSEです。ここでは「何も入力されていない」と「結果が空文字」を区別し、入力漏れの調べ方を整理します。

ADVERTISEMENT

1. ISBLANKは空のセルをTRUEにする

書き方は=ISBLANK(対象セル)です。対象セルに値や数式がない状態を調べる関数で、セルの文字色や背景色を調べるものではありません。未使用のセルでも、入力内容を削除して空になったセルでも、空ならTRUEになります。罫線や塗りつぶしを設定しただけのセルも、値がなければ空として判定できます。

例えばA2に氏名を入力する表で、B2へ=ISBLANK(A2)を入れると、入力前はTRUE、佐藤と入力したあとはFALSEになります。0も値なのでFALSEです。空欄を0で埋めてある表では、ISBLANKだけで未入力を探すことはできません。

最初は作業用のシートで、空欄、0、半角スペース、=""という数式を別々のセルに用意すると違いを確認できます。見た目が同じかどうかではなく、何を保存しているかに着目してください。空欄以外をすべて「正しく入力済み」と扱うと、スペースだけの入力も通ってしまいます。

※ お探しの解決策が見つからない場合は、こちらの「Excelトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

2. IFと組み合わせて未入力を知らせる

A列に氏名を入力し、B列に入力状況を出す例では、B2に=IF(ISBLANK(A2),"未入力","入力あり")と入力します。空なら未入力、何か入っていれば入力ありになります。「完了」と表示するより、調べている範囲が伝わる表現です。氏名の正しさや必要項目すべての入力まで確認したことにはなりません。

  1. A2を入力欄、B2を判定欄として用意します。
  2. B2に上の式を入れてEnterで確定します。
  3. A2へ文字を入力し、入力ありへ変わることを確認します。
  4. A2の内容をDeleteで消し、未入力に戻ることを確かめます。
  5. B2を下へコピーし、各行がその行のA列を参照していることを確認します。

ここからは別の表で、数量と単価を掛ける例です。A2に数量、B2に単価を入れ、結果を表示するC2へ=IF(ISBLANK(A2),"",A2*B2)を入力します。数量が未入力なら計算を保留できます。ただし、A2へ数字以外を入力すれば計算に失敗することがあります。数値入力の確認にはISNUMBERなどを別に使い、ISBLANKをすべての計算エラーを防ぐ機能と考えないようにします。

例えば数量A2と単価B2の両方が数値のときだけ計算するなら、=IF(AND(ISNUMBER(A2),ISNUMBER(B2)),A2*B2,"")です。0を許すか、負数を許すかはさらに別の条件です。表の用途に合った判定を足してください。

3. 空文字も対象にするならA2=””を使う

別の数式が空文字を返す列では、ISBLANKではなく=A2=""を使うほうが目的に合う場合があります。これは空のセルに加え、数式の結果が長さ0の文字列になっている場合もTRUEにします。

A2の内容 ISBLANK(A2) A2=””
何も入力していない TRUE TRUE
数式="" FALSE TRUE
半角スペース1個 FALSE FALSE
数値の0 FALSE FALSE
文字の佐藤 FALSE FALSE

入力結果の確認に空文字も含めるなら、=IF(A2="","未入力","入力あり")と書けます。ただし、白い文字や表示形式で隠した0まで検出するわけではありません。「見た目が空白なら何でもTRUE」ではなく、空セルまたは空文字に反応する条件です。

A2自体がエラーの場合は、A2=""にもエラーが伝わります。エラーを一律に未入力へ置き換えると、壊れた参照に気づけなくなるので、元の式を先に調べましょう。空文字を返す式は意図した表示制御であり、それだけで不要なデータや不正なデータと判断する必要はありません。

空セル、空文字を返す数式、スペース、0、氏名を入力した5行について、ISBLANKと空文字比較のTRUE/FALSEを並べた表。数式の空文字の行だけ判定が異なる。
同じ空白に見えても、空セルと数式が返す空文字ではISBLANKの結果が異なります。

4. 空に見えるのにFALSEになる原因を調べる

まず対象セルを選び、数式バーを見ます。式が入っていればISBLANKがFALSEになるのは正常です。数式バーに何も見えないときは、空きセルで=LEN(A2)を試すと、文字数の確認に役立ちます。半角スペース1個なら1、空文字なら0です。

半角スペースだけを空文字として扱いたいなら、判定に=LEN(TRIM(A2))=0を使う方法があります。ただしTRIMが主に取り除くのは通常の半角スペースです。全角スペースやWebからコピーした改行しないスペースなどを、すべて消せるわけではありません。CLEANも全種類の見えない文字に対応する機能ではありません。

名前に含まれる区切りのスペースや、住所の改行まで機械的に消すと、必要な情報が変わります。元列を残して補助列で試し、どの文字を除くかを決めてから適用してください。F2でのカーソルの位置だけを根拠に、スペースがあると断定するのも避けます。

また、TRIMやCLEANを使った結果が空文字でも、その結果を返す数式がセルに残っている限り、ISBLANKはFALSEです。本当に空の入力欄へ戻す必要があるときは、元データを確認したうえで対象セルの内容を削除します。計算列をまとめて消さないよう、入力列と区別して操作します。

5. 複数の必須項目を調べる式

氏名A2と住所B2の両方を確認するとします。実際に空のセルが一つでもあるかなら、=IF(OR(ISBLANK(A2),ISBLANK(B2)),"未入力あり","入力あり")と書けます。空文字も未入力に含めるなら、=IF(COUNTBLANK(A2:B2)>0,"未入力あり","入力あり")にします。

COUNTBLANKは空のセルに加え、数式が返す空文字も数えます。一方、COUNTAは空文字を返す数式があるセルも数えます。したがって=COUNTA(A2:B2)が2でも、氏名と住所が実際に表示されているとは限りません。

例えばA2が佐藤、B2が=""なら、COUNTAは2、COUNTBLANKは1です。この場合に「2個あるから入力完了」と判定すると、住所の欠落を見落とします。スペースだけのセルはCOUNTBLANKでも数えないので、空欄検査と内容検査を分けて設計することが大切です。

数式をコピーしたあとには、片方だけ未入力、両方未入力、両方入力済みの3行を確かめます。さらに空文字・スペース・0が混ざる可能性がある表では、そのケースも確認してください。不要になった判定列を削除するときは、その列を条件付き書式や別の計算が参照していないかも見直します。

6. 空欄の定義を決めてから運用する

手入力欄に何も入っていないかならISBLANK、数式が返す空文字まで含めたいなら=""やCOUNTBLANKが基本です。入力内容の妥当性、エラー、スペースだけのデータは、それぞれ別の確認項目になります。

対象セルを削除した直後に間違いへ気づいたら、Ctrl + Zで戻します。大量のセルを整える前には元のシートを残し、判定結果だけを見て一括削除しないようにしてください。判定欄には「入力あり」「要確認」など、実際に調べている内容に合った名前を付けると、引継ぎ先も結果を正しく読めます。

公式資料: IS関数、COUNTBLANK、COUNTA。

📊
Excelトラブル完全解決データベースこの記事以外にも、様々なエラー解決策をまとめています。困った時の逆引きに活用してください。
この記事の監修者
📈

超解決 Excel・Word研究班

企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。

🏆
超解決 Excel検定 あなたのExcel実務能力を3分で測定!【1級・2級・3級】