KutoolsforOffice— 1 つのソリューション、5 つの強力なツール。少ない労力で大きな成果。

Excel で同じ日付を持つ対応する値を合計するには?

著者Xiaoyang変更日

Excel のデータセットで重複する日付エントリを扱う際、各日付に関連付けられた数値データを集計する必要がよく生じます。たとえば、下図の A1:B13 範囲のような注文レコードを管理していると仮定しましょう。列 A には日付(一部の日付が複数回出現)、列 B には対応する注文数が記録されています。このようなデータから、各固有の日付ごとに注文総数を合計して集計結果を作成したい場合、Excel にはこのタスクを効率的かつ正確に実行できる複数の方法が用意されています。この機能は、日々の売上集計やログレコードの統合、あるいは同一の時間ポイントに基づくデータ集約が必要なあらゆるシナリオで非常に役立ちます。適切な方法を選べば、手作業による負担を大幅に軽減し、データの正確性もしっかり確保できます。

同じ日付の対応する値を合計


同じ日付に基づいて対応する値を数式で合計する

最も直接的で効果的な解決策の一つは、Excel のSUMIF 関数を使うことです。この方法は、ソースデータが変更されると自動的に集計結果が更新される動的な仕組みを構築したい場合に特に適しています。数式を使ったアプローチは設定が簡単で、極端に大規模でないデータ範囲に対しては非常にスムーズに動作します。以下の手順に従ってください。

1。特定の日付の合計を表示したい空白セル(例:E2)に、次の数式を入力してください。

=SUMIF($A$2:$A$13,D2,$B$2:$B$13)

同じ日付に基づいて相対値を合計する数式を入力

上記の数式について:

  • A2:A13: 日付を評価する範囲
  • B2:B13: 合計する値が含まれる範囲
  • D2: 合計値を取得したい日付を指定する「条件」セル

2。数式を入力したセルのフィルハンドルを下方向にドラッグすると、その下にあるすべての固有の日付に対して数式が適用され、各セルに該当する日付の合計値が表示される集計列が作成されます。スクリーンショットをご参照ください。

数式を他のセルにドラッグしてコピー

ヒントと注意点:

  • 元の範囲に新しいデータを追加する際は、数式の範囲()A2:A13B2:B13)も忘れずに更新してください。
  • 構造化テーブルを使用する際は、より柔軟性を持たせるためにテーブル参照の条件名をご活用ください(例:=SUMIF(Table1[Date], D2, Table1[Amount]))。
  • データにエラー(テキスト入力や空のセルなど)が含まれている場合は、正確な合計を得るために元のセルの内容をご確認ください。
  • この方法は小規模から中規模のデータセットに最適です。非常に大規模なデータセットの場合は、高速な集計のためにピボットテーブルを使用するのが効果的です。
  • Excel 365/2021 以降でUNIQUE 関数を D2 セルに使って重複しない日付を一覧表示するには、次のように入力します:=UNIQUE(A2:A13)。その後、SUMIF 関数を組み合わせてご使用ください。

同じ日付に基づいて対応する値を Kutools for Excel で合計する

Kutools for Excel がインストールされている場合高度な行のマージツールを使えば、この作業がさらに簡単に!この機能を使えば、任意のキー項目(今回の場合は日付)で行を統合し、対応する値を自動的に合計できるため、時間の節約はもちろん、数式エラーのリスクも大幅に軽減します。特に、大規模なデータ範囲での集計や、繰り返しの結合・計算操作を頻繁に行うユーザーに最適です。

Kutools for Excelは300 以上の高度な機能を提供し、複雑な作業を効率化して、創造性と生産性を高めます。AI 機能と統合されたKutools は、正確にタスクを自動化し、データ管理を簡単にします。Kutools for Excel の詳細情報。。。         無料トライアル。。。

Kutools for Excelをインストールした後、以下の手順に従ってください。

1。合計したい同じ日付のデータ範囲を選択してください。(このツールはデータレイアウトを変更するため、実行前に元のデータのバックアップを取ることを強くおすすめします。)

2Kutools > 結合と分割 > 高度な行のマージをクリックします。

Kutools の「高度な行の結合」機能をクリック

3。ダイアログボックスでDate 列を選択し、「主キー」として設定します。次に、合計したい列(例:「Order」)を選択し、「計算」セクションで「合計」を指定します。この設定により、Kutools は同一の日付を持つ行をグループ化し、数値を合計して結合します。

ダイアログボックスでオプションを指定

4。OKをクリックすると、Kutools が即座に集計リストを生成します。これにより、各固有の日付に対応する金額が1 行に合計されます。以下をご参照ください。

