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

重複行を結合し、値を合計する
統合機能を使用して重複行を結合し、値を合計する
統合機能は、Excelで複数のワークシートや行を統合するための便利なツールであり、この機能を使用することで、重複行を簡単に結合し、対応する値を迅速に合計することができます。以下の手順で操作してください:
ステップ 1: 出力先セルを選択
統合されたデータが表示される場所を選択します。
ステップ 2: 統合機能にアクセスし、統合を設定
- 「データ」>「統合」をクリックします。スクリーンショットをご覧ください:
- 「統合」ダイアログボックスで:
- (1.) 「関数」ドロップダウンリストから「合計」を選択します;
- (2.) 「参照」ボックスで統合したい範囲を選択します;
- (3.) 「ラベルの位置」オプションから「最上行」と「最も左の列」をチェックします;
- (4.) 最後に、「OK」ボタンをクリックします。
結果:
Excelは最初の列にある重複を結合し、隣接する列の対応する値を合計します。次のスクリーンショットをご覧ください:
- 範囲にヘッダー行が含まれていない場合は、「ラベルの位置」オプションから「最上行」のチェックを外してください。
- この機能では、計算はデータの最初の列(最も左の列)に基づいてのみ統合できます。
Kutoolsを使用して重複行を結合し、値を合計する
「Kutools for Excel」をインストールしている場合、「高度な行のマージ」機能を使用して、重複行を簡単に結合でき、データに対して合計、カウント、平均、またはその他の計算を行うオプションが提供されます。さらに、この機能は1つのキーカラムに限定されず、複数のキーカラムを処理できるため、複雑なデータ統合タスクがより簡単になります。
「Kutools for Excel」をインストール後、データ範囲を選択し、「Kutools」>「マージと分割」>「高度な行のマージ」をクリックします。
「高度な行のマージ」ダイアログボックスで、次の操作を設定してください:
- 重複を結合する基準となる列名をクリックします。ここでは「Product」をクリックし、「操作」列のドロップダウンリストから「メイン」を選択します;
- 次に、値を合計したい列名を選択し、「操作」列のドロップダウンリストから「合計」を選択します;
- 他の列については、必要な操作を選択できます。たとえば、特定の区切り文字で値を結合したり、特定の計算を実行したりします。(列が2つしかない場合は、このステップは無視できます)
- 最後に、結合結果をプレビューして「OK」ボタンをクリックします。
結果:
これで、キーカラム内の重複値が結合され、他の対応する値が合計されました。次のスクリーンショットをご覧ください:
- この便利な機能を使用すると、次のデモのように、重複するセル値に基づいて行を結合することもできます:
- この機能は「元に戻す」をサポートしており、元のデータを復元したい場合は「Ctrl + Z」を押すだけです。
- この機能を使用するには、Kutools for Excelをダウンロードしてインストールしてください。
ピボットテーブルを使用して重複行を結合し、値を合計する
Excelのピボットテーブルは、データを動的に再配置、グループ化、集計する方法を提供します。この機能は、重複エントリが多数含まれるデータセットがあり、対応する値を合計する必要がある場合に非常に役立ちます。
ステップ 1: ピボットテーブルを作成
- データ範囲を選択し、「挿入」タブに移動して「ピボットテーブル」をクリックします。スクリーンショットをご覧ください:
- ポップアップしたダイアログボックスで、ピボットテーブルレポートを配置する場所を選択します。新しいシートまたは既存のシートに配置できます。その後、「OK」をクリックします。スクリーンショットをご覧ください:
- これで、選択した宛先セルにピボットテーブルが挿入されました。スクリーンショットをご覧ください:
ステップ 2: ピボットテーブルの設定:
- 「ピボットテーブルフィールド」ペインで、重複を含むフィールドを「行」エリアにドラッグします。これにより、重複がグループ化されます。
- 次に、合計したい値を持つフィールドを「値」エリアにドラッグします。デフォルトでは、Excelは値を合計します。以下のデモをご覧ください:
結果:
ピボットテーブルは、重複が結合され、値が合計されたデータを表示し、分析に適した明確で簡潔なビューを提供します。スクリーンショットをご覧ください:
VBAコードを使用して重複行を結合し、値を合計する
VBAコードに興味がある場合、このセクションでは、重複行を統合し、他の列の対応する値を合計するためのVBAコードを紹介します。以下の手順で操作してください:
ステップ 1: VBAシートモジュールエディターを開き、コードをコピー
- Excelで「ALT + F11」キーを押して「Microsoft Visual Basic for Applications」ウィンドウを開きます。
- 「挿入」>「モジュール」をクリックし、以下のコードを「モジュール」ウィンドウに貼り付けます。
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: コードを実行
- コードを貼り付けたら、「F5」キーを押してコードを実行します。プロンプトボックスで、結合して合計したいデータ範囲を選択し、「OK」をクリックします。
- 次のプロンプトボックスで、結果を出力するセルを選択し、「OK」をクリックします。
結果:
これで、重複行がマージされ、対応する値が合計されました。スクリーンショットをご覧ください:
Excelでの重複行の結合と合計は、シンプルで効率的に行うことができます。簡単な統合機能、高度なKutools、分析的なピボットテーブル、柔軟なVBAコーディングの中から、自分のスキルとニーズに合ったソリューションを選んでください。さらに多くのExcelのヒントやコツに興味がある方は、当サイトで数千ものチュートリアルを提供していますので、 こちらをクリックしてアクセスしてください。お読みいただきありがとうございます。今後も役立つ情報を提供できることを楽しみにしています!
関連記事:
- 重複に基づいて複数の行を1つに結合する
- 例えば、A列の商品名にいくつかの重複項目があり、A列の重複エントリを削除しつつ、B列の対応する値を結合する必要があります。Excelでこのタスクをどのように解決すればよいでしょうか?
- 重複なしで複数の値をVlookupして返す
- 時々、一度に複数の一致する値を単一のセルに返したい場合があります。しかし、返されるセルに繰り返しの値が含まれている場合、すべての一致する値を返す際に重複を無視して一意の値のみを保持するにはどうすればよいでしょうか?次のスクリーンショットに示すようにExcelでこのタスクを達成する方法を見てみましょう。
- 同じID/名前を持つ行を結合する
- 例えば、下記のスクリーンショットのような表があり、注文IDで行を結合する必要があります。何かアイデアはありますか?この記事では、2つの解決策をご紹介します。
最高のオフィス生産性ツール
🤖 | Kutools AI Aide:データ分析を革新:インテリジェント実行 | コード生成 | カスタム数式の作成 | データを分析してグラフを生成 | Kutools Functions を呼び出す… |
人気機能:重複の検索・ハイライト・マーキング | 空白行を削除 | データを失わず列やセルを統合 | 丸める ... | |
スーパーLOOKUP:複数条件VLOOKUP | 複数値VLOOKUP | 複数シートの検索 | ファジーマッチ .... | |
高度なドロップダウンリスト:すばやくドロップダウンリストを作成 | 依存型ドロップダウンリスト | 複数選択ドロップダウンリスト .... | |
列の管理:特定数の列を追加 | 列を移動 | 非表示列の表示状態を切り替え | 範囲と列の比較 ... | |
注目機能:グリッドフォーカス | デザインビュー | 強化された数式バー | ワークブック&ワークシートの管理 | オートテキスト ライブラリ (Auto Text) | 日付ピッカー | データの統合 | セルの暗号化/復号化 | リスト送信で電子メールを送信 | スーパーフィルター | 特殊フィルタ(太字/斜体/取り消し線でフィルタ...) | |
トップ15ツールセット:12 種類のテキストツール(テキストの追加、特定の文字を削除など) | 50 種以上のグラフ タイプ(ガントチャートなど) | 40を超える実用的な 数式(誕生日に基づいて年齢を計算する、など) | 19種の 挿入ツール(QRコードの挿入、パスから画像の挿入など) | 12種類の 変換ツール(単語に変換する、通貨変換など) | 7つの 結合&分割ツール(高度な行のマージ、セルの分割など) | ...さらに多数 |
Kutools for ExcelでExcelスキルを強化し、かつてない効率を体験しましょう。 Kutools for Excelは300以上の高度な機能で生産性向上と時間短縮を実現します。最も必要な機能を今すぐ取得...
Office TabはOfficeにタブ表示を追加し、作業効率を大幅に向上させます
- Word、Excel、PowerPointでタブ編集とタブ閲覧を有効にします
- 同じウィンドウ内の新しいタブで複数のドキュメントを開いたり作成したりできます。新しいウィンドウを開く必要はありません。
- 生産性が50%向上し、1日に何百回ものマウスクリックも削減できます!