Excel Formulas Academy · レッスン

ISERRORで問題を検出する

処理する前に、セルにエラーが含まれているか確認します。

レッスン 4/413 ステップ

「ISERRORで問題を検出する」はCoddyKit上の無料Excel Formulas Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはExcel Formulas Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Excel Formulas Academyコースには全4レッスンが含まれています。

エラーを検査する

エラーを置き換えるのではなく、エラーが存在するかどうかを確認してから、処理を決めたい場合があります。

ISERROR関数は、まさにそのための関数です。セルまたは数式を調べ、結果がエラーならTRUEを、問題がなければFALSEを返します。

これにより、独自のエラー処理を構築したり、エラーを数えたり、問題のある行に印を付けたりできます。このレッスンでは、ISERRORとその関連関数を学びます。

ISERRORの構文

ISERRORは、検査対象の値または数式という1つの引数を受け取ります。

=ISERROR(value)

値が何らかのエラーの場合は論理値TRUEを返し、それ以外の場合はFALSEを返します。エラーそのものを表示することはなく、常にTRUEまたはFALSEだけを返します。

単独では、これは単なる情報です。本当の力を発揮するのは、IFと組み合わせたときです。

=ISERROR(A2/B2)

IFと組み合わせたISERROR

ISERRORをIFと組み合わせると、完全に独自のエラー処理を構築できます。IFでエラーを確認し、それぞれの場合に表示する内容を選択します。

ここでは、割り算でエラーが発生した場合、数式は"Check data"を返します。エラーがなければ、実際の計算結果を返します。これはIFERRORを手動で実現する方法ですが、2つの分岐を自由に制御できます。

基本形は=IF(ISERROR(formula), do_this, else_show_formula)です。

=IF(ISERROR(A2/B2), "Check data", A2/B2)

IS系のエラー関数

ISERRORには、特定のエラーを検査する関連関数があります。

  • ISERRは、#N/A以外のエラーでTRUEになります。
  • ISNAは、#N/Aエラーの場合だけTRUEになります。
  • ISERRORは、#N/Aを含むすべてのエラーでTRUEになります。

適切な関数を選ぶことで、IFERRORとIFNAの違いと同じように、必要な状況に正確に対応できます。

ISNAを特定の用途で使う

検索に一致しない場合だけを扱いたいときは、ISNAが正確な検査方法です。#N/Aの場合だけTRUEを返します。

これにより、古いスプレッドシートでIFNAと同じ動作を実現できます。また、検索に一致しない場合に別の列へ書き込むなど、独自の処理を実行することもできます。

ここでは、その顧客が見つかったかどうかを数式で判定しています。

=IF(ISNA(VLOOKUP(A2,Data!A:B,2,FALSE)), "New customer", "Existing")

範囲内のエラーを数える

ISERRORは監査にも役立ちます。列内でエラーを含むセルの数を数えるには、SUMPRODUCTと組み合わせます。

ISERRORはTRUEまたはFALSEを返すため、二重否定の--によってそれらを1と0に変換し、SUMPRODUCTで合計できます。

結果からエラーのあるセル数がわかるため、大規模なデータセットの状態をすばやく確認できます。

=SUMPRODUCT(--ISERROR(C2:C100))

問題のある行に印を付ける

ISERRORを使って、データの横にわかりやすい警告列を追加できます。各行で自身の計算結果を確認し、問題があれば印を表示します。

ここでは、合計の計算でエラーが発生した行に警告記号を表示し、問題のない行は空白のままにします。印の列を確認するだけで、問題のある箇所をすぐに見つけられます。

これは、散在する#DIV/0!コードを目視で探し回るより、はるかにわかりやすい方法です。

=IF(ISERROR(D2), "!", "")

ISERRORとIFERRORの違い

両者の関係を確認しておきましょう。

  • IFERROR(x, y)は、xを1回実行し、エラーが発生した場合はyを返す簡略形です。
  • IF(ISERROR(x), y, x)も同じ処理を行いますが、xを2回評価するため、複雑な数式では遅くなることがあります。

そのため、単純な置き換えには通常IFERRORのほうが適しています。置き換えではなく検査が必要な場合や、値を置き換える以外の処理を行いたい場合にISERRORを使用します。

ISERRORを使った条件付き書式

ISERRORは条件付き書式にも利用できます。数式がエラーを返すセルを強調表示するルールを作成できます。

ルールの数式に=ISERROR(A1)を設定して範囲全体に適用し、一致するセルを赤色にします。

これで、エラーが発生した瞬間に視覚的に目立つようになります。セルの値自体を変更しない、すっきりした非破壊的な監視方法です。

=ISERROR(A1)

エラーをログに振り分ける

ISERRORはTRUEまたはFALSEを返すため、問題のある値を役立つ場所へ振り分けることができます。IFと組み合わせて、失敗したキーだけを確認用の列にコピーします。

ここでは、キーの検索でエラーが発生した場合は、そのキー自体をセルに書き込みます。それ以外の場合はセルを空白のままにします。

その列をフィルタリングすれば、修正が必要なすべてのキーの一覧をすぐに作成できます。エラー処理を具体的な対応計画に変えられます。

=IF(ISERROR(VLOOKUP(A2,Data!A:B,2,FALSE)), A2, "")

適切な関数を選ぶ

エラー処理に使える関数をまとめると、次のとおりです。

  • IFERRORは、任意のエラーを代替値に置き換えます。
  • IFNAは、検索で発生した#N/Aだけを置き換えます。
  • ISERROR / ISNA / ISERRは、独自の処理や集計、書式設定に使うためにエラーを検査します。

表示をきれいに整えたいだけなら置き換え関数を使い、エラーに基づいて判断や計測を行いたい場合はIS系の関数を使います。

確認テスト

エラーを検査する関数の理解度を確認します。

まとめ: ISERROR

エラー処理に必要な関数を一通り学びました。

  • =ISERROR(value)は、エラーの場合はTRUEを、それ以外の場合はFALSEを返します。
  • ISNAは#N/Aだけを検査し、ISERRは#N/A以外のすべてのエラーを検査します。
  • IFと組み合わせて独自の処理を行ったり、SUMPRODUCTと組み合わせてエラーを数えたり、条件付き書式と組み合わせてエラーを強調表示したりできます。
  • 単純に置き換える場合はIFERRORまたはIFNAを使い、検査して判断する場合はIS系の関数を使います。

これで、スプレッドシートをきれいで正確な、プロフェッショナルな状態に保てるようになりました。

無料で開始

AI チューターと学ぶ Excel — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
30
レッスン
120

よくある質問

「ISERRORで問題を検出する」レッスンは無料ですか?

はい。「ISERRORで問題を検出する」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Excel Formulas Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Excel Formulas Academyコースには全4レッスンが含まれています。

「ISERRORで問題を検出する」で何を学びますか?

処理する前に、セルにエラーが含まれているか確認します。 ブラウザで直接実行するハンズオンコードでExcel Formulas Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Excel Formulas Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのExcel Formulas Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「ISERRORで問題を検出する」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このExcel Formulas Academyレッスンでコードを書いて実行できますか?

はい。すべてのExcel Formulas Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. エラーの種類を理解する
  2. IFERRORでエラーを捕捉する
  3. IFNAで検索エラーに対応する
  4. ISERRORで問題を検出する
← Excel Formulas Academyに戻る