元のデータ右矢印Kutools で同じ日付の値を SUMIF
メリット手作業を最小限に抑えながらデータを簡単に統合・計算できます。特に、さまざまなフィールドタイプを定期的にグループ化および集計する必要があるユーザーに役立ち、合計以外にも平均、カウント、最大値/最小値の検索などの操作オプションを提供します。

同じ日付に基づいて対応する値を VBA コードで合計する

自動化やプログラムによる操作を求めるユーザーにとって、VBA(Visual Basic for Applications)は日付ごとの値を集計し、その結果を新しい範囲に柔軟にエクスポートするための強力な手段を提供します。VBA は、繰り返し処理の自動化、大規模データセットの操作、あるいはExcel の組み込み数式や機能だけでは要件を満たせない場合に、より広範なワークフローへの集計機能の統合に最適です。

1開発者タブVisual Basicをクリックし、Microsoft Visual Basic for Applications エディターを開きます。ウィンドウ内で挿入から標準モジュールをクリックし、以下のコードをモジュールに貼り付けます。

Sub SumValuesByDate()
    Dim SourceRange As Range
    Dim OutputRange As Range
    Dim Dict As Object
    Dim Cell As Range
    Dim iRow As Long
    Dim LastRow As Long
    Dim ws As Worksheet
    Dim kDate As Variant
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set ws = Application.ActiveSheet
    
    ' Prompt for source data range containing dates and values
    Set SourceRange = Application.InputBox("Select the source data range (dates in first column, values in second):", xTitleId, ws.Range("A2:B13").Address, Type:=8)
    
    If SourceRange Is Nothing Then Exit Sub
    
    ' Prompt for output location
    Set OutputRange = Application.InputBox("Select the cell to output summary (top-left cell):", xTitleId, "E1", Type:=8)
    
    If OutputRange Is Nothing Then Exit Sub
    
    Set Dict = CreateObject("Scripting.Dictionary")
    
    ' Loop through data and sum by date
    For iRow = 1 To SourceRange.Rows.Count
        kDate = SourceRange.Cells(iRow, 1).Value
        If kDate <> "" And IsDate(kDate) Then
            If Dict.Exists(kDate) Then
                Dict(kDate) = Dict(kDate) + SourceRange.Cells(iRow, 2).Value
            Else
                Dict.Add kDate, SourceRange.Cells(iRow, 2).Value
            End If
        End If
    Next
    
    ' Write header
    OutputRange.Cells(1, 1).Value = "Date"
    OutputRange.Cells(1, 2).Value = "Sum"
    
    ' Write result to output range
    iRow = 2
    For Each kDate In Dict.Keys
        OutputRange.Cells(iRow, 1).Value = kDate
        OutputRange.Cells(iRow, 2).Value = Dict(kDate)
        iRow = iRow + 1
    Next
End Sub

2実行ボタン実行ボタンをクリックするか、F5キーを押してマクロを実行します。

3。ダイアログボックスが表示されるので、元のデータ範囲を選択してください(日付が最初の列に、値が2 番目の列にあることを確認してください)。その後、別のダイアログで結果の出力先(例:E1 セル)を指定できます。

4。確認後、選択した出力セルを起点に、日付とその対応する値の合計からなる集計表が自動生成されます。

ヒントとエラーに関する注意点:

  • このマクロは、リスト内の位置にかかわらず、重複する日付を自動的に処理します。
  • 出力先として元のデータが上書きされてしまう場所を選択した場合、マクロはその上書きを防ぎません。必ず空白の領域を選択してください。
  • マクロは日付列の空白セルや日付以外の値を自動的にスキップします。最良の結果を得るには、あらかじめデータを整理しておくことをおすすめします。
  • この方法は、繰り返し発生する集計作業の自動化や、バッチ処理によるデータ操作タスクへの組み込みに最適です。

VBA は、自動化されたバッチ処理が必要な場合や手動操作を避けたい場面に最適です。特に、大規模または定期的に発生するデータ統合タスクに非常に適しています。ただし、集計作業がごくたまに行う程度であれば、数式やピボットテーブルを使った方がシンプルです。


同じ日付に基づいて対応する値を PivotTable で合計する

ピボットテーブルは、数式を使わず数回クリックするだけで、日付ごとのデータを簡単にグループ化・集計できる便利な機能です。特に大規模なデータセットや、データをインタラクティブに調査・分析したい場面に最適です。また、データが変更されると自動で更新されるため、継続的なレポートやダッシュボードにもぴったりです。

