Excel

〖Excel〗日付範囲で抽出・集計する方法|FILTER・COUNTIFS・SUMIFSの使い分けと失敗対策

k.w
\お買い物マラソン開催中/
Contents
  1. Excelの日付範囲抽出は、最初に「何を出したいか」で決める
  2. 日付範囲を正しく指定するための基本準備
  3. COUNTIFSとSUMIFSで期間内の件数・合計を出す
  4. FILTERで期間内の行だけを自動抽出する
  5. 判定列で「期間内/期間外」を見える化する
  6. 関数を使わず一時的に抽出したい場合の考え方
  7. うまく抽出できないときの確認順
  8. COUNTIFS・SUMIFS・FILTER・判定列の使い分け早見表
  9. FAQ:Excelの日付範囲抽出でよくある疑問
スポンサーリンク

Excelの日付範囲抽出は、最初に「何を出したいか」で決める

Excelで開始日から終了日までのデータを扱うときは、先に「件数を数えたいのか」「合計したいのか」「行そのものを取り出したいのか」を決めると、使う関数を迷いにくくなります。

同じ日付範囲でも、ほしい結果が1つの数字なのか、明細の一覧なのか、あとから別の作業に使う判定なのかで、選ぶ方法は変わります。

最初に目的を決めておくと、途中で式を作り直したり、抽出したあとに別の集計をやり直したりする手間を減らせます。

まず結論:件数はCOUNTIFS、合計はSUMIFS、行抽出はFILTER、後工程には判定列

期間内の件数だけが必要ならCOUNTIFS、金額や数量の合計が必要ならSUMIFS、条件に合う行を一覧で見たいならFILTERを使うのが基本です。

期間内かどうかを表の中で見えるようにして、あとからフィルターや条件付き書式に使いたい場合は、IFとANDで判定列を作ると扱いやすくなります。

どの関数も日付条件の考え方は共通していて、開始日以上かつ終了日以下にするだけです。

迷ったときは、結果としてほしいものが「数値」「合計値」「行一覧」「判定文字」のどれなのかを先に確認します。

目的向いている方法代表的な使い方
件数を数えるCOUNTIFS期間内の売上件数や受付件数を数える
金額や数量を合計するSUMIFS期間内の売上金額や数量を合計する
条件に合う行を取り出すFILTER開始日から終了日までの明細行を一覧にする
後から絞り込みたいIFとANDの判定列期間内/期間外を表示してフィルターに使う
一度だけ画面で見たいオートフィルター表を直接絞り込んで確認する

この記事で扱う日付範囲の考え方

この記事では、売上表のようなデータを例にして、日付列が開始日以上かつ終了日以下の行を集計または抽出する考え方を整理します。

開始日をB2、終了日をC2に入力しておくと、式を毎回書き換えずに期間だけを変更できます。

たとえば2026年1月1日から2026年1月31日までを対象にしたい場合は、B2に開始日、C2に終了日を入れ、そのセルを条件として参照します。

この形にしておくと、翌月の集計や別期間の抽出も、開始日と終了日を変えるだけで使い回せます。

日付条件の式は、最初に型をそろえ、次に範囲を指定し、最後に目的に合う関数を選ぶ流れで考えると安定します。

この記事の例では、SalesTbl というテーブルに、SaleDate、Staff、Item、Qty、Amount の列がある前提で説明します。

実際の表では、売上日、担当者、商品名、数量、金額のような列名に置き換えて考えてください。

表の名前や列名は違っていても、日付列を基準にして期間を指定する考え方は同じです。

向いている人・向いていない人

この方法は、売上表、作業ログ、問い合わせ一覧、予約一覧などを期間で集計したい人に向いています。

毎月の件数、指定期間の売上合計、ある期間だけの明細一覧を作りたい場合にも使いやすいです。

一方で、画面上で一度だけ確認できれば十分な場合は、関数よりオートフィルターのほうが早いこともあります。

また、古いExcelでFILTERが使えない場合は、COUNTIFSやSUMIFS、判定列、フィルター操作を組み合わせるほうが現実的です。

この記事では、関数で自動更新したい場合と、一時的に絞り込むだけでよい場合の違いも整理します。

最初に使い分けを決めるだけでも、作業後半の迷いを減らせます。

