Когато анализирате данните в Excel, може да откриете, че съдържат множество дублиращи се редове. В този случай може би ще искате бързо да консолидирате редовете. Това стрost ще предложи 2 бързи начина да го получите.
Много потребители често трябва да обединяват дублиращите се редове и да сумират съответните стойности в Excel. Например имам набор от данни в работен лист на Excel, който съдържа много дублиращи се записи, като следната екранна снимка. Следователно искам да консолидирам дублиращите се редове и да сумирам съответните стойности в друга колона. Определено ще бъде обезпокоително, ако направя това ръчно. Затова използвам следните 2 начина да го реализирам.
Метод 1: Използвайте функцията „Консолидиране“
- Първо щракнете върху празна клетка, където искате да поставите обединените и обобщените данни.
- След това се обърнете към раздела „Данни“ и кликнете върху бутона „Консолидиране“.
- В изскачащия диалогов прозорец се уверете, че в полето „Функция“ е избрано „Sum“.
- След това кликнете върху
бутон.
- По-късно изберете диапазона, който искате да консолидирате и щракнете
бутон.
- След това щракнете върху бутона „Добавяне“ в диалоговия прозорец „Консолидиране“.
- Впоследствие проверете опциите „Най-горен ред“ и „Лява колона“.
- Накрая щракнете върху бутона „OK“.
- Веднага редовете се консолидират, както е показано на следващата екранна снимка.
Метод 2: Използвайте VBA код на Excel
- В самото начало изберете диапазона, който искате.
- След това задействайте редактора на VBA според „Как да стартирате VBA код във вашия Excel".
- След това копирайте следния VBA код в модул.
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 Gondole Set Error GoTole Error GoToLerErSerDragErSerRadErSerDragErSerRadErSerDressEdrGressEndRagErRagErRagErRagErRagErrErSerRagErrGrandRagErRagErRagErRagErRagErr = Разделяне (objSelectedRange.Address (, False), ":") nStartRow = Разделяне (varAddressArray (0), "$") (1) strFirstColumn = Разделяне (varAddressArray (0), "$") (0) nEndRow = Разделяне (varAddressArray (1), "$") (1) strSecondColumn = Разделяне (varAddressArray (1), "$") (0) Задайте objDictionary = CreateObject ("Scripting.Dictionary") За nRow = nStartRow To nEndRow strItem = ActiveSheet.Range (strFirstColumn & nRow) .Value strValue = ActiveSheet.Range (strSecondColumn & nRow) .Value Ако objDictionary.Exists (strItem) = False Тогава objDictionary.Add strItem, strV = 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 = NI ) Към UBound (varItems) nRow = nRow + 1 С objNewWorksheet .Cells (nRow, 1) = varItems (i) .Cells (nRow, 2) = varValues (i) End with Next objNewWorksheet.Columns ("A: B") .AutoFit ErrorHandler: Изход от под End Sub
- След това натиснете „F5“, за да стартирате този макрос сега.
- Когато макросът завърши, ще се покаже нова работна книга на Excel, в която можете да видите обединените редове и обобщените данни, като изображението по-долу.
сравнение
Предимства | Недостатъци | |
Метод 1 | Лесен за работа | Не мога да обработя двете колони, които не са една до друга |
Метод 2 | 1. Удобен за повторна употреба | 1. Малко трудно за разбиране за VBA начинаещи |
2. Няма да обърка оригиналния лист на Excel с това, че поставя обединените данни в новия файл | 2. Не мога да обработя двете колони, които не са една до друга |
При среща с катастрофата в Excel
Както всички знаем, Excel може да се срива от време на време. При това обстоятелство, в най-лошия случай, текущият файл на Excel може да бъде повреден директно. По това време нямате друг избор, освен да опитате Възстановяване на Excel. Той изисква от вас да поискате помощ от специалисти или да използвате специализиран инструмент за ремонт на Excel, като например DataNumen Excel Repair.
Въведение на автора:
Шърли Джанг е експерт по възстановяване на данни в DataNumen, Inc., която е световен лидер в технологиите за възстановяване на данни, включително повредени SQL Server и outlook софтуерни продукти за ремонт. За повече информация посетете WWW.datanumen.com