Home / Microsoft / Excel / 【2026年最新版】ExcelのIFS関数が使えない・エラーになる原因と対処法【完全ガイド】

【2026年最新版】ExcelのIFS関数が使えない・エラーになる原因と対処法【完全ガイド】

※本ページにはプロモーション(広告)が含まれています

ExcelのIFS関数が使えない・エラーになるのはなぜ?

Excelで複数条件の分岐処理をしようとして「IFS関数を使ってみたら#NAME?エラーが出た」「IFS関数と入力しても自動補完されない」「同僚のPCでは動くのに自分のExcelでは動かない」といった経験はありませんか?

IFS関数はExcel 2019以降・Microsoft 365(旧Office 365)で使えるようになった比較的新しい関数です。そのため、古いバージョンのExcelでは使用できないという根本的な制約があります。また、バージョンが対応していても構文の誤りや引数の設定ミスでエラーになるケースも少なくありません。

この記事では、IFS関数が動かない・エラーになる原因をすべて洗い出し、それぞれの具体的な対処法を丁寧に解説します。IFS関数が使えない環境での代替方法(ネストIFやSWITCH関数)も紹介するので、どんな状況でも解決策が見つかる完全ガイドです。

この記事でわかること:

  • IFS関数とは何か・IFとの違い
  • IFS関数が使えるExcelバージョン
  • #NAME?エラー・#VALUE!エラーの原因と対処法
  • IFS関数が使えない場合の代替方法
  • IFS関数の正しい書き方と実践的な活用例
ExcelIFS関数使えない対処法 画像1

IFS関数とは?IF関数との違いを理解する

IFS関数の概要

IFS関数は、複数の条件を順番にチェックして、最初に満たした条件に対応する値を返す関数です。英語の “if(もし)〜 else if(そうでなく、もし)〜” という論理をそのままExcelで実現できます。

Microsoftが2016年にOffice 365(現Microsoft 365)に追加し、2019年にはExcel 2019にも搭載されました。それ以前のExcel(2016・2013・2010・2007など)では使用できません

IF関数とIFS関数の比較

従来のIF関数で3段階評価(80点以上=A、60点以上=B、60点未満=C)を行うには、次のようにIF関数を入れ子(ネスト)にする必要があります:

=IF(A1>=80,"A",IF(A1>=60,"B","C"))

IFS関数を使うと、これを次のようにスッキリ書けます:

=IFS(A1>=80,"A",A1>=60,"B",A1<60,"C")
比較項目 IF関数 IFS関数
対応バージョン 全バージョン対応 Excel 2019以降・Microsoft 365
複数条件の書き方 入れ子(ネスト)が必要 条件を並べるだけでOK
最大条件数 入れ子最大64段 最大127条件
可読性 入れ子が深いと読みにくい 条件が並列で読みやすい
どれも条件を満たさない場合 最後のIFのFALSE値を返す #N/Aエラー(TRUEで回避可)

IFS関数の基本構文

=IFS(条件1, 値1, 条件2, 値2, 条件3, 値3, ...)

引数のペア(条件・値)は最大127組まで指定できます。Excelは条件1から順番にチェックし、最初にTRUEとなった条件の値を返します。

具体例(成績評価):

=IFS(A1>=90,"S",A1>=80,"A",A1>=70,"B",A1>=60,"C",TRUE,"D")

最後の TRUE,"D" は「それ以外すべて」を意味します。このTRUEを入れないと、どの条件にも当てはまらないときに#N/Aエラーが返ります。

IFS関数が使えるExcelバージョン一覧

IFS関数は比較的新しい関数のため、使えるバージョンが限られています。まず自分のExcelが対応しているか確認しましょう。

Excelバージョン IFS関数 備考
Microsoft 365(Excel) 使用可 サブスクリプション版。継続的にアップデート
Excel 2021 使用可 買い切り版
Excel 2019 使用可 買い切り版
Excel 2016 使用不可 IFS関数は非搭載
Excel 2013 使用不可 IFS関数は非搭載
Excel 2010以前 使用不可 IFS関数は非搭載
Excel for Mac(365) 使用可 Microsoft 365版のみ
Excel Online(Web版) 使用可 ブラウザ版・無料で使用可能
Google スプレッドシート 使用可 IFS関数に対応

Excelのバージョン確認方法

自分のExcelバージョンを確認するには:

  1. Excelを起動する
  2. 左上の「ファイル」タブをクリック
  3. 「アカウント」をクリック
  4. 「製品情報」にバージョンが表示される

例:「Microsoft 365 Apps for enterprise バージョン 2502」のように表示されます。バージョン番号に「2019」「2021」「365」が含まれていればIFS関数が使えます。「2016」「2013」「2010」などと表示された場合は使用できません。

IFS関数が動かない・エラーになる主な原因

原因1:Excelのバージョンが古い(最も多い原因)

IFS関数でエラーになる最も多い原因は、Excelのバージョンが2016以前であることです。Excel 2016以前ではIFS関数自体が存在しないため、関数名を認識できず#NAME?エラーが返ります。

#NAME?エラーが出る状況:

  • Excel 2016・2013・2010・2007を使っている
  • IFSと入力しても関数候補が表示されない
  • =IFSと入力してEnterを押すと#NAME?と表示される

確認方法: セルに =IFS( と入力したとき、関数の説明(ツールチップ)が表示されない場合はバージョン非対応です。

原因2:関数名のスペルミス・全角文字の混入

#NAME?エラーはスペルミスや全角文字の混入でも発生します。

間違いの例 正しい書き方 エラーの種類
=IFSs(…) =IFS(…) #NAME?
=ifs(…) ※全角文字 =IFS(…) ※半角 #NAME?
=IFS (“A”,…) ※全角スペース =IFS(“A”,…) #NAME?

日本語入力モードのままIFSと入力すると全角文字になることがあります。Excelの関数名は必ず半角英数字で入力してください。入力する前にキーボードの「半角/全角」キーで日本語入力をOFFにすることをおすすめします。

原因3:引数の数が奇数になっている(#VALUE!エラー)

IFS関数は「条件・値」のペアで引数を指定します。条件だけ、または値だけが余った状態(引数の総数が奇数)になると#VALUE!エラーが返ります。

NG例(引数が5つ=奇数):

=IFS(A1>=80,"A",A1>=60,"B",A1<60) ← 最後の値が抜けている

OK例(引数が6つ=偶数):

=IFS(A1>=80,"A",A1>=60,"B",A1<60,"C")

引数は必ず偶数になるように「条件、値」のペアを完成させてください。

原因4:TRUEの条件(デフォルト値)を指定していない(#N/Aエラー)

IFS関数は、どの条件にも当てはまらない場合に#N/Aエラーを返します。IF関数でいう「どの条件にも当てはまらなかった場合の値(ELSE)」が存在しないためです。

問題のある式:

=IFS(A1>=80,"A",A1>=60,"B",A1>=40,"C")
← A1が40未満の場合、どの条件も満たさないため#N/Aエラー

解決策:最後に TRUE,”デフォルト値” を追加する

=IFS(A1>=80,"A",A1>=60,"B",A1>=40,"C",TRUE,"D")
← TRUEは常に真なので「それ以外すべてにDを返す」という意味

この TRUE,"デフォルト値" のペアは「どれにも当てはまらなかった場合の処理」として機能します。IF関数のELSEに相当する重要な引数です。

原因5:条件の順序が論理的に誤っている

IFS関数は条件を上から順番に評価し、最初にTRUEになった条件で処理を終えます。条件の順序が正しくないと、意図しない結果になることがあります。

NG例(90点以上が「A」にならない):

=IFS(A1>=60,"C",A1>=80,"B",A1>=90,"A",TRUE,"D")
← 90点の場合、最初の条件「A1>=60」がTRUEになり「C」が返ってしまう

OK例(厳しい条件から先に書く):

=IFS(A1>=90,"A",A1>=80,"B",A1>=60,"C",TRUE,"D")

数値の範囲で分岐する場合は必ず大きい数値から小さい数値の順(または小さい数値から大きい数値の順)に条件を並べてください。

原因6:文字列の比較で引用符が抜けている

条件や返す値に文字列を使う場合は、ダブルクォーテーション(”)で囲む必要があります。引用符が抜けると#NAME?エラーや#VALUE!エラーが発生します。

NG例:

=IFS(B1=東京,"関東",B1=大阪,"近畿",TRUE,その他) ← 文字列に引用符なし

OK例:

=IFS(B1="東京","関東",B1="大阪","近畿",TRUE,"その他")

セル参照(A1, B2など)はそのまま書きますが、直接テキストを書く場合は必ずダブルクォーテーションで囲んでください。

原因7:セル参照が絶対参照・相対参照で混乱している

IFS関数を複数行にコピーして使う場合、セル参照のズレによって意図しない結果になることがあります。

例:固定の基準値と比較する場合

× =IFS(A1>=C1,"OK",A1<C1,"NG",TRUE,"-")
  ← C1をコピー先にコピーすると、C1がC2・C3と変わってしまう

○ =IFS(A1>=$C$1,"OK",A1<$C$1,"NG",TRUE,"-")
  ← $をつけると絶対参照になり、コピーしてもC1のまま固定される

基準値や固定の表を参照する場合はF4キーで絶対参照($)に変更することを忘れないようにしましょう。

原因8:ファイルの互換性問題(旧バージョンで保存・開く場合)

IFS関数を使ったファイルをExcel 2016以前で開くと、IFS関数が#NAME?エラーとして表示されます。これは互換性の問題で、ファイルの保存形式や共有相手のExcelバージョンに注意が必要です。

「互換性チェック」機能を使えば、旧バージョンで問題が起きる関数を事前に確認できます:

  1. 「ファイル」→「情報」→「問題のチェック」をクリック
  2. 「互換性チェック」を選択
  3. 問題が検出されると「新しい関数が使われています」などの警告が表示される
ExcelIFS関数使えない対処法 画像2

IFS関数エラーの対処法

対処法1:ExcelまたはOfficeをアップデートする

Microsoft 365を使っているのにIFS関数が使えない場合、Officeのアップデートが必要な可能性があります。以下の手順でアップデートしてください。

Windows版(Microsoft 365)のアップデート手順:

  1. Excelを起動する
  2. 「ファイル」タブをクリック
  3. 「アカウント」をクリック
  4. 「更新オプション」→「今すぐ更新」をクリック
  5. アップデートが完了したらExcelを再起動する

Mac版(Microsoft 365)のアップデート手順:

  1. メニューバーの「ヘルプ」をクリック
  2. 「更新プログラムを確認する」をクリック
  3. Microsoft AutoUpdateが起動したら「更新」をクリック

アップデート後、Excelを再起動してIFS関数が使えるか確認してください。

対処法2:Excel 2016以前の場合はネストIF関数で代替する

Excel 2016以前でIFS関数が使えない場合は、IF関数を入れ子(ネスト)にして同じ処理を実現できます。

IFS関数の式:

=IFS(A1>=90,"S",A1>=80,"A",A1>=70,"B",A1>=60,"C",TRUE,"D")

ネストIFで同じ処理を行う式:

=IF(A1>=90,"S",IF(A1>=80,"A",IF(A1>=70,"B",IF(A1>=60,"C","D"))))

書き方のコツ:

  • 「=IF(最初の条件, 真の値, IF(次の条件, 真の値, …)」の形で繰り返す
  • 最後のIF関数の「偽の値」にデフォルト値を入れる
  • 最終的に括弧の数が一致しているか確認する

ネストIFは条件が増えると読みにくくなりますが、Excel 2016以前でも動作するという利点があります。

対処法3:SWITCH関数(Excel 2019以降)で代替する

SWITCH関数はIFS関数とよく似た関数ですが、完全一致の比較に特化しています。範囲(以上・以下)の比較はできませんが、特定の値との一致を確認するケースではIFS関数よりシンプルに書けます。

SWITCH関数の構文:

=SWITCH(対象セル, 値1, 返す値1, 値2, 返す値2, ..., デフォルト値)

活用例(都市名から地域名を返す):

IFS関数を使った場合:

=IFS(A1="東京","関東",A1="大阪","近畿",A1="名古屋","中部",TRUE,"その他")

SWITCH関数を使った場合:

=SWITCH(A1,"東京","関東","大阪","近畿","名古屋","中部","その他")
比較項目 IFS関数 SWITCH関数
比較の種類 任意の条件式(>=、<なども可) 完全一致のみ
対応バージョン Excel 2019以降・Microsoft 365 Excel 2019以降・Microsoft 365
向いているケース 点数・範囲による分類など コード・区分などの一致判定
デフォルト値 TRUEで指定 最後の引数として指定

対処法4:Excel OnlineやGoogle スプレッドシートを使う

古いExcelを使っていて、アップグレードが難しい場合は無料のWeb版ツールを活用する方法もあります。

Excel Online(Microsoft):

  • Microsoft Edgeまたはブラウザで office.com にアクセス
  • Microsoftアカウントでサインイン(無料)
  • 「Excel」を選択してファイルを作成または開く
  • IFS関数を含む最新のExcel関数が使用可能

Google スプレッドシート:

  • Googleアカウントがあれば無料で利用可能
  • IFS関数に対応済み
  • Excelファイル(.xlsx)をそのまま開いて編集できる

対処法5:#N/Aエラーを回避する(TRUEの追加)

どの条件にも当てはまらないケースで#N/Aエラーが出ている場合は、式の最後に TRUE,"デフォルト値" を追加してください。

修正前(#N/Aエラーが出る可能性あり):

=IFS(C1="完了","✓ 完了",C1="進行中","→ 作業中",C1="未着手","△ 未開始")

修正後(どの値でも対応できる):

=IFS(C1="完了","✓ 完了",C1="進行中","→ 作業中",C1="未着手","△ 未開始",TRUE,"不明")

または、IFERROR関数と組み合わせる方法もあります:

=IFERROR(IFS(C1="完了","✓ 完了",C1="進行中","→ 作業中",C1="未着手","△ 未開始"),"-")

対処法6:#VALUE!エラーを修正する(引数の確認)

#VALUE!エラーが出た場合、引数の数が奇数になっていないか確認してください。

引数の数え方: IFS関数の括弧内をカンマで区切って数えます。この数が偶数なら正しい(条件・値のペアが完成している)、奇数なら間違いです。

=IFS(A1>=80,"A",A1>=60,"B",A1<60)
         ↑       ↑      ↑       ↑       ↑
     条件1   値1  条件2   値2  条件3(値3が抜けている!)
引数の数:5つ(奇数)→ #VALUE!エラー

IFS関数の実践的な活用例

活用例1:成績評価の自動化

学校・職場でよく使われる点数から評価を返す例です。

=IFS(B2>=90,"優",B2>=80,"良",B2>=70,"可",B2>=60,"不可",TRUE,"欠席")
得点 評価
90点以上
80〜89点
70〜79点
60〜69点 不可
60点未満(欠席含む) 欠席

活用例2:送料の自動計算

注文金額に応じて送料を自動計算する例です。

=IFS(D2>=10000,"送料無料",D2>=5000,"220円",D2>=3000,"330円",TRUE,"550円")

これにより、注文金額(D2セル)に応じて送料が自動的に表示されます。

活用例3:タスク管理のステータス表示

進捗率に応じてステータスを自動表示する例です。

=IFS(E2=100,"完了",E2>=80,"最終確認",E2>=50,"作業中",E2>0,"開始済み",TRUE,"未着手")

活用例4:年齢から区分を判定する

年齢(F2セル)に応じて区分(子ども・大人・シニア)を返す例です。

=IFS(F2<12,"子ども(小学生以下)",F2<18,"中高生",F2<65,"一般大人",TRUE,"シニア")

活用例5:AND条件・OR条件との組み合わせ

IFS関数の条件部分にAND関数・OR関数を組み合わせることで、複合条件も扱えます。

' 売上が目標達成「かつ」先月比増加の場合
=IFS(AND(G2>=100000,G2>G1),"ダブル達成",G2>=100000,"目標達成",G2>=80000,"あと少し",TRUE,"未達")

IFS関数のよくある間違いと修正例

間違い例1:条件を逆順に並べてしまった

IFS関数は上から順番に評価するため、条件の順序が重要です。以下のような「ゆるい条件を先に書く」ミスはよくあります。

間違い:

=IFS(A1>=0,"D以上",A1>=60,"C以上",A1>=80,"B以上",A1>=90,"A以上")

この式は A1>=0 が常にTRUEになってしまうため、どんな値でも「D以上」が返ります。

正しい式(厳しい条件から先):

=IFS(A1>=90,"A以上",A1>=80,"B以上",A1>=60,"C以上",A1>=0,"D以上")

間違い例2:文字列と数値を混同している

比較する値が文字列のとき、数値として扱ってしまうミスです。

間違い(A1に”3″という文字列が入っている場合):

=IFS(A1>=3,"大きい",A1<3,"小さい",TRUE,"等しい")
← 文字列の"3"は数値の3と比較できないため正しく動作しない

正しい式(VALUE関数で数値に変換):

=IFS(VALUE(A1)>=3,"大きい",VALUE(A1)<3,"小さい",TRUE,"等しい")

間違い例3:空白セルの処理を忘れている

条件に空白セルのパターンを含めていない場合、空白セルに対して意図しない結果が返ることがあります。

空白を先にチェックする式:

=IFS(A1="","(未入力)",A1>=80,"合格",TRUE,"不合格")
ExcelIFS関数使えない対処法 画像3

よくある質問(FAQ)

Q1. Excel 2016でIFS関数を使う方法はありますか?

A. Excel 2016ではIFS関数は使用できません。代替方法として、以下の2つを検討してください:

  1. ネストIF関数を使う=IF(A1>=90,"A",IF(A1>=80,"B",IF(A1>=70,"C","D"))) のように入れ子にする
  2. Microsoft 365にアップグレードする:月額料金(個人版: 月額1,490円〜)でIFS関数を含む最新機能が使えるようになる

どうしてもExcel 2016のままで使いたい場合は、Excel Online(無料のWeb版)やGoogle スプレッドシートを使う方法もあります。

Q2. #NAME?エラーが出るのに関数名は正しいです。なぜですか?

A. 関数名が正しいのに#NAME?エラーが出る場合、以下を確認してください:

  • Excelのバージョン:Excel 2016以前では動作しない(最多の原因)
  • 全角文字の混入:一見同じに見えても全角のIFSになっている可能性あり。「ファイル」→「検索と置換」で「IFS」(全角)を検索してみてください
  • アドインの無効化:一部の古いアドインが関数認識を妨げる場合がある

Q3. IFS関数とIFERROR関数を組み合わせることはできますか?

A. はい、組み合わせ可能です。IFS関数がエラーを返す可能性がある場合、外側をIFERROR関数で囲むことで安全に処理できます。

=IFERROR(IFS(A1>=90,"A",A1>=80,"B",A1>=60,"C",A1>=0,"D"),"-")

ただし、IFS関数の最後に TRUE,"デフォルト値" を入れれば#N/Aエラーは回避できるため、通常はIFERRORは不要です。

Q4. IFS関数は最大何個まで条件を書けますか?

A. IFS関数は最大127個の条件(正確には条件と値のペアが127組)まで指定できます。実用上127個の条件を使うことはほぼないため、上限を気にする必要はありません。ただし、条件が多くなるほど数式が複雑になるため、VLOOKUPやXLOOKUP、または別の表構造への変換を検討することをおすすめします。

Q5. IFS関数とSWITCH関数はどちらを使えばよいですか?

A. 場面によって使い分けるのがベストです:

  • IFS関数を使う場面:「80点以上」「3以下」などの範囲・大小比較が必要な場合
  • SWITCH関数を使う場面:「東京=関東」「1=一月」などの完全一致の変換が必要な場合

完全一致の場合はSWITCH関数の方が式が短くなり読みやすいです。

Q6. IFS関数は配列数式(Ctrl+Shift+Enter)と組み合わせられますか?

A. はい、Microsoft 365のダイナミック配列が使える環境では通常のEnterで配列処理も可能です。ただし、IFS関数自体は基本的に1セルに1つの値を返す設計です。配列的に複数の値を返したい場合は、別のセル範囲に数式を個別に入力する方法を推奨します。

Q7. IFS関数の結果をIF関数の条件として使えますか?

A. はい、可能です。IFS関数が返す値をIF関数の条件として使えます。

=IF(IFS(A1>=90,"合格",TRUE,"不合格")="合格","表彰対象","非対象")

ただし、この例は =IF(A1>=90,"表彰対象","非対象") と書く方がシンプルです。不必要に複雑にしないよう注意しましょう。

Q8. スマートフォン版のExcel(モバイル)でもIFS関数は使えますか?

A. Microsoft 365のアカウントでサインインしていれば、スマートフォン版のExcelアプリでもIFS関数を使用できます。ただし、スマートフォンでの数式入力は操作性が低いため、複雑な数式の入力はPCで行うことをおすすめします。既にIFS関数が入力されたファイルの閲覧・計算確認であれば問題なく動作します。

まとめ

ExcelのIFS関数が動かない・エラーになる原因と対処法を解説しました。

IFS関数エラーの主な原因と対処法 まとめ

エラー・症状 主な原因 対処法
#NAME?エラー Excel 2016以前を使用している Microsoft 365にアップグレード、またはネストIFで代替
#NAME?エラー 関数名のスペルミス・全角文字 半角でIFSと入力し直す
#VALUE!エラー 引数の数が奇数 条件と値のペアを確認・補完する
#N/Aエラー どの条件にも当てはまらない 最後にTRUE,”デフォルト値”を追加する
意図しない値が返る 条件の順序が誤っている 厳しい条件から先に並べ直す
引用符エラー 文字列にダブルクォーテーションがない 文字列を”〜”で囲む

IFS関数はExcel 2019以降・Microsoft 365で使える便利な関数です。まずは自分のExcelバージョンを確認し、バージョンが対応していない場合はネストIFやSWITCH関数で代替することを検討してください。

IFS関数が使える環境では、複数条件の分岐処理が劇的にシンプルになります。本記事の活用例を参考に、ぜひ実務の集計・評価・分類作業に活用してみてください。

この記事が「ExcelのIFS関数エラー」でお困りの方のお役に立てれば幸いです。

Check Also

Excelマクロ自動実行されない対処法

【2026年最新版】Excelのマクロが自動実行されない・エラーになる原因と対処法【完全ガイド】

【2026年最新版】Excel …