IFERRORとは?初心者がExcelで詰まらなくなる必須知識を完全解説

IFERRORとは?初心者がExcelで詰まらなくなる必須知識 Excel

IFERROR関数とは

IFERROR関数は、エラーが出たときだけ表示を切り替えるための関数です。

Excelでは、たった1件の想定外データがあるだけでエラーが表示されます。IFERRORを使うことで、表全体が壊れるのを防ぎ、実務で扱いやすいシートを作ることができます。

IFERROR関数を知らないと初心者が詰む理由

初心者がExcelでつまずく最大の原因は、「式が合っているのに突然エラーが出る」ことです。

MID関数やFIND関数などの文字操作では、

  • 空白セルがある
  • 想定と違う形式のデータが混じる
  • 探している文字が存在しない

といった理由で、簡単に #VALUE! などのエラーが発生します。

Excelは人間のように「今回は無視しよう」と判断してくれません。1件でも処理できないデータがあると、容赦なくエラーを表示します。

この仕様を知らないと、

  • Excelが壊れたと思う
  • 自分の操作が間違っていると感じる
  • 文字関数そのものが苦手になる

という状態に陥ってしまいます。

IFERROR関数の基本構文

=IFERROR(数式, エラー時の表示)
引数内容
数式通常時に実行したい計算や関数
エラー時の表示エラーが出た場合に表示する内容

IFERRORの基本例

例:FIND関数のエラーを防ぐ

=IFERROR(FIND("@", A2), "")

「@」が見つかる場合は位置を表示し、見つからない場合は空白になります。

MIDやFINDでIFERRORが必須な理由

文字操作関数は、実務では必ずと言っていいほど想定外のデータに遭遇します。

例えばメールアドレスの処理では、

  • 正しいメール形式
  • 空欄
  • メールでない文字列

が混在するのが普通です。

そのままMIDやFINDを使うと、エラーが発生して表全体が使い物にならなくなります。

そこで、IFERRORで数式全体を包むことで「失敗しても止まらない表」を作ることができます。

MID × FIND × IFERROR の王道パターン

例題:メールアドレスからドメインを抜き出す

以下のような表があるとします。B列にドメインを表示させたい場合を考えます。

ドメイン名だけ抽出

作成する数式

=IFERROR(MID(A1, FIND("@", A1)+1, 99), "")

使う関数の役割

  1. FIND("@", A1): “@” が左から何文字目にあるかを探します。
  2. MID(A1, 開始位置, 文字数): 指定した位置から文字を切り出します。
  3. IFERROR(数式, エラー時の値): “@” がなかった場合にエラー(#VALUE!)が出るのを防ぎます。

この形を覚えておくと、文字処理の実務でほぼ困りません。

👉FIND関数(文字の位置を調べる)

👉MID関数(途中の文字を取り出す)

数式の解説

1. FIND(“@”, A1) + 1

  • yamada@example.com の場合、”@” は7文字目です。
  • ドメインは “@” のから始まるので、+1 をして「8文字目から取り出す」という指示にします。

2. MID(A1, 8, 99)

  • 8文字目から、とりあえず多めの「99文字」分を切り出します(実際の文字数が99文字未満なら、最後まで取り出してくれます)。
  • これで example.com が抽出されます。

3. IFERROR(…, “”)

  • もしセルに “@” が含まれていない場合、FIND 関数がエラーを返します。
  • そのままでは見た目が悪いので、エラーの代わりに「空白」を表示させます。

応用編:特定の記号「[ ]」に囲まれた中身を出す

例えば [重要] 会議資料.pdf という文字列から 重要 だけを抜きたい場合はこうなります。

=IFERROR(MID(A1, FIND("[", A1) + 1, FIND("]", A1) - FIND("[", A1) - 1), "")
  • 開始位置: [ の次の文字
  • 文字数: ] の位置から [ の位置を引いて調整

👉特定の記号の中身だけ自動で抽出する方法

IFERRORは「エラーを隠す関数」ではない

初心者ほど「エラーを隠すのは良くない」と感じがちですが、実務では逆です。

  • データは常に完璧ではない
  • 入力ミスや欠損は必ず発生する
  • 表は止まらずに動くことが最優先

IFERRORは、想定外を想定するための実務必須関数です。

IF+ISNUMBERとの役割の違い

役割
ISNUMBER数値かどうかを判定する
IF条件によって処理を分ける
IFERRORエラーが出た場合の保険

実務でよく使う組み合わせ

=IFERROR(IF(ISNUMBER(FIND("@", A1)), LEFT(A1, FIND("@", A1)-1), ""), "")

この数式は、「もし@が含まれていたら、その左側を全部抜き出す。そうでなければ空白にする」という動きをします。

@が含まれているので左側を抽出

この数式では、

  1. FINDが成功するかをISNUMBERで判定
  • FIND(“@”, A2):”@” が何文字目にあるか探します(例:suzuki@... なら 7)。
  • ISNUMBER(…):FINDの結果が「数字」かどうか判定します。@があればTRUE(正)、なければエラーになります。

2. 条件に応じて処理を分岐

IF(ISNUMBER(…), LEFT(A2, FIND(…)-1), “”)

  • TRUEの場合: LEFT関数で、@の直前(7-1=6文字目)までを抜き出します。
  • FALSEの場合: 何もせず空白 "" を返します。

2. 最後にIFERRORで全体を保護

  • IFERROR(…, “”):万が一、想定外のエラーが起きても画面を汚さないための最終ガードです。

という流れになっています。

ISNUMBERで判断し、IFで分け、IFERRORで守る

IFERRORで解決できる関数たち

👉IF関数(条件で判定する)

👉LEFT関数(文字の先頭から取り出す)

👉よくあるトラブル「#N/A」エラーが出た!どうする?VLOOKUPIFERRORで包む方法

MIDとLEFTの違い・使い分け

MID を使った抽出と、今回の LEFT を使った抽出では、狙いが少し違います。

特徴(MID × FIND)(LEFT × FIND)
得意なこと特定の記号の「間」を抜く文字の「先頭」から特定位置まで抜く
主な用途ドメイン、カッコ内、住所の市区町村ユーザー名、氏名(苗字のみ)、商品ID
今回の強みシンプルに「右側」を指定ISNUMBER で「記号の有無」を厳格にチェック

さらにステップアップするなら

上の数式は非常に丁寧ですが、実はもっと短く書くこともできます。

=IFERROR(LEFT(A2, FIND("@", A2)-1), "")

これだけで、 MID と同じような挙動になります。あえて IF(ISNUMBER(...)) を入れているのは、「@がない場合にエラーを出すのではなく、明確に『””(空白)』を返したい」という設計思想があるからです。

初心者が覚えるべき正しい順番

  1. まず関数を書く
  2. 想定外のデータを考える
  3. 最後にIFERRORで包む

「エラーを止めない設計」を先に覚えることが重要です。

まとめ

IFERROR関数を知っているかどうかで、Excelの難易度は大きく変わります。

  • IFERRORを知らないと、初心者はExcelが怖くなる
  • IFERRORを知ると、失敗しても大丈夫な道具になる

文字関数を使うなら、IFERRORは必須です。MID・FIND・LEFTとセットで覚えることで、実務で通用するExcelスキルが身につきます。

ももねこ

運営者プロフィール

パソコンインストラクターの経験を生かして、シニアの方や初心者の方に、WordやExcelの「できた!」を届けるために活動しています。

ももねこをフォローする