日付範囲を正しく指定するための基本準備

日付範囲の式がうまく動かないときは、関数の書き方より先に、日付列がExcelに日付として認識されているかを確認します。

ここを飛ばすと、式そのものは正しいのに結果が0になったり、終了日のデータだけ抜けたりします。

準備を整えてから式を作るほうが、あとから原因を探す時間を減らせます。

日付列がExcelの本物の日付になっているか確認する

Excelの日付は、見た目が日付でも、内部では数値として扱われている必要があります。

セルに「2026/1/15」と表示されていても、文字列として入力されていると、日付条件で正しく判定できないことがあります。

文字列の日付は、見た目が「2026/1/15」のように見えても、COUNTIFSやSUMIFSの日付条件で正しく判定されないことがあります。

確認するには、日付列の表示形式だけでなく、並べ替えや日付の計算ができるかも見ます。

日付が文字列になっている場合は、DATEVALUE関数やデータの区切り位置、形式を選択して貼り付けなどで、本物の日付へ直してから式を作ります。

月別や四半期別の分類列も作りたい場合は、日付列を整えたうえで日付から月・四半期を作る方法を確認すると、期間集計の前処理を整理しやすくなります。

開始日以上・終了日以下で条件を書く

日付範囲は、開始日以上と終了日以下の2つの条件で指定します。

なお、日付範囲の式は、完成したあとに必ず境界の日付で確認します。

COUNTIFSやSUMIFSでは、同じ日付列に対して >=&B2 と <=&C2 の2条件を指定します。

FILTERでは、日付列がB2以上、かつC2以下になる条件を掛け合わせます。

このとき、B2やC2に直接日付を入力するのではなく、セル参照にしておくと後から使い回しやすくなります。

この確認をしておくと、見た目は正しく見える集計でも、端の日付だけ抜ける失敗を減らせます。

条件意味使う場面
>=&B2開始日以上B2の日付を含める
<=&C2終了日以下C2の日付を含める
<&C2+1終了日の翌日未満時刻付きデータで使いやすい

時刻付きデータは「終了日の翌日未満」も考える

日付列に時刻が含まれる場合、”<=”&C2 だけでは終了日の一部データが抜けることがあります。

たとえばC2が2026/1/31で、データ側が2026/1/31 15:30のような値なら、単純な終了日以下では意図どおりに含められない場合があります。

これは、2026/1/31 15:30が、2026/1/31 0:00より後の値として扱われるためです。

時刻付きデータでは、終了日以下ではなく「終了日の翌日未満」として “<“&C2+1 を使うと考えやすくなります。

この考え方にすると、終了日の0時から23時59分までのデータをまとめて含めやすくなります。

テーブル化して列名で式を読みやすくする

元データをテーブル化しておくと、SalesTbl[SaleDate] のように列名で参照できるため、式の意味が読みやすくなります。

通常のセル範囲で A:A や B:B を指定するより、列名が見えるほうが、あとから式を確認したときに意図を追いやすくなります。

行が増えたときも、テーブルなら範囲が自動で広がるため、毎月の追記データにも対応しやすくなります。

ただし、列名を変更すると式の参照も変わるため、列名はできるだけ分かりやすく、途中で変えにくい名前にしておきます。

日付列、担当者列、商品列、金額列のように、列の役割が分かる名前にしておくと、式の修正もしやすくなります。

COUNTIFSとSUMIFSで期間内の件数・合計を出す

期間内の件数や合計だけが必要な場合は、COUNTIFSとSUMIFSを使うとシンプルです。

COUNTIFSは条件に合う行数を数え、SUMIFSは条件に合う行の金額や数量を合計します。

月次報告や集計表では、まず件数と合計を出せれば十分な場面も多いため、目的を絞るほど式は分かりやすくなります。

数字だけを貼り付けると、あとから条件を確認できず、再集計が必要になることがあります。

式で集計しておくと、開始日や終了日を変えたときに結果も更新できます。

COUNTIFSで開始日から終了日までの件数を数える

COUNTIFSでは、日付列に対して開始日以上と終了日以下の条件を指定します。

たとえば、SalesTbl[SaleDate] がB2以上かつC2以下の件数を数えれば、指定期間内の行数が分かります。

