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

Excelで重複行を結合し、値を合計する(簡単なテクニック)

Author: Xiaoyang Last Modified: 2025-08-06

Excelでは、重複エントリを含むデータセットに遭遇することはよくあるシナリオです。多くの場合、キーとなる課題は、これらの重複行を効率的に統合すると同時に、対応する列の値を合計することであるデータ範囲に直面することがあります。この文脈では、重複データを統合し、関連する値を集約して、Excelワークブックの明確さと有用性を向上させるためのいくつかの実用的な方法を探ります。


統合機能を使用して重複行を結合し、値を合計する

統合機能は、Excelで複数のワークシートや行を統合するための便利なツールであり、この機能を使用することで、重複行を簡単に結合し、対応する値を迅速に合計することができます。以下の手順で操作してください:

ステップ 1: 出力先セルを選択

統合されたデータが表示される場所を選択します。

ステップ 2: 統合機能にアクセスし、統合を設定

  1. 「データ」>「統合」をクリックします。スクリーンショットをご覧ください:
    A screenshot of the Consolidate option in Excel ribbon
  2. 「統合」ダイアログボックスで:
    • (1.) 「関数」ドロップダウンリストから「合計」を選択します;
    • (2.) 「参照」ボックスで統合したい範囲を選択します;
    • (3.) 「ラベルの位置」オプションから「最上行」と「最も左の列」をチェックします;
    • (4.) 最後に、「OK」ボタンをクリックします。
    • A screenshot of the options in the Consolidate dialog box, including Function, Reference, and Use labels in settings

結果:

Excelは最初の列にある重複を結合し、隣接する列の対応する値を合計します。次のスクリーンショットをご覧ください:

A screenshot of Excel after consolidation, showing combined duplicate rows and summed values

注意:
  • 範囲にヘッダー行が含まれていない場合は、「ラベルの位置」オプションから「最上行」のチェックを外してください。
  • この機能では、計算はデータの最初の列(最も左の列)に基づいてのみ統合できます。

Kutoolsを使用して重複行を結合し、値を合計する

「Kutools for Excel」をインストールしている場合、「高度な行のマージ」機能を使用して、重複行を簡単に結合でき、データに対して合計、カウント、平均、またはその他の計算を行うオプションが提供されます。さらに、この機能は1つのキーカラムに限定されず、複数のキーカラムを処理できるため、複雑なデータ統合タスクがより簡単になります。

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

「Kutools for Excel」をインストール後、データ範囲を選択し、「Kutools」>「マージと分割」>「高度な行のマージ」をクリックします。

「高度な行のマージ」ダイアログボックスで、次の操作を設定してください:

  1. 重複を結合する基準となる列名をクリックします。ここでは「Product」をクリックし、「操作」列のドロップダウンリストから「メイン」を選択します;
  2. 次に、値を合計したい列名を選択し、「操作」列のドロップダウンリストから「合計」を選択します;
  3. 他の列については、必要な操作を選択できます。たとえば、特定の区切り文字で値を結合したり、特定の計算を実行したりします。(列が2つしかない場合は、このステップは無視できます)
  4. 最後に、結合結果をプレビューして「OK」ボタンをクリックします。
  5. A screenshot of Kutools' Advanced Combine Rows dialog box, with options to combine duplicates and sum values

結果:

これで、キーカラム内の重複値が結合され、他の対応する値が合計されました。次のスクリーンショットをご覧ください:

A screenshot showing the result of combining duplicate rows and summing values in Excel using Kutools

ヒント:
  • この便利な機能を使用すると、次のデモのように、重複するセル値に基づいて行を結合することもできます:
    An animated demonstration of combining rows based on duplicate values in Excel using Kutools
  • この機能は「元に戻す」をサポートしており、元のデータを復元したい場合は「Ctrl + Z」を押すだけです。
  • この機能を使用するには、Kutools for Excelをダウンロードしてインストールしてください。

ピボットテーブルを使用して重複行を結合し、値を合計する

Excelのピボットテーブルは、データを動的に再配置、グループ化、集計する方法を提供します。この機能は、重複エントリが多数含まれるデータセットがあり、対応する値を合計する必要がある場合に非常に役立ちます。

ステップ 1: ピボットテーブルを作成

  1. データ範囲を選択し、「挿入」タブに移動して「ピボットテーブル」をクリックします。スクリーンショットをご覧ください:
    A screenshot of selecting the Pivot Table option from the Insert tab in Excel
  2. ポップアップしたダイアログボックスで、ピボットテーブルレポートを配置する場所を選択します。新しいシートまたは既存のシートに配置できます。その後、「OK」をクリックします。スクリーンショットをご覧ください:
    A screenshot of the Pivot Table dialog box, where you can choose to insert the table in a new or existing sheet
  3. これで、選択した宛先セルにピボットテーブルが挿入されました。スクリーンショットをご覧ください:
    A screenshot showing a blank Pivot Table inserted in the Excel worksheet

