Как быстро свернуть строки с одинаковыми значениями в Excel?

Сжатие строк по значению с помощью сводной таблицы
Сжатие строк по значению с помощью Kutools для Excel
Сжатие строк по значению с помощью формул
Сжатие и суммирование строк с помощью макроса VBA
Свёртывание строк по значению с помощью сводной таблицы
Функция сводной таблицы Excel позволяет быстро и эффективно агрегировать данные — особенно когда нужно объединить строки по повторяющимся значениям в одном столбце и просуммировать числовые данные в другом. Это идеальное решение для тех, кто хочет создать интерактивную сводную таблицу с возможностью дальнейшей группировки, фильтрации и анализа результатов. Сводные таблицы отлично работают с большими объёмами данных и обновляются всего за несколько кликов.
1. Выделите весь диапазон данных, включая заголовки столбцов, и перейдите на вкладку Вставка в верхней части ленты. Затем нажмите кнопку Сводная таблица. Появится диалоговое окно «Создание сводной таблицы» — выберите, разместить ли сводную таблицу в Новом листе или на Существующем листе, в зависимости от вашего рабочего процесса, и нажмите кнопку ОК. См. снимок экрана:
2. В области «Поля сводной таблицы» перетащите поле Заказ в область Строки, а поле Продажи — в область Значения. В результате автоматически создастся сводная таблица с каждым уникальным заказом и соответствующей суммой продаж.
Совет: По умолчанию сводная таблица суммирует числовой столбец. Если вам нужен другой тип вычисления — например, среднее, количество, минимум или максимум, — щёлкните стрелку раскрывающегося списка рядом с «Сумма по Продажам» в разделе «Значения», выберите пункт Параметры поля значений и укажите нужную операцию.
Преимущества:
- Идеально подходит для динамического анализа и исследования данных.
- Автоматически обновляется при изменении ваших исходных данных.
- Предоставляет широкие возможности для дополнительной фильтрации, группировки и настройки макета.
- Требует знакомства с элементами управления сводной таблицы для расширенной настройки.
Свёртывание строк по значению с помощью Kutools для Excel
«Kutools для Excel» предлагает упрощённый способ объединения дублирующих строк и свёртки данных — идеальное решение для выполнения повторяющихся или масштабных задач. Этот инструмент незаменим для пользователей, работающих с большими объёмами данных и стремящихся преобразовывать или сворачивать информацию без утомительной ручной работы.
1. Выделите диапазон данных, который требуется свернуть. Затем перейдите в меню Kutools на ленте и выберите команду Объединить и разделить > Расширенное объединение строк.
2. Появится диалоговое окно «Расширенное объединение строк». Вам нужно будет:
- Щёлкните заголовок столбца с повторяющимися записями и задайте его в качестве первичного ключа. Это определит, какие значения Excel будет использовать для группировки данных.
- Щёлкните заголовок столбца с числовыми значениями, которые нужно агрегировать. В разделе Операция выберите в раскрывающемся списке подходящий способ вычисления в блоке «Вычислить» — например, Сумма, Среднее, Максимум или Минимум — в зависимости от ваших задач.
- После указания этих параметров нажмите кнопку ОК, чтобы выполнить объединение.