受付件数、売上件数、作業件数のように、件数そのものを知りたいときに向いています。

条件が日付だけなら式は短く、あとから見ても意味を理解しやすいです。

結果が0になる場合は、日付列が本物の日付か、開始日と終了日が逆になっていないかを先に確認します。

用途代表式
期間内の件数=COUNTIFS(SalesTbl[SaleDate],”>=”&B2,SalesTbl[SaleDate],”<=”&C2)
時刻付きデータの件数=COUNTIFS(SalesTbl[SaleDate],”>=”&B2,SalesTbl[SaleDate],”<“&C2+1)

SUMIFSで期間内の数量や金額を合計する

SUMIFSは、条件に合う行の指定列だけを合計する関数です。

期間内の売上金額、出荷数量、作業時間などを合計したいときに使います。

SUMIFSでは、最初に合計したい範囲を指定し、そのあとに条件範囲と条件を並べます。

COUNTIFSと違い、合計範囲が必要になるため、金額列や数量列を間違えないようにします。

合計結果が思ったより少ない場合は、金額列ではなく日付列の条件だけを疑うのではなく、合計範囲の指定も確認します。

用途代表式
期間内の金額合計=SUMIFS(SalesTbl[Amount],SalesTbl[SaleDate],”>=”&B2,SalesTbl[SaleDate],”<=”&C2)
時刻付きデータの金額合計=SUMIFS(SalesTbl[Amount],SalesTbl[SaleDate],”>=”&B2,SalesTbl[SaleDate],”<“&C2+1)

担当者・商品名など複数条件を追加する

日付範囲に加えて、担当者や商品名などの条件を追加することもできます。

たとえば、期間内かつ担当者がE2の人だけを数える場合は、日付条件に担当者条件を足します。

SUMIFSでも同じ考え方で、期間内かつ担当者一致、期間内かつ商品一致のように条件を増やせます。

条件が増えるほど式は長くなるため、どの条件が何を見ているのかを列名で分かるようにしておくと安心です。

条件を追加したあとに結果が0になる場合は、日付条件ではなく、担当者名や商品名の表記ゆれが原因になることもあります。

用途代表式
期間内かつ担当者一致の件数=COUNTIFS(SalesTbl[SaleDate],”>=”&B2,SalesTbl[SaleDate],”<=”&C2,SalesTbl[Staff],E2)
期間内かつ担当者一致の金額合計=SUMIFS(SalesTbl[Amount],SalesTbl[SaleDate],”>=”&B2,SalesTbl[SaleDate],”<=”&C2,SalesTbl[Staff],E2)

COUNTIFS / SUMIFSが向いている場面と弱い場面

COUNTIFSとSUMIFSは、結果として1つの数字がほしいときに向いています。

月ごとの件数、期間内の金額、担当者別の件数など、集計表を作る用途では扱いやすいです。

一方で、条件に合う行の中身を一覧で見たい場合は、COUNTIFSやSUMIFSだけでは不足します。

明細を確認したいのにCOUNTIFSで件数だけを出すと、結局あとから別の抽出作業が必要になります。

行そのものを見たい場合は、次のFILTERを使うほうが目的に合います。

FILTERで期間内の行だけを自動抽出する

期間内に該当する行をそのまま一覧で取り出したい場合は、FILTERが向いています。

COUNTIFSやSUMIFSは数字を返しますが、FILTERは条件に合う行の明細を返せます。

売上明細、問い合わせ一覧、予約一覧などを期間で切り出して確認したいときは、FILTERのほうが読みやすい結果になります。

ただしFILTERは、使えるExcelのバージョンや出力先の空き範囲に注意が必要です。

自動で行が増減する便利さがある一方で、スピル範囲や空結果の扱いも理解しておく必要があります。

FILTERの基本式と日付範囲条件の組み方

FILTERでは、抽出したい範囲と、抽出条件を指定します。

日付範囲で抽出する場合は、日付列がB2以上で、さらにC2以下になる条件を作ります。

AND条件として扱いたい場合は、2つの条件を掛け合わせて指定します。

SalesTbl全体を返すようにすれば、期間内の行だけを表として表示できます。

