Quando si analizzano i dati in Excel, è possibile che contenga più righe duplicate. In questo caso, forse vorrai consolidare rapidamente le righe. Questa Post offrirà 2 mezzi rapidi per ottenerlo.
Molti utenti hanno spesso bisogno di unire le righe duplicate e sommare i valori corrispondenti in Excel. Ad esempio, ho una serie di dati in un foglio di lavoro di Excel che contiene molte voci duplicate, come lo screenshot seguente. Quindi, desidero consolidare le righe duplicate e sommare i valori corrispondenti in un'altra colonna. Sarà sicuramente problematico se lo faccio manualmente. Pertanto, utilizzo i seguenti 2 modi per realizzarlo.
Metodo 1: utilizzare la funzione "Consolida".
- Prima di tutto, fai clic su una cella vuota in cui desideri inserire i dati uniti e sommati.
- Quindi, vai alla scheda "Dati" e fai clic sul pulsante "Consolida".
- Nella finestra di dialogo popup, assicurarsi che "Somma" sia selezionato nella casella "Funzione".
- Successivamente, fare clic sul
pulsante.
- Successivamente, seleziona l'intervallo che desideri consolidare e fai clic
pulsante.
- Successivamente, fai clic sul pulsante "Aggiungi" nella finestra di dialogo "Consolida".
- Successivamente, seleziona l'opzione "Riga superiore" e "Colonna sinistra".
- Infine, fai clic sul pulsante "OK".
- Immediatamente, le righe vengono consolidate, come mostrato nello screenshot seguente.
Metodo 2: utilizzare il codice VBA di Excel
- All'inizio, seleziona l'intervallo che desideri.
- Quindi, attiva l'editor VBA in base a "Come eseguire il codice VBA nel tuo Excel".
- Successivamente, copia il seguente codice VBA in un modulo.
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) Imposta 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 Imposta objNewWorkbook = Excel.Application.Workbooks.Add Imposta objNewWorksheet = objNewWorkbook.Sheets(1) varItems = objDictionary.keys varValues = objDictionary.items nRow = 0 For i = LBound(varItems ) A 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
- Successivamente, premi "F5" per eseguire questa macro ora.
- Al termine della macro, verrà visualizzata una nuova cartella di lavoro di Excel, in cui è possibile visualizzare le righe unite e i dati sommati, come nell'immagine sottostante.
Confronto
Vantaggi | Svantaggi | |
Metodo 1 | Facile da usare | Impossibile elaborare le due colonne non una accanto all'altra |
Metodo 2 | 1. Conveniente per il riutilizzo | 1. Un po 'difficile da capire per i neofiti di VBA |
2. Non rovinerà il foglio Excel originale in quanto inserirà i dati uniti nel nuovo file | 2. Impossibile elaborare le due colonne non una accanto all'altra |
Quando si verifica un arresto anomalo di Excel
Come tutti sappiamo, Excel può bloccarsi di tanto in tanto. In questa circostanza, nel peggiore dei casi, il file Excel corrente potrebbe essere danneggiato direttamente. A quel punto, non hai altra scelta che tentare Recupero di Excel. Ti richiede di chiedere aiuto ai professionisti o di utilizzare uno strumento di riparazione di Excel specializzato, ad esempio DataNumen Excel Repair.
Introduzione dell'autore:
Shirley Zhang è un'esperta di recupero dati in DataNumen, Inc., che è il leader mondiale nelle tecnologie di recupero dati, tra cui corrotto SQL Server e prodotti software di riparazione di Outlook. Per maggiori informazioni visita www.datanumen.com