ステップ 2: ピボットテーブルの設定: 

  1. 「ピボットテーブルフィールド」ペインで、重複を含むフィールドを「行」エリアにドラッグします。これにより、重複がグループ化されます。
  2. 次に、合計したい値を持つフィールドを「値」エリアにドラッグします。デフォルトでは、Excelは値を合計します。以下のデモをご覧ください:
  3. An animated demonstration of configuring the Pivot Table fields to group duplicates and sum values in Excel

結果:

ピボットテーブルは、重複が結合され、値が合計されたデータを表示し、分析に適した明確で簡潔なビューを提供します。スクリーンショットをご覧ください:

A screenshot showing the result of combining duplicate rows and summing values using a Pivot Table in Excel


VBAコードを使用して重複行を結合し、値を合計する

VBAコードに興味がある場合、このセクションでは、重複行を統合し、他の列の対応する値を合計するためのVBAコードを紹介します。以下の手順で操作してください:

ステップ 1: VBAシートモジュールエディターを開き、コードをコピー

  1. Excelで「ALT + F11」キーを押して「Microsoft Visual Basic for Applications」ウィンドウを開きます。
  2. 「挿入」>「モジュール」をクリックし、以下のコードを「モジュール」ウィンドウに貼り付けます。
    VBAコード:重複行を結合し、値を合計する
    Sub CombineDuplicateRowsAndSumForMultipleColumns()
    'Update by Extendoffice
        Dim SourceRange As Range, OutputRange As Range
        Dim Dict As Object
        Dim DataArray As Variant
        Dim i As Long, j As Long
        Dim Key As Variant
        Dim ColCount As Long
        Dim SumArray() As Variant
        Dim xArr As Variant
        Set SourceRange = Application.InputBox("Select the original range:", "Kutools for Excel", Type:=8)
        If SourceRange Is Nothing Then Exit Sub
        ColCount = SourceRange.Columns.Count
        Set OutputRange = Application.InputBox("Select a cell for output:", "Kutools for Excel", Type:=8)
        If OutputRange Is Nothing Then Exit Sub
        Set Dict = CreateObject("Scripting.Dictionary")
        DataArray = SourceRange.Value
        For i = 1 To UBound(DataArray, 1)
            Key = DataArray(i, 1)
            If Not Dict.Exists(Key) Then
                ReDim SumArray(1 To ColCount - 1)
                For j = 2 To ColCount
                    SumArray(j - 1) = DataArray(i, j)
                Next j
                Dict.Add Key, SumArray
            Else
                xArr = Dict(Key)
                For j = 2 To ColCount
                    xArr(j - 1) = xArr(j - 1) + DataArray(i, j)
                Next j
                Dict(Key) = xArr
            End If
        Next i
        OutputRange.Resize(Dict.Count, ColCount).ClearContents
        i = 1
        For Each Key In Dict.Keys
            OutputRange.Cells(i, 1).Value = Key
            For j = 1 To ColCount - 1
                OutputRange.Cells(i, j + 1).Value = Dict(Key)(j)
            Next j
            i = i + 1
        Next Key
        Set Dict = Nothing
        Set SourceRange = Nothing
        Set OutputRange = Nothing
    End Sub
    

ステップ 2: コードを実行

  1. コードを貼り付けたら、「F5」キーを押してコードを実行します。プロンプトボックスで、結合して合計したいデータ範囲を選択し、「OK」をクリックします。
    A screenshot of selecting the data range in the VBA input box to combine and sum duplicate rows
  2. 次のプロンプトボックスで、結果を出力するセルを選択し、「OK」をクリックします。
    A screenshot of selecting the output cell in the VBA input box for combined and summed results

結果:

これで、重複行がマージされ、対応する値が合計されました。スクリーンショットをご覧ください:

A screenshot of the results after running the VBA code to combine duplicate rows and sum their values


Excelでの重複行の結合と合計は、シンプルで効率的に行うことができます。簡単な統合機能、高度なKutools、分析的なピボットテーブル、柔軟なVBAコーディングの中から、自分のスキルとニーズに合ったソリューションを選んでください。さらに多くのExcelのヒントやコツに興味がある方は、当サイトで数千ものチュートリアルを提供していますので、 こちらをクリックしてアクセスしてください。お読みいただきありがとうございます。今後も役立つ情報を提供できることを楽しみにしています!


関連記事:

  • 重複に基づいて複数の行を1つに結合する
  • 例えば、A列の商品名にいくつかの重複項目があり、A列の重複エントリを削除しつつ、B列の対応する値を結合する必要があります。Excelでこのタスクをどのように解決すればよいでしょうか?
  • 重複なしで複数の値をVlookupして返す
  • 時々、一度に複数の一致する値を単一のセルに返したい場合があります。しかし、返されるセルに繰り返しの値が含まれている場合、すべての一致する値を返す際に重複を無視して一意の値のみを保持するにはどうすればよいでしょうか?次のスクリーンショットに示すようにExcelでこのタスクを達成する方法を見てみましょう。
  • 同じID/名前を持つ行を結合する
  • 例えば、下記のスクリーンショットのような表があり、注文IDで行を結合する必要があります。何かアイデアはありますか?この記事では、2つの解決策をご紹介します。
{# article_1268_afterDisplayContent #}