FILTERの基本的な考え方や条件指定で迷う場合は、この記事内で深追いしすぎず、FILTER関数の基本と条件指定のコツを確認すると理解しやすくなります。

用途代表式
期間内の行を抽出=FILTER(SalesTbl,(SalesTbl[SaleDate]>=B2)*(SalesTbl[SaleDate]<=C2),”該当なし”)
時刻付きデータに対応=FILTER(SalesTbl,(SalesTbl[SaleDate]>=B2)*(SalesTbl[SaleDate]<C2+1),”該当なし”)

複数条件を掛け合わせて必要な行だけを返す

FILTERでは、複数条件をANDでつなぐときに、条件同士を * で掛け合わせます。

期間内かつ担当者がE2と一致する行だけを取り出す場合は、日付条件と担当者条件をすべて掛け合わせます。

条件の数が増えても、考え方は「それぞれの条件がTRUEになる行だけを残す」という形です。

担当者、商品名、ステータスなどを追加すると、必要な明細だけをかなり絞り込めます。

条件範囲と抽出範囲の行数がずれていると、FILTERは正しく動かないため、同じテーブル内の列を使うほうが安全です。

用途代表式
期間内かつ担当者一致の行を抽出=FILTER(SalesTbl,(SalesTbl[SaleDate]>=B2)*(SalesTbl[SaleDate]<=C2)*(SalesTbl[Staff]=E2),”該当なし”)

空結果・スピル範囲・範囲サイズ違いの対処

FILTERでよくあるつまずきは、該当なし、スピルできない、範囲サイズが合わない、という3つです。

第3引数に “該当なし” のような表示を入れておくと、何も出ない理由が分かりやすくなります。

出力先に値や結合セルがあると、FILTERの結果を広げられず、スピルエラーになります。

抽出範囲と条件範囲の行数が違う場合も、正しく抽出できません。

FILTERでエラーが出たら、式を直す前に、出力先が空いているか、範囲の行数がそろっているかを確認します。

FILTER非対応のExcelで考える代替方法

FILTERは便利ですが、すべてのExcel環境で使えるわけではありません。

FILTERが使えない場合は、COUNTIFSやSUMIFSで数字を出す、判定列を作ってフィルターする、オートフィルターを使うといった代替が考えられます。

行を自動で一覧表示したい場合はFILTERが便利ですが、古いExcelでは判定列とフィルター操作のほうが共有しやすいこともあります。

チームでファイルを共有する場合は、自分のExcelで動くことだけでなく、相手のExcelでも同じように開けるかを確認します。

環境差がある場合は、関数だけに頼らず、表の中に期間内/期間外の判定を持たせる方法も検討します。

判定列で「期間内/期間外」を見える化する

日付範囲の結果をあとから別の作業に使いたい場合は、判定列を作る方法が便利です。

判定列とは、各行が期間内か期間外かを表示する補助列です。

FILTERのように別の場所へ行を取り出すのではなく、元の表の中に判定結果を持たせるのが特徴です。

後からフィルター、条件付き書式、ピボットテーブルに使いたい場合は、判定列があると作業を分けやすくなります。

IFとANDで期間内かどうかを表示する

IFとANDを組み合わせると、各行の日付が開始日以上かつ終了日以下かを判定できます。

条件に合う場合は「期間内」、合わない場合は「期間外」と表示すると、表を見ただけで判断しやすくなります。

テーブル内で行ごとに判定する場合は、[@SaleDate] のように、その行の日付を参照できます。

開始日と終了日のセルは、列全体で共通して使うため、必要に応じて参照を固定します。

判定列で結果がずれる場合も、まず日付が本物の日付か、時刻付きデータをどう扱うかを確認します。

用途代表式
期間内/期間外を表示=IF(AND([@SaleDate]>=B$2,[@SaleDate]<=C$2),”期間内”,”期間外”)
時刻付きデータに対応=IF(AND([@SaleDate]>=B$2,[@SaleDate]<C$2+1),”期間内”,”期間外”)

判定列をフィルター・条件付き書式・ピボットに使う

判定列を作っておくと、期間内の行だけをフィルターで表示できます。

条件付き書式で期間内の行を色付けしたり、ピボットテーブルで期間内だけを集計したりすることもできます。

FILTERの結果を別の場所に出すより、元データに判定を持たせたい場合に向いています。

