Ao analisar os dados no Excel, você pode descobrir que contém várias linhas duplicadas. Nesse caso, talvez você queira consolidar rapidamente as linhas. Este Post oferecerá 2 meios rápidos para obtê-lo.
Muitos usuários frequentemente precisam mesclar as linhas duplicadas e somar os valores correspondentes no Excel. Por exemplo, tenho um intervalo de dados em uma planilha do Excel que contém muitas entradas duplicadas, como a captura de tela a seguir. Portanto, desejo consolidar as linhas duplicadas e somar os valores correspondentes em outra coluna. Será definitivamente problemático se eu fizer isso manualmente. Portanto, eu utilizo as 2 maneiras a seguir para realizá-lo.
Método 1: Use a Função “Consolidar”
- Primeiro, clique em uma célula em branco onde deseja colocar os dados mesclados e somados.
- Em seguida, vá para a guia “Dados” e clique no botão “Consolidar”.
- Na caixa de diálogo pop-up, certifique-se de que “Sum” esteja selecionado na caixa “Function”.
- Em seguida, clique no
botão.
- Posteriormente, selecione a faixa que deseja consolidar e clique em
botão.
- Depois disso, clique no botão “Adicionar” na caixa de diálogo “Consolidar”.
- Em seguida, marque a opção “Linha superior” e “Coluna esquerda”.
- Por fim, clique no botão “OK”.
- De uma só vez, as linhas são consolidadas, conforme mostrado na captura de tela a seguir.
Método 2: Use o código VBA do Excel
- No início, selecione o intervalo que você deseja.
- Em seguida, acione o editor VBA de acordo com “Como executar o código VBA no seu Excel".
- Em seguida, copie o seguinte código VBA em um módulo.
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
- Depois disso, pressione “F5” para executar esta macro agora.
- Quando a macro terminar, uma nova pasta de trabalho do Excel aparecerá, na qual você pode ver as linhas mescladas e os dados somados, como na imagem abaixo.
Comparação
| Vantagens | Desvantagens | |
| Método 1 | Fácil de operar | Não é possível processar as duas colunas não próximas uma da outra |
| Método 2 | 1. Conveniente para reutilização | 1. Um pouco difícil de entender para iniciantes em VBA |
| 2. Não bagunçará a planilha original do Excel, pois colocará os dados mesclados no novo arquivo | 2. Não é possível processar as duas colunas que não estão próximas uma da outra |
Ao encontrar falha no Excel
Como todos sabemos, o Excel pode travar de tempos em tempos. Nessa circunstância, na pior das hipóteses, o arquivo atual do Excel pode ser corrompido diretamente. Nesse momento, você não tem escolha a não ser tentar Recuperação do Excel. Exige que você peça ajuda a profissionais ou faça uso de uma ferramenta especializada de reparo do Excel, como DataNumen Excel Repair.
Introdução do autor:
Shirley Zhang é especialista em recuperação de dados em DataNumen, Inc., líder mundial em tecnologias de recuperação de dados, incluindo corrupto SQL Server e produtos de software de reparo do Outlook. Para mais informações visite www.datanumen.com