1。見出しを含む元のデータ範囲(例:A1:B13)を選択します。

2。「挿入」タブに移動し、「ピボットテーブル」を選択します。ダイアログボックスでデータ範囲を確認し、ピボットテーブルの配置場所(新しいワークシートまたは既存のワークシート)を選択してください。

3。PivotTable フィールド一覧で、「日付」フィールドを「」エリアにドラッグし、「注文」(またはその他の値フィールド)を「」エリアにドラッグします。すると、Excel が各日付ごとに自動的に値を集計します。

4。元のデータが変更されたら、PivotTable を右クリックして「更新」を選択し、PivotTable の結果を最新の状態に保ちましょう。

メリット:PivotTable を使えば、関数やコードを一切使わずに、インタラクティブなフィルタリング・並べ替え・グループ化で詳細なデータ分析が可能。小規模から大規模なデータセットまで、高いスケーラビリティと信頼性を実現します。
デメリット:セルの数式に直接計算を組み込む柔軟性はやや低く、一部のユーザーは PivotTable のインターフェースに慣れるまでに少し時間がかかるかもしれません。

トラブルシューティングと実用的な提案:

  • 必ず、データ範囲に見出しが含まれており、かつデータ型が一貫していることを確認してください。
  • PivotTable に期待通りの重複しない日付が表示されない場合は、非表示の書式設定を確認するか、「グループ解除」をお試しください。
  • 複数の計算フィールドを追加したり、月次・四半期・年次の単位でグループ化したりすることで、より広範な集計が可能です。

最高の Office 業務効率化ツール

🤖KUTOOLS AI アシスタント:次に基づいてデータ分析を革新します:インテリジェント実行     コード生成  カスタム数式作成    データ分析とチャート生成  拡張機能呼び出し
人気の機能検索・ハイライト、または重複をマーキング     空白行を削除する     データを失うことなく列の結合またはセルを     数式を使用しない四捨五入...
スーパー LOOKUP複数条件 VLookup    複数値 VLookup     複数シート間 VLookup      ファジーマッチ....
高度なドロップダウンリストドロップダウンリストをすばやく作成     連動型ドロップダウンリスト     複数選択可能なドロップダウンリスト....
列マネージャー指定した数の列を追加列の移動非表示列の表示状態を切り替え範囲および列の比較...
注目の機能グリッドフォーカス     デザインビュー   強化された数式バー    ワークブックとシートマネージャー     リソースライブラリ(オートテキスト)  日付ピッカー     ワークシートの統合    暗号化/セルの復号化    リストからメール送信     スーパーフィルター      特殊フィルタ(太字のフォントを持つセルをフィルタリング/斜体/取り消し線。。。) 。。。
トップ15 ツールセット12 テキストツールテキストの追加特定の文字を削除、...)   50+チャートタイプガントチャート、...)   40+実用的関数誕生日に基づいて年齢を計算します、...)   19 挿入ツールQR コードを挿入パスから画像を挿入、...)   12 変換ツール単語に変換する為替レートの変換、...)   7 結合と分割ツール高度な行のマージセルの分割、...)さらに多数
Kutools はお好みの言語でご利用いただけます。英語、スペイン語、ドイツ語、フランス語、中国語、および40+の他の言語をサポートしています!

Kutools for Excel でExcel スキルを強化し、これまでにない効率を体験しましょう。Kutools for Excel は、生産性を高め、時間を大幅に節約できる高度な機能を300 以上提供します。最も必要な機能を今すぐ入手するにはこちらをクリック。。。


Office Tab は Office にタブインターフェースをもたらし、作業を大幅に簡単にします

  • Word、Excel、PowerPoint でタブを使った編集と閲覧を有効にします。Publisher、Access、Visio、Project でもご利用いただけます。
  • 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
  • 日々の生産性を50%も向上させ、毎日数百回ものマウスクリックを削減します!

すべてのKutools アドインが、たった1 つのインストーラーで完結。

Kutools for Officeスイートには、Excel ・Word ・Outlook ・PowerPoint 用のアドインと Office Tab Pro が含まれており、複数の Office アプリを横断して作業するチームに最適です。

ExcelWordOutlookTabsPowerPoint
  • オールインワンスイート— Excel、Word、Outlook、PowerPoint 用アドイン+Office Tab Pro
  • インストーラー1 つ、ライセンス1 つ— 数分でセットアップ可能(MSI 対応)
  • 連携してさらにパワーアップ— Office アプリ全体で生産性が向上
  • 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
  • 最高のお得感— 個別アドイン購入よりお得