Hur slår man snabbt samman rader baserat på ett kolumnvärde och gör sedan några beräkningar i Excel?
Till exempel har du en rad data och en kolumn har dubbletter, nu vill du slå samman rader baserar kolumn A (har dubbletter) och gör sedan några beräkningar till en annan kolumn baserat på de sammanslagna raderna som skärmdump som visas:
I Excel finns det ingen snabb metod att slå samman rader baserat på ett kolumnvärde, men här introducerar jag knepen som kan hjälpa dig att slå samman dubbletter av rader och sedan summera eller göra andra beräkningar på en annan kolumn.
Ursprungliga data | Sammanfoga och summa |
![]() | ![]() |
Slå ihop rader baserat på en kolumn och summera värden med VBA
Det finns en VBA-kod som kan hjälpa dig att slå samman de dubbla raderna och sedan summera ytterligare kolumnvärden.
1. Tryck F11 + Alt för att aktivera Microsoft Visual Basic för applikationer och klicka sedan på Insert > Modulerna och kopiera och klistra in under VBA-koden till den nya Modulerna fönster.
VBA: Sammanfoga rader baserat på ett kolumnvärde
Sub MG30Nov12()
'Updateby20150519
Dim Rng As Range
Dim InputRng As Range
Dim nRng As Range
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
Set InputRng = InputRng.Parent.Range(InputRng.Columns(1).Address)
With CreateObject("scripting.dictionary")
.CompareMode = vbTextCompare
For Each Rng In InputRng
If Not .Exists(Rng.Value) Then
.Add Rng.Value, Rng.Offset(, 1)
Else
.Item(Rng.Value).Value = .Item(Rng.Value).Value + Rng.Offset(, 1)
If nRng Is Nothing Then
Set nRng = Rng
Else
Set nRng = Union(nRng, Rng)
End If
End If
Next
If Not nRng Is Nothing Then
nRng.EntireRow.Delete
End If
End With
End Sub
2. Tryck F5 eller klicka Körning knappen för att köra VBA, och en dialogruta dyker upp för att välja ett dataintervall som ska fungera. se skärmdump:
3. När du har valt ett arbetsområde klickar du på OK. Nu har data slogs samman med första kolumnen och summerat värdena i andra kolumnen.
Anmärkningar: Den här VBA-koden kan bara fungera korrekt när den slås samman baserat på den första kolumnen och summan i den andra kolumnen.
Sammanfoga rader baserat på en kolumn och summera värden med Advanced Combine Rows
Om du inte känner till VBA-koden kan du använda Avancerade kombinera rader funktion i tilläggsverktyget för tredje delen - Kutools för Excel för att enkelt och snabbt slå ihop dubbletteraderna och summera värdena i en annan kolumn.
1. Välj de data du vill använda och klicka på Kutools > Slå ihop och dela > Avancerade kombinera rader. Se skärmdump:
2. Välj sedan kolumnen som du kommer att slå samman andra kolumner i poppdialogen och klicka sedan på Primära Nyckel och klicka på en annan kolumn och klicka Beräkna Välj sedan Sum.
Tips: Om ditt valda intervall har rubriker, kontrollera Mina data har rubriker, och kolla Använd formaterade värden behåller formateringen efter sammanslagningen.
3. Klicka sedan Ok. Nu har data sammanfogats baserat på den primära kolumnen, och en annan summeras. Se skärmdump:
Slå ihop rader baserat på en kolumn och gör sedan olika åtgärder på andra kolumner med Advanced Combine Rows.
Avancerade kombinera rader är kraftfullt, eftersom det inte bara kan slå samman dubbla rader i en kolumn och sedan summera en annan kolumn utan också kan slå samman dubbla rader i en kolumn och sedan göra olika åtgärder på andra kolumner.
Antag att jag har en rad data som visas nedan i skärmdumpen, och jag vill både kombinera värden i kolumn B och summera värden i kolumn C baserat på kolumn A.
Kutools för Excel - Fullpackad med över 300 viktiga verktyg för Excel. Njut av permanent gratis AI-funktioner! Ladda ner nu!
1. Välj dataintervall och klicka Kutools > Slå ihop och dela > Avancerade kombinera rader. Se skärmdump:
2. I Kombinera rader baserat på kolumn dialog gör så här:
(1) Klicka på den kolumn du vill kombinera baserat på och klicka Primärnyckel;
(2) Klicka på den kolumn du vill kombinera data och klicka på Kombinera, välj sedan en separator du behöver från listan;
(3) Klicka på den kolumn du vill summera värdena och klicka Beräkna, och välj Sum.
3. klick Ok. Nu kan du se resultatet enligt nedan:
Med Avancerade kombinera rader funktionen kan du också slå samman rader baserat på en kolumn och sedan räkna, genomsnitt, behålla första eller sista data i andra kolumner.
Bästa kontorsproduktivitetsverktyg
Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid. Klicka här för att få den funktion du behöver mest...
Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare
- Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
- Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
- Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!