複数人で表を確認する場合も、期間内/期間外の表示があると、どの行が対象かを共有しやすくなります。

ただし、判定列は元データに列を追加するため、列の役割を分かりやすくしておかないと表が複雑になります。

関数を複雑にしないための列設計

条件が増えるほど、1つの式にすべてを詰め込むと読みづらくなります。

日付条件、担当者条件、ステータス条件などを別々の補助列に分けると、どこで判定が変わったのかを追いやすくなります。

たとえば、期間内かどうかを判定する列と、担当者が一致しているかを判定する列を分ける方法があります。

最後に両方がTRUEの行だけを使えば、複雑な条件でも確認しやすくなります。

式を短くするためだけに補助列を増やすのではなく、あとから見て意味が分かる列にすることが大切です。

判定列が向いているケースと向いていないケース

判定列は、同じ表を何度も見直したり、別の機能に渡したりする作業に向いています。

期間内の行を色付けしたい、あとからピボットで集計したい、チームで対象行を共有したい場合に使いやすいです。

一方で、単に別の場所へ明細一覧を取り出したいだけなら、FILTERのほうがすっきりすることがあります。

表に列を増やしたくない場合や、一時的な確認だけでよい場合は、判定列を作らない選択もあります。

判定列は便利ですが、元データの構造を変えるため、あとから列の意味を説明できる形にしておきます。

関数を使わず一時的に抽出したい場合の考え方

日付範囲で抽出したい場面でも、必ず関数を使う必要はありません。

一度だけ画面上で確認したい場合や、表を見ながら手作業で確認したい場合は、オートフィルターのほうが早いこともあります。

関数は自動更新や再利用に強く、フィルター操作はその場での確認に強いと考えると選びやすくなります。

一時的な作業に複雑な数式を作ると、あとから誰が見ても分かりにくい表になることがあります。

オートフィルターで日付条件を指定する

オートフィルターを使うと、日付列のドロップダウンから期間を指定して絞り込めます。

表を直接見ながら、今月分だけ、指定日以降だけ、指定日以前だけといった条件を設定できます。

関数を書かなくても結果を確認できるため、急いで明細を見たい場面に向いています。

関数ではなく画面操作で日付条件を指定したい場合は、オートフィルターで日付条件を指定する方法を確認すると、作業の違いが分かりやすくなります。

フィルターオプションでAND条件・OR条件を使い分ける

条件が少し複雑な場合は、フィルターオプションを使う方法もあります。

同じ行に条件を並べるとAND条件、別の行に条件を分けるとOR条件として扱えます。

日付範囲に加えて、担当者や商品名などを条件エリアに置けば、関数とは違う形で抽出できます。

ただし、条件エリアの作り方に慣れが必要なため、何度も同じ条件を使うなら関数や判定列のほうが分かりやすい場合もあります。

フィルターオプションは便利ですが、条件の置き方を間違えるとANDとORの意味が変わるため注意が必要です。

自動更新したい作業と一時確認でよい作業を分ける

毎月同じ形式で集計するなら、COUNTIFS、SUMIFS、FILTER、判定列のような関数ベースの方法が向いています。

一方で、今日だけ明細を確認したい場合は、オートフィルターで十分なこともあります。

大切なのは、作業を一度だけで終えるのか、次回も同じ条件で使うのかを先に決めることです。

再利用するなら式にしておくと、開始日と終了日を変えるだけで更新できます。

その場限りの確認に複雑な式を作ると、表の管理だけが重くなることがあります。

うまく抽出できないときの確認順

日付範囲の式がうまく動かないときは、関数を変える前に確認する順番を決めると原因を見つけやすくなります。

結果が0になる、終了日のデータだけ抜ける、FILTERでエラーになる、思った行が出ない、といった問題はよくあります。

多くの場合、式そのものよりも、日付の型、時刻、範囲、出力先のどこかに原因があります。

見た目だけで判断せず、日付が本物の日付として扱われているかから確認します。

見た目は日付でも文字列になっていないか確認する

最初に見るべきなのは、日付列が文字列になっていないかです。

文字列の日付は、COUNTIFS、SUMIFS、FILTERのどれでも条件判定がずれる原因になります。

