年と月別にExcelで日付の数をカウントする
Excelワークシートで作業しているとき、特定の年または月に基づいて日付が含まれるセルの数をカウントしたい場合があります(以下のスクリーンショット参照)。このタスクを解決するために、ExcelではSUMPRODUCT、YEAR、MONTH関数を使用して、特定の年または月に属する日付の数をカウントするための数式を作成できます。
指定された年の日付の数をカウントする
指定された年の日付の数をカウントするには、SUMPRODUCT関数とYEAR関数を組み合わせることができます。一般的な構文は次のとおりです:
- date_range: カウントしたい日付を含むセルのリスト;
- year: カウントしたい年を表す値またはセル参照。
1. 結果を得たい空白のセルに、以下の数式を入力またはコピーします:
注: この数式では、A2:A14は日付を含むセル範囲であり、C2はカウントしたい特定の年を含んでいます。
2. 次に、フィルハンドルを下にドラッグしてこの数式を他のセルに適用すると、指定された年に基づく日付の数が得られます(スクリーンショット参照):
数式の説明:
=SUMPRODUCT(--(YEAR($A$2:$A$14)=C2))
- YEAR($A$2:$A$14)=C2YEAR関数は、日付のリストから年を抽出し、次のように表示されます:{2020;2019;2020;2021;2020;2021;2021;2021;2019;2020;2021;2019;2021};
そして、各年がC2セル内の年と比較され、TRUEおよびFALSE値の配列が返されます:{FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE}。 - --(YEAR($A$2:$A$14)=C2)=--{FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE}: この二重の負符号は、TRUE値を1に、FALSE値を0に変換します。結果として次のような配列が得られます:{0;1;0;0;0;0;0;0;1;0;0;1;0}。
- SUMPRODUCT(--(YEAR($A$2:$A$14)=C2))= SUMPRODUCT({0;1;0;0;0;0;0;0;1;0;0;1;0}): 最後に、このSUMPRODUCT関数は配列内のすべての項目を合計し、結果を返します:3。
指定された月の日付の数をカウントする
指定された月に基づいて日付の数をカウントしたい場合、SUMPRODUCT関数とMONTH関数を使用することができます。一般的な構文は次のとおりです:
- date_range: カウントしたい日付を含むセルのリスト;
- month: カウントしたい月を表す値またはセル参照。
1. 結果を得たい空白のセルに、以下の数式を入力またはコピーします:
注: この数式では、A2:A14は日付を含むセル範囲であり、C2はカウントしたい特定の月を含んでいます。
2. 次に、フィルハンドルを下にドラッグしてこの数式を他のセルに適用すると、指定された月に基づく日付の数が得られます(スクリーンショット参照):
数式の説明:
=SUMPRODUCT(--(MONTH($A$2:$A$14)=C2))
- MONTH($A$2:$A$14)=C2このMONTH関数は、日付のリストから月番号を抽出し、次のように表示されます:{12;3;8;4;8;12;5;5;10;5;7;12;5}。
そして、各月がC2セル内の月番号と比較され、TRUEおよびFALSE値の配列が返されます:{FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;TRUE;TRUE;FALSE;TRUE;FALSE;FALSE;TRUE}。 - --(MONTH($A$2:$A$14)=C2)= --{FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;TRUE;TRUE;FALSE;TRUE;FALSE;FALSE;TRUE} : この二重の負符号は、TRUE値を1に、FALSE値を0に変換します。結果として次のような配列が得られます:{0;0;0;0;0;0;1;1;0;1;0;0;1}。
- SUMPRODUCT(--(MONTH($A$2:$A$14)=C2))= SUMPRODUCT({0;0;0;0;0;0;1;1;0;1;0;0;1}): このSUMPRODUCT関数は配列内のすべての項目を合計し、結果を返します:4。
年と月の両方で日付の数をカウントする
例えば、2021年5月にある日付の数を知りたい場合など、年と月の両方に基づいて日付の数をカウントしたい場合があります。
このような場合、SUMPRODUCT、MONTH、YEAR関数を組み合わせて使用することで結果を得ることができます。一般的な構文は次のとおりです:
- date_range: カウントしたい日付を含むセルのリスト;
- month: カウントしたい月を表す値またはセル参照;
- year: カウントしたい年を表す値またはセル参照。
結果を出力するための空白のセルに、以下の数式を入力またはコピーし、Enterキーを押して計算を行ってください(スクリーンショット参照):
注: 上記の数式では、A2:A14は日付を含むセル範囲であり、D2はカウントしたい特定の月、C2はカウントしたい年を表しています。
関連する関数:
- SUMPRODUCT:
- SUMPRODUCT関数は、2つ以上の列または配列を乗算し、積の合計を取得するために使用できます。
- MONTH:
- ExcelのMONTH関数は、日付から月を抽出し、1から12までの整数として表示します。
- YEAR:
- YEAR関数は、与えられた日付に基づいて4桁のシリアル番号形式で年を返します。
その他の記事:
- 2つの値/日付間のセル数をカウントする
- 以下のように、Excelで2つの指定された数字や日付の間にあるセルの数を取得またはカウントしようとしたことはありますか?この記事では、それを処理するための便利な数式について説明します。
- 曜日ごとに範囲内の日付セルの数をカウントする
- Excelは、SUMPRODUCTとWEEKDAY関数の組み合わせを提供しており、これにより簡単に指定された曜日の数を範囲内でカウントできます。このチュートリアルでは、ステップバイステップガイドを提供します。
- 特定のテキストを含むセルの数をカウントする
- 例えば、特定のテキスト文字列のリストがあり、その内容の一部として特定のテキストを含むセルの数を見つけたい場合があるかもしれません。このような場合、COUNTIF関数を使用する際にワイルドカード文字(*)を使用して任意のテキストや文字を条件に含めることができます。この記事では、Excelでこのジョブを処理するための数式の使い方を紹介します。
最高のオフィス生産性ツール
Kutools for Excel - あなたを群衆から際立たせるツール
🤖 | Kutools AI Aide: 次の要素に基づいてデータ分析を革新:インテリジェント実行|コード生成 |カスタム数式の作成|データの分析とチャートの生成 |Kutools機能の呼び出し… |
人気の機能:重複を見つける、ハイライトする、または特定する | 空白行を削除 | データを失うことなく列やセルを結合 | 数式を使わずに丸める... | |
スーパー VLookup:複数条件 | 複数値 | 複数シート間 | ファジーマッチ... | |
高度なドロップダウンリスト:簡単なドロップダウンリスト | 従属ドロップダウンリスト | 複数選択可能なドロップダウンリスト... | |
列マネージャー:指定した数の列を追加 | 列を移動 | 非表示の列の可視化ステータスを切り替え | 列を比較して同じ&異なるセルを選択... | |
特徴的な機能:グリッドフォーカス | デザインビュー | 強化された数式バー | ワークブックとシートマネージャー | リソースライブラリ(オートテキスト) | 日付ピッカー | ワークシートの統合 | セルの暗号化/復号化 | リストによるメール送信 | スーパーフィルター | 特殊フィルタ(太字/斜体/取り消し線のフィルタリング...)... | |
上位 15 のツールセット: 12 個のテキストツール (テキストの追加, 特定の文字を削除...) | 50以上 のチャート タイプ (ガントチャート...) | 40以上の実用的な 数式 (誕生日に基づいて年齢を計算...) | 19 個の挿入ツール (QRコードの挿入, パスからの画像挿入...) | 12 個の変換ツール (単語に変換, 通貨変換...) | 7 個のマージ&分割ツール (高度な行のマージ, Excelセルの分割...) | ... さらに多くのツール |
Kutools for Excel は300以上の機能を誇り、必要なものがワンクリックで手に入ります...
Office Tab - Microsoft Office(Excel含む)でタブ形式の閲覧と編集を有効にする
- 数十の開いている文書を1秒で切り替える!
- 毎日数百回のマウスクリックを減らし、マウス手から解放されます。
- 複数の文書を閲覧・編集する際、生産性が50%向上します。
- Chrome、Edge、Firefoxのように、タブ機能をOffice(Excel含む)にもたらします。