メインコンテンツへスキップ

週番号または曜日ごとにExcelで値を合計する

Author: Siluvia Last Modified: 2025-08-06

このチュートリアルでは、指定された週番号または曜日に基づいて特定の範囲の値を合計するための数式をステップバイステップで説明します。

Excelで週番号ごとに値を合計するにはどうすればよいですか?
Excelで曜日ごとに値を合計するにはどうすればよいですか?


Excelで週番号ごとに値を合計するにはどうすればよいですか?

以下のスクリーンショットに示すように、指定された週番号に対応する日付に基づいて「金額」列の値を合計するために、2つの数式を提供します。

doc-sum-by-week-number-weekday-1

汎用的な数式

=SUMIFS(値範囲, ヘルパー列範囲, 週番号)

=SUMPRODUCT(--(WEEKNUM(日付範囲+0,1)=週番号),値範囲)

引数

Value_range: 週番号に基づいて合計したい値の範囲;
Helper_column_range: 日付から抽出された週番号の範囲;
Week_number: 値を合計する基準として使用される週番号。

この数式はどのように使用しますか?

SUMIFS数式とヘルパー列を使用する

SUMIFS数式を使用するには、まずWEEKNUM関数を適用してヘルパー列を作成し、「日付」列の日付に対応する週番号を計算する必要があります。

=WEEKNUM (シリアル番号, [戻り値タイプ])

WEEKNUM関数は、与えられた日付のその年の週番号を返します。

1. この場合、私は「金額」列の最初の値の隣にあるセル(F5)を選択します。

2. そのセルに以下の数式を入力し、Enterキーを押して最初の日付の週番号を取得します。結果のセルを選択し、オートフィルハンドルを下にドラッグして他の週番号を取得します。スクリーンショットをご覧ください:

=WEEKNUM(C5)

doc-sum-by-week-number-weekday-2

3. 合計金額を出力するセルを選択し、以下の数式を入力してEnterキーを押します。結果のセルを選択し、オートフィルハンドルを下にドラッグして他の結果を取得します。

=SUMIFS($E$5:$E$14, $F$5:$F$14, H6)

doc-sum-by-week-number-weekday-3

SUMPRODUCT数式を使用する

この問題を解決するためにSUMPRODUCT数式を使用する場合、ヘルパー列を作成する必要はありません。

1. 空白のセルを選択し、以下の数式を入力してEnterキーを押します。

=SUMPRODUCT(--(WEEKNUM($C$5:$C$14+0,1)=G6),$E$5:$E$14)

2. 結果のセルを選択し、必要に応じてオートフィルハンドルを下にドラッグして他の結果を取得します。

doc-sum-by-week-number-weekday-4

数式の説明

=SUMIFS($E$5:$E$14, $F$5:$F$14, H6)

WEEKNUM関数で週番号を計算した後、SUMIFS関数は、ヘルパー列F5:F14の週番号がH6の指定された週と一致する場合、範囲E5:E14の値を合計します。

=SUMPRODUCT(--(WEEKNUM($C$5:$C$14+0,1)=G6),$E$5:$E$14)

WEEKNUM($C$5:$C$14+0,1): WEEKNUM関数は、範囲C5:C14の各日付の週番号を計算し、次のような配列を返します:{1;1;5;6;6;9;11;11;13;14};
{1;1;5;6;6;9;11;11;13;14}=G6: ここで、配列内の各週番号をG6の指定された週番号と比較し、新しい配列を返します:{TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE};
--{TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}: これらの2つのマイナス記号は、「TRUE」と「FALSE」を1と0に変換します。ここでは、次のような新しい配列が得られます:{1;1;0;0;0;0;0;0;0;0};
{1;1;0;0;0;0;0;0;0;0},{1428;2010;2288;1831;2069;1728;1325;1469;1023;1100}: 配列内の各ペアのエントリが乗算され、{1428;2010;0;0;0;0;0;0;0;0}を返します;
SUMPRODUCT({1428;2010;0;0;0;0;0;0;0;0}): SUMPRODUCT関数は配列内のすべての数字を合計し、最終結果1428+2010=3438を返します。

Excelで曜日ごとに値を合計するにはどうすればよいですか?

以下のスクリーンショットに示すように、Excelで特定の曜日に基づいて「金額」列の値を合計するには、SUMPRODUCT関数とWEEKDAY関数を組み合わせて使用できます。

この場合、各曜日の合計金額を合計する必要があるため、数式を適用する前に、月曜日から日曜日をそれぞれ表す1から7までの数字を持つヘルパー列を作成します。

doc-sum-by-week-number-weekday-6

汎用的な数式

=SUMPRODUCT((WEEKDAY(日付範囲,2)=曜日番号)*値範囲)

引数

Date_range: 指定された曜日を評価する日付範囲;
Value_range: 曜日に基づいて合計したい値の範囲;
2: 数字2は、1(月曜日)から7(日曜日)までの数字を表します;
Weekday_number: 値を合計する基準として使用される曜日番号です。セル参照または1から7までの数字にすることができます。

この数式はどのように使用しますか?

1. 数字1のセルの隣のセルを選択します。ここではI6を選択します。