見た目が日付でも、Excelが日付として計算できなければ、開始日以上や終了日以下の比較は安定しません。

日付列を昇順で並べ替えたときに自然な順番にならない場合や、日付計算ができない場合は、文字列の可能性があります。

文字列日付のまま式を直し続けると、正しい式でも結果が変わらないため、先にデータ側を整えます。

終了日のデータが一部抜けていないか確認する

日付列に2026/1/31 15:30のような時刻が入っていると、<=2026/1/31 では拾えない場合があります。

この場合は、終了日以下ではなく、終了日の翌日未満として考えると解決しやすくなります。

COUNTIFSやSUMIFSなら “<“&C2+1、FILTERなら SalesTbl[SaleDate]<C2+1 のように考えます。

時刻付きデータは、画面上では日付だけに見えても、内部には時刻が残っていることがあります。

終了日の行だけ少ないと感じたら、時刻付きデータを疑います。

FILTERの出力先に値や結合セルがないか確認する

FILTERは、結果を複数セルに広げて表示します。

そのため、出力先に既存の値や結合セルがあると、結果を展開できません。

スピルエラーが出た場合は、式の中身だけでなく、結果を表示する場所が空いているか確認します。

FILTERの結果は、該当行数によって縦に増減するため、十分な空きスペースが必要です。

出力先の下や右にデータがあると、正しい式でも結果を表示できないことがあります。

テーブル列名や条件範囲のずれを確認する

テーブルの列名を変更したあとや、条件範囲だけ別の行数になっている場合もエラーの原因になります。

FILTERでは、抽出範囲と条件範囲の行数がそろっている必要があります。

COUNTIFSやSUMIFSでも、条件範囲の指定がずれていると、思った結果になりません。

テーブルの列名を使っている場合は、列名が現在の表と一致しているか確認します。

式をコピーしたあとに列名や範囲だけが古いままだと、結果のずれに気づきにくくなります。

COUNTIFS・SUMIFS・FILTER・判定列の使い分け早見表

日付範囲の処理は、使う関数そのものよりも、目的に合う方法を選べているかが重要です。

件数、合計、明細抽出、判定、画面操作では、それぞれ得意なことが違います。

最初に目的を整理しておけば、式を短くでき、後から修正する手間も減らせます。

迷ったまま式を作り始めると、数字だけ欲しいのに明細を出したり、明細を見たいのに件数だけを数えたりしやすくなります。

目的別の選び方を表で整理する

下の表は、日付範囲でよくある目的と、向いている方法の整理です。

結果として何がほしいかを基準にすると、COUNTIFS、SUMIFS、FILTER、判定列の違いを選びやすくなります。

同じ開始日と終了日を使っていても、返したい結果が違えば、選ぶ関数も変わります。

特に、数字がほしいのか、行を見たいのかを分けるだけで、関数選びの失敗を減らせます。

やりたいこと向いている方法注意点
期間内の件数を数えるCOUNTIFS明細行は表示できない
期間内の金額や数量を合計するSUMIFS合計範囲の指定を間違えない
期間内の行を一覧で取り出すFILTER対応版Excelとスピル範囲に注意
元データに期間内外を表示するIFとANDの判定列列が増えるため設計が必要
画面上で一度だけ絞り込むオートフィルター自動更新や再利用には弱い

初心者が迷いやすい判断ポイント

初心者が迷いやすいのは、COUNTIFSとFILTERの違いです。

COUNTIFSは件数を返す関数で、FILTERは行を返す関数です。

つまり、期間内に何件あるかだけを知りたいならCOUNTIFSで十分です。

期間内の明細を見て、担当者や商品名、金額まで確認したいならFILTERが向いています。

件数と明細を混同すると、式は合っているのに目的に合わない結果になります。

よくある後悔と失敗しにくい選び方

よくある後悔は、最初に目的を決めずに式を作り始めることです。

たとえば、明細確認が必要なのにSUMIFSで合計だけを出すと、あとから別の抽出が必要になります。

逆に、一度だけ確認するだけなのに複雑なFILTER式を作ると、メンテナンスが重くなります。

失敗しにくくするには、まず「今回の結果を次回も使うか」を考えます。

