Excelの「IFNA関数」は、VLOOKUPやMATCHなどの検索で「#N/A(該当なし)」エラーが出たときだけを処理できる便利な関数です。一方、「IF関数」は条件によって処理を分ける関数として表作成・報告資料で必須の関数です。
実務では「特定の条件を満たした場合に検索し、該当がなければ任意の値を返す」など 条件分岐と検索結果のエラー処理を同時に行う場面 が多くあります。
この記事では「IFNA IF 組み合わせ」の検索意図に応え、
✅ IFNAとIF関数の基本と違い
✅ 組み合わせるメリット
✅ 構文と実践例
✅ よくあるミスと注意点
✅ 実務で役立つ応用事例
を初心者にもわかりやすく徹底解説します。
目次
- ✅ IFNA関数とは?
- ✅ IF関数とは?
- ✅ IFNAとIF関数を組み合わせるメリット
- ✅ 【基本構文】IFNAとIF関数の組み合わせ
- ✅ IFNAとIF関数の具体的な使い方
- ・商品コード入力時のみVLOOKUP検索し、該当がなければ「未登録」、未入力なら空白
- ・売上が目標以上の場合のみ特典情報を検索し、該当がなければ「特典なし」
- ・複数条件(部門・月)を満たした場合のみ検索
- ✅ IFNA×IF×INDEX/MATCHで複数条件検索+エラー処理
- ・商品コード+取引先で単価を取得、該当がなければ「未登録」
- ■よくあるミスと注意点
- ・ IFNAで他のエラー(#DIV/0!など)は処理できない
- ・ IF関数で「=“#N/A”」と比較してしまう
- ・ 複雑な入れ子で管理が煩雑になる
- ■実務で使える活用シーン
- ■【まとめ】IFNA×IF関数はエラー処理×条件分岐の最適解
- ・今すぐ使えるサンプル構文
✅ IFNA関数とは?
◆ 概要
=IFNA(数式, #N/Aエラー時の代替値)
検索結果が見つからなかったときに出る「#N/A」エラーだけを処理し、代わりの値を返します。
◆ IFNAを使うメリット
✅ 「#N/A」だけを処理し、他のエラーは見つけられる
✅ 報告資料・帳票で見栄えを整える
✅ IFERRORより安全性が高い(IFERRORはすべてのエラーを処理するため誤りに気づきにくい)
【Excel】IFNA関数とは?VLOOKUPとの組み合わせで使い方を完全解説!
✅ IF関数とは?
◆ 概要
=IF(条件, 真の場合の値, 偽の場合の値)
条件に基づいて異なる処理を行う基本関数。
【Excel】IF関数で複数条件を指定する方法とは?AND・OR・IFSまで完全ガイド!
◆ IF関数を使うメリット
✅ データの分類(例:合格/不合格)
✅ 計算有無の制御(例:入力があれば計算、なければ空白)
✅ 報告書作成で条件別の表示を整える
【Excel】IF関数とは?使い方・複数条件・ネスト構造まで徹底解説!
✅ IFNAとIF関数を組み合わせるメリット
実務で次のような状況がよくあります。
✅ 特定の条件を満たす場合だけVLOOKUPで検索したい
✅ 該当がなければ「未登録」と表示したい
✅ 条件を満たさなければ空白を返す
IF関数で条件分岐を行い、IFNAで検索エラーを処理することで次のような効果があります:
✅ 計算ミス・エラーの影響を防ぐ
✅ 見栄えが整った表を作れる
✅ 取引先提出資料・印刷資料に使える綺麗な帳票作成が可能
✅ 【基本構文】IFNAとIF関数の組み合わせ
◆ 基本形:
=IF(条件, IFNA(検索式, "エラー時の表示"), "条件を満たさない場合の表示")
◆ 動作イメージ:
- 条件がTRUEの場合:
- 検索式を実行
- 検索結果が「#N/A」の場合 → エラー時の表示を返す
- 条件がFALSEの場合:
- 条件を満たさない場合の表示を返す
✅ IFNAとIF関数の具体的な使い方
・商品コード入力時のみVLOOKUP検索し、該当がなければ「未登録」、未入力なら空白
目的:
- 商品コードが入力された場合のみ単価を取得
- コードが存在しなければ「未登録」
- 入力がない場合は空白
数式:
=IF(A2="", "", IFNA(VLOOKUP(A2, 商品マスタ!A:B, 2, FALSE), "未登録"))
・売上が目標以上の場合のみ特典情報を検索し、該当がなければ「特典なし」
目的:
- 売上が10万円以上の場合のみ特典情報を検索
- 見つからなければ「特典なし」
- 条件を満たさなければ空白
数式:
=IF(B2>=100000, IFNA(VLOOKUP(A2, 特典表!A:B, 2, FALSE), "特典なし"), "")
・複数条件(部門・月)を満たした場合のみ検索
複数条件はIF関数のAND関数を使って制御できます。
=IF(AND(C2="営業", D2="4月"), IFNA(VLOOKUP(B2, 売上表!A:C, 3, FALSE), "データなし"), "")
✅ IFNA×IF×INDEX/MATCHで複数条件検索+エラー処理
複数条件検索はVLOOKUP単体ではできませんが、INDEX/MATCHを使えば対応可能です。
・商品コード+取引先で単価を取得、該当がなければ「未登録」
数式:
=IF(A2="", "", IFNA(INDEX(E:E, MATCH(1, (B:B=B2)*(C:C=C2), 0)), "未登録"))
※配列数式が必要な場合は【Ctrl + Shift + Enter】で確定
(Excel 365/2021では通常Enterで可)
■よくあるミスと注意点
・ IFNAで他のエラー(#DIV/0!など)は処理できない
IFNAは「#N/A」のみを対象とするため、除算エラーや参照エラーはそのまま表示されます。
✅ 他エラーも処理したい場合 → IFERROR
✅ 検索エラーだけ処理したい場合 → IFNA
・ IF関数で「=“#N/A”」と比較してしまう
誤り:
=IF(VLOOKUP(A2, 顧客表!A:B, 2, FALSE)="#N/A", "未登録", ...)
理由: #N/Aは文字列でなくエラー値であり、文字列比較できません。
✅ ISNA、IFNAを使用するのが正解。
・ 複雑な入れ子で管理が煩雑になる
IF・IFNA・INDEX/MATCHなどを組み合わせる場合は、
✅ コメント列で処理内容をメモする
✅ 名前定義を使って範囲を管理する
ことでトラブルを防止可能。
■実務で使える活用シーン
✅ 見積書作成:品番入力時のみ価格を自動取得し、なければ「未登録」と表示
✅ 請求書作成:金額入力時のみVLOOKUP検索し、コードミス時に「コード不明」と表示
✅ 名簿管理:ID入力時に名前を取得、未登録時は「未登録」
✅ 商品別特典確認:条件付きで特典取得、なければ「特典なし」と明記
✅ 複数条件検索:部門・商品コードで単価取得、データがなければ「該当なし」
■【まとめ】IFNA×IF関数はエラー処理×条件分岐の最適解
✅ IFNAは「#N/A」だけを安全に処理できる関数
✅ IF関数は条件分岐で表示・処理を制御可能
✅ 組み合わせることで「条件を満たす場合だけ検索し、該当がなければわかりやすい表示にする」ことができる
✅ Excel資料の見栄え改善・業務効率化に直結する強力な実務テクニック
・今すぐ使えるサンプル構文
| 目的 | 数式例 |
|---|---|
| 入力がある場合のみ検索 | =IF(A2="", "", IFNA(VLOOKUP(A2, 商品!A:B, 2, FALSE), "未登録")) |
| 条件を満たす場合のみ検索 | =IF(B2>=100000, IFNA(VLOOKUP(A2, 特典!A:B, 2, FALSE), "特典なし"), "") |
| 複数条件+検索+エラー処理 | =IF(AND(D2="営業", E2="4月"), IFNA(VLOOKUP(B2, 売上!A:C, 3, FALSE), "なし"), "") |
このテクニックを活用すれば、Excel業務の質と効率が大幅に向上し、見やすく伝わる資料作成が可能です。
ぜひ、明日からの業務に取り入れて「できるExcel担当者」を目指してください。