0Pricing
Excel Formulas Academy · レッスン

条件関数で日付範囲を使う

期間内を合計またはカウントするための日付範囲条件を使います。

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

期間でフィルタリングする

実際のレポートでは、ほとんどの場合期間に関する集計が必要です。今四半期の売上、先月の注文、2つの日付の間の登録数などです。ここまで学んできた SUMIFS、COUNTIFS、AVERAGEIFS は、日付範囲の表現方法がわかれば、こうした集計にもきれいに対応できます。

ポイントは、日付範囲が実際には同じ日付列に対する2つの条件だということです。開始日以降であり、かつ終了日以前である、という条件になります。

日付は単なる数値

スプレッドシートでは、日付はシリアル値として保存されます。1日目は1900年1月1日(Sheetsでは1899年)で、その後は1日ごとに1ずつ増えます。そのため、通常の数値と同じように > や < で日付を比較できます。

つまり、1月1日より後とは、単にその日付のシリアル値より大きいシリアル値という意味です。これが、日付によるフィルタリングを可能にする重要なポイントです。

2つの日付の間を合計する

列Aに注文日、列Cに金額が入っているとします。2024年1月の売上を合計するには、列Aを2回指定します。1月1日以降、かつ1月31日以前という条件です。

地域による日付表記の違いに左右されないよう、日付は DATE(year, month, day) 関数で指定してください。2つの条件がANDとして働き、その月の行だけが対象になります。

=SUMIFS(C:C, A:A, ">="&DATE(2024,1,1), A:A, "<="&DATE(2024,1,31))

DATE() と & 記号を使う理由

">=1/1/2024" のように直接入力したくなるかもしれません。うまく動くこともありますが、スプレッドシートによっては文字列として扱われたり、日と月の順序を誤って解釈されたりするため、確実ではありません。

堅牢なパターンは ">="&DATE(2024,1,1) です。DATE 関数が実際のシリアル値を作成し、& が演算子とその値を結合します。これは、どの地域設定でも Excel と Google Sheets の両方で確実に動作します。

=COUNTIFS(A:A, ">="&DATE(2024,1,1), A:A, "<="&DATE(2024,1,31))

セルから日付を取得する

固定されたレポートであれば日付を直接指定しても問題ありませんが、柔軟なレポートでは開始日と終了日をセルから取得します。開始日を F1 に、終了日を F2 に入力します。

これで期間をシートから変更できるようになります。F1またはF2を変更すると、すべての合計が再計算されます。いつものように、& で演算子とセルを結合してください。セル名を引用符の中に入れてはいけません。

=SUMIFS(C:C, A:A, ">="&F1, A:A, "<="&F2)

終端のない期間

境界が片方だけ必要な場合もあります。ある日付以降のすべてには、以上を表す条件を1つだけ使います。ある日付までのすべてには、以下を表す条件を1つだけ使います。

これは、F1の日付以降に行われたすべての注文を、上限なしで数える方法です。「サービス開始以降の売上」のような指標に便利です。

=COUNTIFS(A:A, ">="&F1)

日付を他の条件と組み合わせる

日付の条件は、文字列や数値の条件と自由に組み合わせられます。期間内の東部地域の売上を合計するには、2つの日付条件に地域の条件ペアを追加します。

条件を指定する順番は結果に影響しません。Excel はすべての条件を1つの大きなAND条件として評価します。ここでは、3つの条件ペアが同じ average_range または sum_range を共有しています。

=SUMIFS(C:C, B:B, "East", A:A, ">="&F1, A:A, "<="&F2)

月または年でフィルタリングする

1年分を合計するには、その年の初日と最終日を範囲の境界に設定します。開始日には DATE を使い、期間の終わりを指定します。

1か月分の場合は、その月の1日を下限にし、翌月の1日を厳密な "<" 条件の上限にします。こうすると、月の日数が28日、30日、31日のどれかを気にする必要がありません。

=SUMIFS(C:C, A:A, ">="&DATE(2024,3,1), A:A, "<"&DATE(2024,4,1))

TODAY を使った相対期間

定期的に更新するレポートでは、TODAY() から境界を作成します。過去30日間の注文数を数える場合、下限は今日から30日前、上限は今日です。

TODAY() はシートが再計算されるたびに更新されるため、期間が自動的に毎日前へ移動します。手動で編集する必要はありません。

=COUNTIFS(A:A, ">="&(TODAY()-30), A:A, "<="&TODAY())

時刻要素に注意する

日付列に実際には日付と時刻(タイムスタンプ)が保存されている場合、1月31日の夜遅くの行は、1月31日の1日全体を表す値よりわずかに大きいシリアル値になります。そのため、"<="&DATE(2024,1,31) という境界では、その行が除外されます。

安全な対処法は、翌日を厳密な未満条件にするパターンです。"<"&DATE(2024,2,1) とすれば、タイムスタンプを含め、1月中のあらゆる時刻を対象にできます。

=SUMIFS(C:C, A:A, ">="&DATE(2024,1,1), A:A, "<"&DATE(2024,2,1))

期間内の値を平均する

同じ日付範囲のパターンは AVERAGEIFS にも使えます。期間内の平均注文額を求めるには、金額列を average_range に指定し、日付列に対する2つの日付条件を追加します。

期間内に注文がない場合の落とし穴にも注意してください。AVERAGEIFS は #DIV/0! を返します。IFERROR で囲めば、データのない期間でも、日付で絞り込んだダッシュボードをすっきり保てます。

=IFERROR(AVERAGEIFS(C:C, A:A, ">="&F1, A:A, "<="&F2), "No data")

理解度チェック

条件関数で日付と比較するときの、堅牢な方法を思い出してください。

まとめ: 条件関数での日付範囲

SUMIFS、COUNTIFS、AVERAGEIFS を期間でフィルタリングできるようになりました。

  • 日付範囲は、同じ日付列に対する2つの条件(開始日以上、終了日以下)です。
  • DATE(y,m,d) で日付を作成し、">="& で演算子を付けます。
  • 月を扱うときは、タイムスタンプにも対応できるよう、翌日を厳密な未満条件にする上限("<"&DATE(...))を使います。
  • 過去30日間のような相対期間には TODAY() を使います。

これで複数条件の IFS ファミリについての学習は完了です。

=SUMIFS(C:C, B:B, F3, A:A, ">="&F1, A:A, "<"&F2)

よくある質問

「条件関数で日付範囲を使う」レッスンは無料ですか?

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

「条件関数で日付範囲を使う」で何を学びますか?

期間内を合計またはカウントするための日付範囲条件を使います。 ブラウザで直接実行するハンズオンコードでExcel Formulas Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

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

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

「条件関数で日付範囲を使う」レッスンにはどのくらい時間がかかりますか?

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

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

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

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

  1. SUMIFSで複数条件に基づいて合計する
  2. COUNTIFSで複数条件に基づいて数える
  3. AVERAGEIFSで複数条件に基づいて平均する
  4. 条件関数で日付範囲を使う
← Excel Formulas Academyに戻る