Hogyan lehet gyorsan összevonni a sorokat egy oszlop értéke alapján, majd elvégezni néhány számítást az Excelben?
Például van egy adattartománya, és egy oszlopnak vannak duplikátumai, most össze akarja vonni a sorokat az A oszlop alapjaival (duplikátuma van), majd végezzen néhány számítást egy másik oszlopra az összevont sorok alapján, ahogy a képernyőképen látható:
Az Excelben nincs gyors módszer a sorok egyesítésére egy oszlopérték alapján, de itt bemutatom a
trükkök, amelyek segíthetnek az ismétlődő sorok egyesítésében, majd összegeznek vagy más számításokat végeznek egy másik oszlopban.
Egyesítse a sorokat egy oszlop alapján, majd összegezze az értékeket a VBA-val
Van egy VBA-kód, amely összevonhatja az ismétlődő sorokat, majd összegez egy másik oszlopértéket.
Füles böngészés és több Excel-munkafüzet / Word-dokumentum szerkesztése Firefox, Chrome, Internet Explore 10 néven! |
Előfordulhat, hogy ismerős lehet több weboldal megtekintése Firefox/Chrome/IE böngészőben, és a megfelelő lapokra kattintva válthat közöttük. Itt az Office Tab támogatja a hasonló feldolgozást, amely lehetővé teszi több Excel-munkafüzet vagy Word-dokumentum böngészését egyetlen Excel- vagy Word-ablakban, és a lapjukra kattintva könnyedén válthat közöttük. Kattintson ingyen 30- az Office Tab napos próbaverziója! |
1. nyomja meg F11 + Alt gombokat az engedélyezéshez Microsoft Visual Basic for Applications ablakot, majd kattintson a gombra betétlap > Modulok és másolja és illessze be a VBA kód alá az újba Modulok ablak.
VBA: Sorok egyesítése egy oszlopérték alapján
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. nyomja meg F5 vagy kattintson futás gombot a VBA futtatásához, és megjelenik egy párbeszédpanel a működni kívánt adattartomány kiválasztásához. lásd a képernyőképet:
3. A munkaterület kiválasztása után kattintson a gombra OK. Az adatokat az első oszlop egyesítette, és a második oszlopban szereplő értékeket összegezte.
Megjegyzések: Ez a VBA-kód csak akkor tud megfelelően működni, ha egyesül az első oszlop és a második oszlop összegértékei alapján.
Egyesítse a sorokat egy oszlop alapján, majd összegezze az értékeket a Haladó kombinált sorokkal
Ha nem ismeri a VBA kódot, használhatja a Haladó kombinált sorok a harmadik rész kiegészítő eszköz szolgáltatása - Kutools az Excel számára az ismétlődő sorok egyszerű és gyors összevonása, majd az összegzés egy másik oszlopban.
Után ingyenes telepítés Kutools for Excel, kérjük, tegye a következőket:
1. Válassza ki a használni kívánt adatokat, majd kattintson a gombra Kutools > Egyesítés és felosztás > Haladó kombinált sorok. Lásd a képernyőképet:
2. Ezután a felbukkanó párbeszédpanelen válassza ki azt az oszlopot, amely alapján más oszlopokat egyesít, majd kattintson elsődleges Kattintson, majd kattintson egy másik oszlopra, majd kattintson a gombra Számít majd válassza ki Összeg.
típus: Ha a kiválasztott tartománynak vannak fejlécei, ellenőrizze Adataim fejléceket tartalmaznak, és ellenőrizze Használjon formázott értékeket az egyesítés után megtartja a formázást.
3. Ezután kattintson Ok. Most az adatok egyesültek az elsődleges oszlop alapján, és egy másik összegzésre kerül. Lásd a képernyőképet:
Sorok egyesítése egy oszlop alapján, majd más műveleteket hajthat végre más oszlopokon a Haladó kombinált sorokkal.
Haladó kombinált sorok erőteljes, mert nemcsak egyesítheti az ismétlődő sorokat egy oszlopban, majd összegez egy másik oszlopot, hanem egyesítheti az ismétlődő sorokat is egy oszlopban, majd más műveleteket hajthat végre más oszlopokon.
Tegyük fel, hogy van egy adattartományom, amint az az alábbi képernyőképen látható, és mind az A oszlop alapján szeretném kombinálni a B oszlopban szereplő értékeket, mind a C oszlopban szereplő összegeket.
Után ingyenes telepítés Kutools for Excel, kérjük, tegye a következőket:
1. Válassza ki az adattartományt, majd kattintson Kutools > Egyesítés és felosztás > Haladó kombinált sorok. Lásd a képernyőképet:
2. Ban,-ben Kombinálja a sorokat az oszlop alapján párbeszédpanelen tegye ezeket:
(1) Kattintson arra az oszlopra, amely alapján kombinálni kívánja, majd kattintson a gombra Elsődleges kulcs;
(2) Kattintson arra az oszlopra, amelybe az adatokat egyesíteni kívánja, majd kattintson a gombra Kombájn, majd válasszon ki egy kívánt elválasztót a listából;
(3) Kattintson arra az oszlopra, amelyen összegezni szeretné az értékeket, majd kattintson a gombra Számít, és válassza ki Összeg.
3. kettyenés Ok. Most az alábbiak szerint láthatja az eredményt:
A Haladó kombinált sorok funkció, akkor egyesítheti a sorokat egy oszlop alapján, majd megszámolja, átlagolja, megtarthatja az első vagy utolsó adatot más oszlopokban.
A legjobb irodai hatékonyságnövelő eszközök
Töltsd fel Excel-készségeidet a Kutools for Excel segítségével, és tapasztald meg a még soha nem látott hatékonyságot. A Kutools for Excel több mint 300 speciális funkciót kínál a termelékenység fokozásához és az időmegtakarításhoz. Kattintson ide, hogy megszerezze a leginkább szükséges funkciót...
Az Office lap füles felületet hoz az Office-ba, és sokkal könnyebbé teszi a munkáját
- Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
- Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
- 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!