次回も使うなら関数、今回だけならフィルター操作、後工程で使うなら判定列、という分け方にすると判断しやすくなります。

内部リンクで補足する関連知識

日付範囲の記事だけで、すべてのExcel機能を深掘りしすぎると、主題がぼやけます。

FILTERそのものの基本、月や四半期の作り方、オートフィルター操作は、必要な場面だけ関連解説へ分けると読みやすくなります。

対象記事では、日付範囲で件数・合計・行抽出・判定をどう使い分けるかに集中します。

関連知識へ進みたい読者だけが、本文中のリンクから追加で確認できる形にしておくと、読み進めやすさを保てます。

内部リンクは増やしすぎず、読者の次の疑問に直接つながるものだけに絞ります。

FAQ:Excelの日付範囲抽出でよくある疑問

最後に、Excelの日付範囲抽出で迷いやすい疑問を整理します。

COUNTIFS、SUMIFS、FILTER、判定列は、それぞれ得意な場面が違います。

疑問を1つずつ分けて考えると、自分の作業に合う方法を選びやすくなります。

今日から今月末までのような動く期間は作れるか

今日の日付や今月末のように、日によって変わる期間も作れます。

たとえば開始日を今日、終了日を今月末にしたい場合は、開始日セルに =TODAY()、終了日セルに =EOMONTH(TODAY(),0) を使う考え方があります。

このように、開始日と終了日をセルに分けておけば、COUNTIFS、SUMIFS、FILTERの条件は同じまま使えます。

毎回式を書き換えるのではなく、期間を入力するセルを変える形にしておくと管理しやすくなります。

動く期間を使う場合も、日付列が本物の日付になっていることが前提です。

月別・四半期別に集計したい場合はどう考えるか

月別や四半期別に集計したい場合は、日付範囲だけで処理する方法と、分類列を作る方法があります。

毎回開始日と終了日を指定するなら日付範囲の条件で対応できますが、月別一覧や四半期別一覧を作るなら、月や四半期の列を作るほうが見やすいことがあります。

分類列を作っておくと、ピボットテーブルやSUMIFSで集計しやすくなります。

月、四半期、上期下期などの単位で何度も集計するなら、先に日付列から分類を作る設計も検討します。

日付範囲だけで無理にすべてを処理しようとすると、式が長くなり、集計の意図が分かりにくくなることがあります。

XLOOKUPとFILTERはどちらを使えばよいか

XLOOKUPは、条件に合う1件の値を取得したいときに向いています。

一方で、FILTERは条件に合う複数行を一覧で返したいときに向いています。

日付範囲で複数の明細行を取り出したい場合は、XLOOKUPよりFILTERのほうが目的に合いやすいです。

ただし、特定の日付や特定のIDに対応する1件だけを取りたいなら、XLOOKUPのほうが分かりやすい場合もあります。

迷ったときは、返したい結果が1件なのか、複数行なのかで判断します。

複数行を返したい作業にXLOOKUPを無理に使うと、式が複雑になりやすくなります。

古いExcelでFILTERが使えない場合はどうするか

FILTERが使えないExcelでは、COUNTIFSやSUMIFSで集計するか、判定列を作ってフィルターする方法を考えます。

期間内の件数や合計だけなら、FILTERがなくてもCOUNTIFSとSUMIFSで対応できます。

行の一覧を見たい場合は、判定列で期間内/期間外を表示し、オートフィルターで期間内だけを表示する方法があります。

自動で別の場所へ一覧を出すことにこだわらなければ、古いExcelでも実務上は対応しやすくなります。

共有相手のExcelでFILTERが使えない可能性がある場合は、判定列やフィルター操作を残しておくと安心です。

結果が0になるときは何から確認するか

結果が0になるときは、まず日付列が本物の日付かを確認します。

次に、開始日と終了日の入力が逆になっていないか、比較演算子が >= と <= になっているかを確認します。

そのあと、時刻付きデータ、条件範囲のずれ、担当者名や商品名の表記ゆれを確認します。

FILTERの場合は、出力先の空きスペースや、条件範囲と抽出範囲の行数も見ます。

式を何度も書き換える前に、日付の型、境界日、範囲、出力先の順で確認すると、原因を切り分けやすくなります。

スポンサーリンク
記事URLをコピーしました