Prilikom analize podataka u Excelu, možete otkriti da sadrže više dupliciranih redaka. U tom slučaju, možda ćete htjeti brzo konsolidirati retke. Ovaj članak će ponuditi 2 brza načina za to.
Mnogi korisnici često moraju spojiti duplicirane retke i zbrojiti odgovarajuće vrijednosti u Excelu. Na primjer, imam niz podataka u Excel radnom listu koji sadrži mnoštvo dvostrukih unosa, poput sljedeće snimke zaslona. Stoga želim konsolidirati duplicirane retke i zbrojiti odgovarajuće vrijednosti u drugom stupcu. Bit će problematično ako to učinim ručno. Stoga koristim sljedeća 2 načina da to realiziram.
Metoda 1: Koristite funkciju "Konsolidacija".
- Najprije kliknite praznu ćeliju u koju želite smjestiti spojene i zbrojene podatke.
- Zatim otvorite karticu "Podaci" i kliknite na gumb "Konsolidiraj".
- U skočnom dijaloškom okviru provjerite je li odabrano "Zbroj" u okviru "Funkcija".
- Zatim kliknite gumb
tipku.
- Kasnije odaberite raspon koji želite konsolidirati i kliknite
tipku.
- Nakon toga kliknite gumb "Dodaj" u dijaloškom okviru "Konsolidiraj".
- Nakon toga provjerite opciju "Gornji red" i "Lijevi stupac".
- Na kraju kliknite gumb "OK".
- Redovi se odjednom konsolidiraju, kao što je prikazano na sljedećoj snimci zaslona.
Metoda 2: Koristite Excel VBA kod
- Na samom početku odaberite raspon koji želite.
- Zatim pokrenite VBA uređivač prema "Kako pokrenuti VBA kod u vašem Excelu".
- Zatim kopirajte sljedeći VBA kod u modul.
Sub MergeRowsSumValues()
Dim objSelectedRange As Excel.Range
Dim varAddressArray As Variant
Dim nStartRow, nEndRow As Integer
Dim strFirstColumn, strSecondColumn As String
Dim objDictionary As Object
Dim nRow As Integer
Dim objNewWorkbook As Excel.Workbook
Dim objNewWorksheet As Excel.Worksheet
Dim varItems, varValues As Variant
On Error GoTo ErrorHandler
Set objSelectedRange = Excel.Application.Selection
varAddressArray = Split(objSelectedRange.Address(, False), ":")
nStartRow = Split(varAddressArray(0), "$")(1)
strFirstColumn = Split(varAddressArray(0), "$")(0)
nEndRow = Split(varAddressArray(1), "$")(1)
strSecondColumn = Split(varAddressArray(1), "$")(0)
Set objDictionary = CreateObject("Scripting.Dictionary")
For nRow = nStartRow To nEndRow
strItem = ActiveSheet.Range(strFirstColumn & nRow).Value
strValue = ActiveSheet.Range(strSecondColumn & nRow).Value
If objDictionary.Exists(strItem) = False Then
objDictionary.Add strItem, strValue
Else
objDictionary.Item(strItem) = objDictionary.Item(strItem) + strValue
End If
Next
Set objNewWorkbook = Excel.Application.Workbooks.Add
Set objNewWorksheet = objNewWorkbook.Sheets(1)
varItems = objDictionary.keys
varValues = objDictionary.items
nRow = 0
For i = LBound(varItems) To UBound(varItems)
nRow = nRow + 1
With objNewWorksheet
.Cells(nRow, 1) = varItems(i)
.Cells(nRow, 2) = varValues(i)
End With
Next
objNewWorksheet.Columns("A:B").AutoFit
ErrorHandler:
Exit sub
End Sub
- Nakon toga pritisnite “F5” da sada pokrenete ovu makronaredbu.
- Kada makronaredba završi, pojavit će se nova Excel radna knjiga u kojoj možete vidjeti spojene retke i zbrojene podatke, kao na slici ispod.
usporedba
| Prednosti | Nedostaci | |
| Metoda 1 | Jednostavan za rukovanje | Nije moguće obraditi dva stupca koji nisu jedan pored drugog |
| Metoda 2 | 1. Pogodno za ponovnu upotrebu | 1. Pomalo teško za razumijevanje VBA početnicima |
| 2. Neće zabrljati izvornu Excel tablicu stavljanjem spojenih podataka u novu datoteku | 2. Ne mogu obraditi dva stupca koji nisu jedan pored drugog |
Kada se Excel ruši
Kao što svi znamo, Excel se s vremena na vrijeme može srušiti. Pod ovim okolnostima, u najgorem slučaju, trenutna Excel datoteka može biti izravno oštećena. U tom trenutku nemate izbora nego pokušati Excel oporavak. Zahtijeva da ili zatražite pomoć stručnjaka ili upotrijebite specijalizirani Excel alat za popravak, kao što je DataNumen Excel Repair.
Uvod za autora:
Shirley Zhang stručnjakinja je za oporavak podataka u DataNumen, Inc., koji je svjetski lider u tehnologijama za oporavak podataka, uključujući pokvariti SQL Server i softverske proizvode za popravak Outlooka. Za više informacija posjetite www.datanumen.com