3. Строки будут свёрнуты, и к выбранному столбцу будет применено указанное вычисление.
Практические советы:
- Если ваш набор данных содержит пустые ячейки или текстовые значения, убедитесь, что столбец, используемый для вычислений, состоит исключительно из чисел — это поможет избежать неожиданных результатов.
- Kutools особенно рекомендуется использовать для работы с большими наборами данных, объединение которых вручную было бы затруднительным.
- Невероятно быстро и удобно для пакетной обработки.
- Позволяет гибко настроить способ объединения дубликатов и выбор столбцов для агрегирования.
- Требуется установка надстройки Kutools для Excel.
- Изменяет исходный диапазон данных (отмените действие с помощью Ctrl+Z, если изменения ещё не сохранены).
Kutools для Excel— раскройте весь потенциал Excel с помощью более чем 300 незаменимых инструментов, которые ускоряют и упрощают вашу работу, а также воспользуйтесь возможностями ИИ для более разумной обработки данных и повышения продуктивности.Получить сейчас
Свёртывание строк по значению с помощью формул
Формулы Excel обеспечивают гибкий способ свёртки данных без изменения структуры листа. Этот метод идеально подходит для настройки под конкретные задачи, работы с небольшими наборами данных или случаев, когда свёрнутую информацию нужно разместить в отдельной области, оставив исходные данные нетронутыми. Такие популярные формулы, как СУММЕСЛИ, автоматически рассчитывают итоговые значения для каждого уникального элемента.
1. Выберите пустую ячейку рядом с вашим диапазоном данных — например, D2 — и введите следующую формулу. Нажмите клавиши Shift + Ctrl + Enter, чтобы рассчитать результат для первого уникального значения.
=INDEX($A$2:$A$12,MATCH(0,COUNTIF($D$1:D1,$A$2:$A$12),0))
Примечание: скорректируйте диапазоны в формуле — «A2:A12» обозначает список, который может содержать дубликаты, а «D1» — начальную ячейку для вывода результатов. Убедитесь, что ссылки на ячейки соответствуют вашему реальному листу, и используйте абсолютные ссылки, если планируете копировать формулы в другие ячейки.
2. Выделите ячейку D2 (содержащую вашу формулу) и перетащите маркер автозаполнения вниз — до конца списка или до появления ошибки, сигнализирующей, что все уникальные значения уже выведены.
3. Удалите все сообщения об ошибках, появившиеся в конце списка. Затем перейдите в соседнюю ячейку области результатов (например, E2), введите следующую формулу для суммирования значений по каждой записи, нажмите клавишу Enter и протяните формулу вниз, чтобы применить её ко всем строкам.
=SUMIF($A$2:$A$12,D2,$B$2:$B$12) 
Примечание: «A2:A12» — это исходный столбец, в котором ищутся дубликаты, «D2» — ячейка с первым уникальным значением, а «B2:B12» — столбец с продажами или другими числовыми данными. При необходимости скорректируйте эти ссылки под ваш набор данных.
Советы и меры предосторожности:
- Формулы не изменяют исходные данные и идеально подходят для создания сводных отчётов прямо рядом с исходной таблицей.
- При необходимости можно использовать и другие функции агрегирования — такие как СЧЁТЕСЛИ, СРЗНАЧЕСЛИ и т.д. — в зависимости от задач анализа.
Свёртывание и суммирование строк с помощью макроса VBA
При работе с особенно большими наборами данных или при необходимости многократного свёртывания строк по одинаковым значениям автоматизация процесса с помощью макроса VBA позволяет существенно сэкономить время и усилия. Такой подход обеспечивает пакетную обработку сотен или даже тысяч строк, а также легко интегрируется в ваш пользовательский рабочий процесс. Представленное здесь решение на VBA суммирует значения в указанном столбце для каждого уникального элемента другого столбца и выводит свёрнутые результаты на новый лист, оставляя исходные данные нетронутыми.
1. Откройте Excel и нажмите клавиши Alt+F11, чтобы открыть редактор Visual Basic для приложений. В редакторе VBA выберите команду Вставка > Модуль, чтобы создать новый модуль кода. Скопируйте и вставьте следующий код в окно модуля:
Sub CondenseAndSumRows()
Dim srcWS As Worksheet, destWS As Worksheet
Dim lastRow As Long, i As Long
Dim dict As Object
Dim keyCol As String, sumCol As String
Dim dataRange As Range, cell As Range
On Error Resume Next
Set dict = CreateObject("Scripting.Dictionary")
Set srcWS = Application.ActiveSheet
' Prompt to select the whole data range
Set dataRange = Application.InputBox("Select full data range including headers", "KutoolsforExcel", Type:=8)
keyCol = Application.InputBox("Select header name for key/duplicate column", "KutoolsforExcel", Type:=2)
sumCol = Application.InputBox("Select header name for numeric/sum column", "KutoolsforExcel", Type:=2)
If dataRange Is Nothing Or keyCol = "" Or sumCol = "" Then Exit Sub
' Get column numbers by header
Dim keyColNum As Integer, sumColNum As Integer
For i = 1 To dataRange.Columns.Count
If dataRange.Cells(1, i).Value = keyCol Then
keyColNum = i
End If
If dataRange.Cells(1, i).Value = sumCol Then
sumColNum = i
End If
Next i
If keyColNum = 0 Or sumColNum = 0 Then
MsgBox "Column headers not found. Check header spelling!", vbExclamation
Exit Sub
End If
' Summing values for each key
For i = 2 To dataRange.Rows.Count
If Not IsNumeric(dataRange.Cells(i, sumColNum).Value) Then
' Ignore non-numeric, prevent errors
GoTo SkipRow
End If
If dict.Exists(dataRange.Cells(i, keyColNum).Value) Then
dict(dataRange.Cells(i, keyColNum).Value) = dict(dataRange.Cells(i, keyColNum).Value) + dataRange.Cells(i, sumColNum).Value
Else
dict(dataRange.Cells(i, keyColNum).Value) = dataRange.Cells(i, sumColNum).Value
End If
SkipRow:
Next i
' Output results to new worksheet
Set destWS = Worksheets.Add
destWS.Name = "Condensed Summary"
destWS.Cells(1, 1).Value = keyCol
destWS.Cells(1, 2).Value = "Total " & sumCol
i = 2
Dim k
For Each k In dict.Keys
destWS.Cells(i, 1).Value = k
destWS.Cells(i, 2).Value = dict(k)
i = i + 1
Next k
MsgBox "Condensing complete! Check the worksheet 'Condensed Summary'.", vbInformation
End Sub 2. Затем запустите макрос, нажав кнопку
или клавишу F5 при выделенном модуле. Появится диалоговое окно с запросом на выбор полного диапазона данных (включая заголовки). Далее выберите заголовки столбцов: один — для ключевого столбца (с дубликатами), другой — для числового столбца (для суммирования). Следуйте дальнейшим инструкциям: макрос автоматически рассчитает итоговые значения по уникальным записям и выведет результаты на новый лист с названием «Сжатое резюме». Исходный лист останется нетронутым.
Устранение неполадок:
- Если появляется ошибка «Заголовки столбцов не найдены», убедитесь, что введённые заголовки точно совпадают с заголовками на листе данных (с учётом регистра).
- Если сводная таблица не создаётся, проверьте, что Выберите диапазон включает как заголовки, так и данные, а также содержит хотя бы одно числовое значение в столбце для агрегирования.
Преимущества:
- Можно легко повторно использовать и адаптировать под новые наборы данных.
- Быстро справляется с очень большими файлами и не требует внешних надстроек.
- Можно легко расширить для объединения других полей или автоматизации дополнительных вычислений в будущем.
Резюме
Когда требуется объединять или анализировать строки в Excel на основе общих значений, выбор подходящего метода зависит от ваших целей и структуры книги:
- Сводные таблицы идеально подходят для интерактивного анализа и мгновенного получения сводок, особенно когда данные постоянно меняются.
- Kutools для Excel предлагает интуитивно понятные и гибкие функции объединения, идеально подходящие пользователям, которые регулярно выполняют повторяющиеся задачи без написания скриптов.
- Формулы обеспечивают максимальную гибкость, легко проверяются и идеально подходят как для статических отчётов, так и для реализации пользовательской логики.
- Макросы VBA отлично справляются с автоматизацией масштабных или повторяющихся пакетных операций и позволяют создавать компактные отчёты без ручного труда.
Лучшие инструменты повышения продуктивности в Office
Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…
Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу
- Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
- Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!
Все надстройки Kutools — один установщик
Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.
- Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
- Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
- Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
- 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
- Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек
