- 投稿日:2025/10/17
- 更新日:2025/10/17

この記事ではスプレッドシートで(以下、スプシ)使える基本的な関数を紹介していきます!
スプシって何🤔?という人や
関数を勉強したい✏️という人に向けて
基本的な関数からちょっと難しい関数まで解説していきます
今回のテーマは
「📚️IF関数・IFS関数・IFERROR関数」
です
📖練習問題
👇️以下のリンクをクリックしてファイルをコピーしてください
まずは練習問題に取り組んでみてください
📖問題は全部で4つあります
4つ全て答えることができたら今回の関数は理解できていると思いますのでこれ以降の記事は読む必要がないかもしれません😁
目次に戻って他の気になる記事をご覧ください!
↓こちらの記事がスプシのトリセツの目次(まとめ記事)になります👍️
【保存版】スプシのトリセツ〜見て・触って・覚える!初心者のためのスプレッドシート練習帳付〜【目次】
4つ全て答えることができなかった人は、解説を読んでみて学習してください✏️
最後にはもう一度確認問題もありますのでインプットだけではなくアウトプットもしっかりして学習を定着させていきましょう
✴️ IF関数
💭何ができる?
ひとつの条件を判定して、結果に応じて表示を切り替えます
=IF( 条件, 条件が真のとき, 条件が偽のとき )
🌀つまずきやすい点
IF関数を使っていてわかりづらいポイントとして条件が「真のとき」「偽のとき」という言葉があります
加えて、スプレッドシートを学んでいると「結果を返す」という専門用語も出てきます
ここでしっかり学習しておきましょう
✅️条件が真のとき = 条件に当てはまったとき
✅️条件が偽のとき = 条件に当てはまらなかったとき
✅️結果を返す = 結果を表示する
💻️よくある実務例
入金日が空欄なら「未入金」、入っていれば「入金済み」
=IF(B2="","未入金","入金済み")
✅️条件が複数ある場合
IF関数のなかにIF関数を入れます(ネスト(入れ子)という考え方)
条件:
入金日が入力されている → 「入金済み」
入金日が空欄で、今日より期日が未来 → 「入金待ち」
入金日が空欄で、今日より期日が過去 → 「入金遅れ」
=IF(B2="",
IF(C2>=TODAY(),"入金待ち","入金遅れ"),"入金済み")
どのような条件分岐なのか🤔?
数式ではなく、文章で表すと
もし入金日が空欄の場合には
→期日が今日よりあとなら「入金待ち」
→期日が今日より前なら「入金遅れ」
入金日が空欄でないなら
→「入金済み」
条件に日付が入ってきているので少し難しいですよね😅
👇️TODAY関数については少し解説しています
⭐️使いこなしポイント
空欄判定は ="" を使う
"はダブルクォーテーション
→Shift + 2 で表示できます
今日基準の比較は TODAY関数:期日が今日以降か?
=IF(C2>=TODAY(),"期日内","期日超過")
💭おまけ
📅 TODAY関数
意味:
「今日の日付」を自動で取得する関数。
入力するたびに更新される、リアルタイムの日付判定ができる。
=TODAY()
🪆 ネスト(入れ子)
意味:
関数の中にさらに関数を入れて使うこと。
英語の 「nest(巣を入れ子にする)」 が語源です。
例:IFの中にIFを入れる
IFとVLOOKUPの組み合わせ
ネスト(入れ子)で条件が増やせるが、読みにくくなりやすい
→ 条件が3つ以上なら IFS へ切替を検討
🌀つまずきやすい点
比較演算子を全角で打ってしまう(>=, < など)→ 半角で >=, <
文字列の 全角/半角・余分な空白 が混ざると一致判定でズレる
✴️ IFS関数
💭何ができる?
複数条件を上から順に判定し、最初に合ったものを返します。
=IFS( 条件1, 値1, 条件2, 値2, … )
💻️よくある実務例
条件:
期日が入力されていない→「期日未設定」
入金日が入力されている → 「入金済み」
入金日が空欄で、期日が今日以降 → 「入金待ち」
入金日が空欄で、期日が今日より前 → 「入金遅れ」
※上記の式は見やすいように改行していますが、していなくても大丈夫ですこれから長い式を書くときには少し改行を意識してもいいかもしれません💡スプレッドシート上でも改行は適用されますので見やすくなります
✅️改行なしバージョン
=IFS(C2="", "期日未設定",B2<>"", "入金済み",AND(B2="", C2>=TODAY()), "入金待ち",AND(B2="", C2<TODAY()), "入金遅れ")
自分が使いやすい方で大丈夫です👍️
ちなみに改行はショートカットキー「⌘ + ↵」
どのような条件分岐なのか🤔?
数式ではなく、文章で表すと
①もし期日が空欄の場合には→「期日未設定」
②もし入金日が空欄じゃないなら→「入金済み」
③もし入金日が空欄かつ期日が今日以降なら→「入金待ち」
④もし入金日が空欄かつ期日が今日以前なら→「入金遅れ」
⭐️使いこなしポイント
順番が超重要:
上から評価され、最初にヒットした条件で確定
→ 「例外(エラーや未設定)」を先頭ではじくと安全
AND関数(条件A, 条件B), OR関数(条件A, 条件B) を組み合わせて読みやすく
🌀つまずきやすい点
どの条件にも当てはまらないとエラーに(#N/A 等)
→ 後述の IFERROR でフォロー
💭おまけ
⚙AND関数
意味:すべての条件が「真(TRUE)」のときにTRUEを返す。
複数条件を同時に満たすときに使う。
=AND(条件A, 条件B)
→A かつ Bのとき
🔀OR関数
意味:いずれか1つでも「真(TRUE)」ならTRUEを返す。
どれかが当てはまればOKという条件に使う。
=OR(条件A, 条件B)
→A または Bのとき
活用例:
=IF(OR(B2="",C2=""),"データ未入力","OK")
👉「入金日または期日どちらかが空欄なら“データ未入力”」
ネストIFより見やすい✨️
✴️ IFERROR関数
💭何ができる?
計算や参照でエラーが出た時だけ別の値に置き換えます。
=IFERROR( 値, エラー時の値 )
💻️よくある実務例
条件
粗利率=(売上金額ー仕入金額)÷売上金額
割れないときは“計算できません”
=IFERROR((B2-C2)/B2,"計算できません")
どのような条件分岐なのか🤔?
数式ではなく、文章で表すと
もしエラーじゃないなら→計算結果(粗利率)を返す
もしエラーなら→「計算できません」
⭐️使いこなしポイント
「正常時はそのまま結果を返す、異常時のみ置換」という最後の安全網
表示は "計算できません" でも ""(空白)でもOK(レポートの見た目次第)
VLOOKUP/XLOOKUP や VALUE 変換などエラーが出やすい箇所で使う
→詳しくはまたの機会に
☝️VLOOKUPは他の記事に飛びます📚️
🌀つまずきやすい点
本来拾うべきエラーまで隠してしまうことがある
→ まず原因を潰し、最終的な“見せ方”として IFERROR を使う意識
文字列はダブルクォーテーションで囲む→”囲む”
📖確認問題
📊IF関数・IFS関数・IFERROR関数(確認用)
インプットしたものが理解できているか、アウトプットして確かめましょう♪
💡まとめ
今回は「📊IF関数・IFS関数・IFERROR関数」について解説しました
理解できたでしょうか?
✅️今回のポイント
・例外は先に弾く(IFSの先頭で「期日未設定」「型不正」など)
・今日基準の判断は TODAY()、空欄判定は ="" を徹底
・条件が3つ以上になったら IFS で読みやすく
・最後に IFERROR を重ねて“壊れにくい表”に
これからもスプシの関数や便利な情報について記事を投稿していきます
少しでもスプシへのハードルを下げていきたいと思っています✨️
随時、更新していきます♪
この記事がスプシのトリセツの
目次(まとめ記事)になりますので
👇️こちらの記事もブックマークをおすすめします👍️
【保存版】スプシのトリセツ〜見て・触って・覚える!初心者のためのスプレッドシート練習帳付〜【目次】
いいねやブックマークをしていただけると走り回って喜びます🐹💨
最後まで読んでいただきありがとうございました♪
何かわからないことなどありましたらお気軽にコメントやDMください📥️✨️