2. そのセルに以下の数式をコピーまたは入力し、Enterキーを押します。結果のセルを選択し、オートフィルハンドルを下にドラッグして他の曜日の結果を取得します。

=SUMPRODUCT((WEEKDAY($C$5:$C$14,2)=H6)*$E$5:$E$14)

doc-sum-by-week-number-weekday-7

注: 特定の曜日(例:金曜日)に基づいて値を合計するだけの場合、次の数式のように直接数値5を入力できます。

=SUMPRODUCT((WEEKDAY($C$5:$C$14,2)=5)*$E$5:$E$14)

数式の説明

=SUMPRODUCT((WEEKDAY($C$5:$C$14,2)=H6)*$E$5:$E$14)

WEEKDAY($C$5:$C$14,2): WEEKDAY関数は、月曜日から日曜日までの範囲C5:C14の曜日を表す1から7の整数を返します:{5;7;1;3;6;7;1;5;5;6};
{5;7;1;3;6;7;1;5;5;6}=H6: ここで、配列内の各曜日をH6の指定された曜日番号と比較し、新しい配列を返します:{FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE};
{FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE}*$E$5:$E$14: ここで、TRUEとFALSEは1と0に変換され、E5:E14の値に乗算されて次の配列を返します:{0;0;2288;0;0;0;1325;0;0;0};
SUMPRODUCT{0;0;2288;0;0;0;1325;0;0;0}: SUMPRODUCT関数は配列内のすべての数字を合計し、最終結果2288+1325=3613を返します。

関連する関数

Excel WEEKNUM関数
Excel SUMIFS関数は、その年に与えられた日付の週番号を返します。これは、1月1日から週をカウントし始めます。

Excel SUMPRODUCT関数
Excel SUMPRODUCT関数は、2つ以上の列または配列を乗算し、その後、積の合計を取得するために使用できます。

Excel WEEKDAY関数
Excel EOMONTH関数は、Excelで指定された日付の曜日を表す1から7の整数を返します。


関連する数式

月ごとに値を合計する(年ありまたはなし)
このチュートリアルでは、特定の月と年に基づいて値を合計するか、特定の月に基づいて年を無視して値を合計するための2つの数式を詳細に説明します。

指定された日付の週ごとに値を合計する
このチュートリアルでは、指定された日付が属する週に基づいて値を合計する方法について説明します。

範囲内のn行またはn列ごとに値を合計する
このチュートリアルでは、SUMおよびOFFSET関数に基づく2つの数式を説明し、Excelで指定された範囲内のn行またはn列ごとに値を合計する方法を説明します。

範囲内のn番目ごとの行または列の値を合計する
このチュートリアルでは、SUMPRODUCT、MOD、COLUMN関数に基づいて数式を作成し、Excelで範囲内のn番目ごとの行または列の値を合計する方法を紹介します。


最高のオフィス生産性ツール

Kutools for Excel - 群衆から一歩抜け出すためのお手伝い

🤖 KUTOOLS AI アシスタント: 次の基盤でデータ分析を革新: スマート実行   |  コード生成  |  カスタム数式を作成  |  データを分析しチャートを生成  |  Kutools 機能を呼び出し
人気機能: 重複を検索、ハイライト、または特定  |  空白行を削除  |  データを失うことなく列やセルを結合  |  数式を使わずに丸める ...
スーパーVLookup: 複数条件 | 複数値 | 複数シート間 | ファジーマッチ...
高度なドロップダウンリスト: 簡単ドロップダウンリスト  |  依存ドロップダウンリスト  |  複数選択ドロップダウンリスト...
列マネージャー: 特定の数の列を追加 |  列を移動 |  非表示列の可視性ステータスを切り替え 列を比較して同じおよび異なるセルを選択 ...
注目機能: グリッドフォーカス |  デザインビュー |  強化された数式バー |  ワークブックとシートマネージャー | リソースライブラリ (オートテキスト) |  日付ピッカー |  ワークシートを統合 |  セルの暗号化/復号化 |  リストによるメール送信 |  スーパーフィルター |  特殊フィルタ(太字、斜体、取り消し線のフィルタリング...) ...
上位15のツールセット12個の テキストツールテキストの追加特定の文字を削除 ...) |  50以上の チャート タイプガントチャート ...) |  40以上の実用的な 数式誕生日に基づいて年齢を計算 ...) |  19個の 挿入ツールQRコードの挿入パスからの画像挿入 ...) |  12個の 変換ツール単語に変換する通貨変換 ...) |  7つの マージ&分割ツール高度な行のマージExcelセルの分割 ...) |  ... など
お好みの言語でKutoolsを使用できます。英語、スペイン語、ドイツ語、フランス語、中国語、その他の40以上の言語に対応!

Kutools for Excelは300以上の機能を誇り、必要なものがクリック一つで利用可能です...


Office Tab - Microsoft Office(Excel含む)でタブ形式の読み書きを可能に

  • 数十の開いている文書間を1秒で切り替え!
  • 毎日数百回のマウスクリックを減らし、マウス疲れとはおさらば!
  • 複数の文書を閲覧・編集する際の作業効率を50%向上します。
  • Chrome、Edge、Firefoxのように、Office(Excel含む)に効率的なタブをもたらします。