Excel

ExcelのIF関数で日付を条件にした判定方法|特定の日付以前や以後を判定

2024年12月24日

Excelでデータを管理する際、日付を条件に判定する場面はよくあります。

たとえば、「特定の日付より前のデータだけを抽出したい」「今日以降のスケジュールを表示したい」などです。

このような日付を条件にした判定には、ExcelのIF関数を使うことで簡単に実現できます。

この記事では、IF関数を活用して「特定の日付以前」「特定の日付以後」を判定する方法を、初心者にもわかりやすく解説します。

記事内容

今回は、ExcelのIF関数で日付を条件にした判定方法を紹介します。

まず、IF関数の基本的な構文を確認しましょう。

IF関数の書式

=IF(条件, 真の場合の値, 偽の場合の値)

  • 条件: 判定したい条件を指定します。
  • 真の場合の値: 条件が真の場合に返す値。
  • 偽の場合の値: 条件が偽の場合に返す値。

例えば、セルA1の値が100以上の場合に"合格"、それ以外は"不合格"と表示するには以下のように記述します。

=IF(A1>=100, "合格", "不合格")

日付を条件にする場合、Excelでは日付も数値として扱われます。これにより、大小比較が可能です。

例1: 特定の日付以前かを判定

「2024/12/31」以前かどうかを判定する例で説明します。

判定結果を表示するセル(C3)を選択します。(①)

「数式」タブを選択します。(②)

「論理」をクリックします。(③)

「数式」タブの「論理」をクリックする
「数式」タブの「論理」をクリックする

「IF」をクリックします。(④)

「IF」をクリックする
「IF」をクリックする

「関数の引数」ダイアログボックスが表示されます。

「論理式」に以下の数式を入力します。(⑤)

B3<=DATE(2024,12,31)

「論理式」に「B3<=DATE(2024,12,31)」と入力する
「論理式」に「B3<=DATE(2024,12,31)」と入力する

「値が真の場合」を入力します。(⑥)

「値が偽の場合」を入力します。(⑦)

OKボタンをクリックします。(⑧)

「値が真の場合」と「値が偽の場合」を入力する
「値が真の場合」と「値が偽の場合」を入力する

これで以下のような数式が入力されます。

=IF(B3<=DATE(2024,12,31),"期限内","期限切れ")

  • DATE(2024,12,31): 2024年12月31日を指定。
  • B3<=DATE(2024,12,31): セルB3の日付が2024年12月31日以前であれば「期限内」を返す。

他のセルにコピーして反映します。

数式をC列全体にコピーするため、セルC3を選択し、表示される右下隅の■をドラッグします。

他のセルにコピーする
他のセルにコピーする

これで各日付に対して「2024/12/31」以前かどうかを判定することができます。

「2024/12/31」以前かどうかを判定することができる
「2024/12/31」以前かどうかを判定することができる

例2: 特定の日付以後かを判定

「2024/01/01」以後かどうかを判定する場合は次の通りです。

=IF(A1>=DATE(2024,1,1), "有効", "無効")

例3: 今日以前かを判定

日付条件を動的に設定するには、TODAY関数を使用します。TODAY関数は、現在の日付を返します。

=IF(A1<=TODAY(), "過去の日付", "未来の日付")

例4: 今日以後かを判定

=IF(A1>=TODAY(), "未来の日付", "過去の日付")

Q1: 異なるセルに入力された日付を比較するにはどうすれば良いですか?
A1: 例えば、セルA1とB1の日付を比較する場合、 =IF(A1>B1,"A1が後の日付","A1が前の日付") のように記述できます。

Q2: 日付が複数の条件に該当する場合に異なる結果を表示したい場合、IF関数をどのように書けば良いですか?
A2: 複数の条件を判定する場合、IF関数をネスト(入れ子)にするか、SWITCH関数やIFS関数を使用するのがおすすめです。例:

=IF(A1<TODAY(),"過去",IF(A1=TODAY(),"今日","未来"))

Q3: 日付が空白の場合はどう判定したらいいですか?
A3:IF関数をネスト(入れ子)にして =IF(A1="","日付が入力されていません",IF(A1<TODAY(),"過去の日付","未来の日付")) のように記述できます。

Q4: 日付の範囲(例:2024/01/01~2024/12/31)を判定するにはどう書けば良いですか?
A4: AND関数を使用して、 =IF(AND(A1>=DATE(2024,1,1),A1<=DATE(2024,12,31)),"範囲内","範囲外") と記述します。

Q5: 曜日も考慮して判定を行いたい場合はどうすれば良いですか?
A5: WEEKDAY関数を組み合わせて、特定の曜日を条件に加えることができます。例えば、 =IF(WEEKDAY(A1,1)=1,"日曜日","他の日") のように記述します。

ExcelのIF関数を使えば、特定の日付以前や以後を簡単に判定することができます。

日付を条件にしたデータの抽出や分類は、スケジュール管理やデータ分析を効率化する上で非常に役立ちます。

ぜひ日常の業務やプロジェクトで活用してみてください!

Excel関数の記事一覧はコチラ

検索

-Excel
-,