Jak rychle sloučit řádky na základě jedné hodnoty sloupce a poté provést nějaké výpočty v aplikaci Excel?
Například máte řadu dat a jeden sloupec má duplikáty, nyní chcete sloučit řádky na základě sloupce A (má duplikáty) a poté provést některé výpočty do jiného sloupce na základě sloučených řádků, jak je zobrazeno na obrazovce:
V aplikaci Excel neexistuje žádná rychlá metoda slučování řádků na základě jedné hodnoty sloupce, ale zde představuji
triky, které vám pomohou sloučit duplicitní řádky, pak sečíst nebo provést jiné výpočty v jiném sloupci.
Sloučit řádky na základě jednoho sloupce a poté sečíst hodnoty pomocí VBA
K dispozici je kód VBA, který vám pomůže sloučit duplicitní řádky a poté sečíst další hodnoty sloupců.
Procházení a úpravy více sešitů aplikace Excel / dokumentů aplikace Word jako záložek v prohlížeči Firefox, Chrome, Internet Prozkoumejte 10! |
Možná znáte prohlížení více webových stránek ve Firefoxu / Chrome / IE a přepínáte mezi nimi snadným kliknutím na příslušné karty. Zde karta Office podporuje podobné zpracování, které vám umožní procházet více sešitů aplikace Excel nebo dokumentů aplikace Word v jednom okně aplikace Excel nebo v okně aplikace Word a snadno mezi nimi přepínat kliknutím na jejich karty. Klikněte zdarma 30-denní zkušební verze Office Tab! |
1. lis F11 + Alt klíče k povolení Microsoft Visual Basic pro aplikace v okně a poté klikněte na Vložit > Modul a zkopírujte a vložte pod kód VBA do nového Modul okno.
VBA: Sloučit řádky na základě jedné hodnoty sloupce
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. lis F5 nebo klikněte Běh tlačítko pro spuštění VBA a objeví se dialogové okno pro výběr rozsahu dat, který má fungovat. viz screenshot:
3. Po výběru pracovního rozsahu klikněte na OK. Nyní byla data sloučena do prvního sloupce a součet hodnot ve druhém sloupci.
Pozor: Tento kód VBA může správně fungovat při slučování na základě prvního sloupce a součtu hodnot ve druhém sloupci.
Sloučit řádky na základě jednoho sloupce a poté sčítat hodnoty s pokročilými kombinovanými řádky
Pokud nejste obeznámeni s kódem VBA, můžete použít Pokročilé kombinování řádků funkce doplňkového nástroje třetí části - Kutools pro Excel snadno a rychle sloučit duplicitní řádky a poté sečíst hodnoty v jiném sloupci.
Po instalace zdarma Kutools pro Excel, prosím, postupujte takto:
1. Vyberte data, která chcete použít, a klikněte na Kutools > Sloučit a rozdělit > Pokročilé kombinování řádků. Viz snímek obrazovky:
2. Potom v rozbalovacím dialogovém okně vyberte sloupec, podle kterého se sloučí další sloupce, a poté klikněte Primární Klíč a klikněte na jiný sloupec a klikněte na Vypočítaná Potom vyberte Součet.
Tip: Pokud má vybraný rozsah záhlaví, zkontrolujte Moje data mají záhlaví, a zkontrolujte Použijte formátované hodnoty po sloučení zachová formátování.
3. Pak klikněte na tlačítko Ok. Nyní byla data sloučena na základě primárního sloupce a další je shrnuto. Viz screenshot:
Sloučit řádky na základě jednoho sloupce a poté provádět různé operace na jiných sloupcích pomocí Pokročilé kombinace řádků.
Pokročilé kombinování řádků je mocný, protože nejenže může sloučit duplicitní řádky v jednom sloupci, pak sečíst další sloupec, ale také může sloučit duplicitní řádky v jednom sloupci a poté provádět různé operace v ostatních sloupcích.
Předpokládejme, že mám řadu dat, jak je uvedeno níže, a chci kombinovat hodnoty ve sloupci B a hodnoty součtu ve sloupci C na základě sloupce A.
Po instalace zdarma Kutools pro Excel, prosím, postupujte takto:
1. Vyberte rozsah dat a klikněte Kutools > Sloučit a rozdělit > Pokročilé kombinování řádků. Viz snímek obrazovky:
2. V Kombinujte řádky na základě sloupce dialog, postupujte takto:
(1) Klikněte na sloupec, podle kterého chcete kombinovat, a klikněte Primární klíč;
(2) Klikněte na sloupec, do kterého chcete zkombinovat data, a klikněte Kombinovat, poté vyberte ze seznamu jeden oddělovač, který potřebujete;
(3) Klikněte na sloupec, který chcete sečíst hodnoty, a klikněte Vypočítanáa vyberte Součet.
3. cvaknutí Ok. Nyní můžete vidět výsledek níže:
S Pokročilé kombinování řádků funkce, můžete také sloučit řádky založené na jednom sloupci a poté počítat, průměrovat, uchovat první nebo poslední data v jiných sloupcích.
Nejlepší nástroje pro produktivitu v kanceláři
Rozšiřte své dovednosti Excel pomocí Kutools pro Excel a zažijte efektivitu jako nikdy předtím. Kutools for Excel nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času. Kliknutím sem získáte funkci, kterou nejvíce potřebujete...
Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci
- Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
- Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
- Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!