Перейти к основному содержанию

Как быстро объединить строки на основе одного значения столбца, а затем выполнить некоторые вычисления в Excel?

Например, у вас есть диапазон данных, и в одном столбце есть дубликаты, теперь вы хотите объединить строки на основе столбца A (есть дубликаты), а затем выполнить некоторые вычисления для другого столбца на основе объединенных строк, как показано на скриншоте:

В Excel нет быстрого метода объединения строк на основе одного значения столбца, но здесь я представляю
уловки, которые могут помочь вам объединить повторяющиеся строки, а затем суммировать или выполнять другие вычисления в другом столбце.


стрелка синий правый пузырь Объедините строки на основе одного столбца, затем суммируйте значения с помощью VBA

Существует код VBA, который поможет вам объединить повторяющиеся строки, а затем суммировать значения другого столбца.

Просмотр и редактирование нескольких книг Excel / документов Word с вкладками в Firefox, Chrome, Internet Explore 10!

Возможно, вы знакомы с просмотром нескольких веб-страниц в Firefox / Chrome / IE и возможностью переключения между ними, легко щелкая соответствующие вкладки. Здесь вкладка Office поддерживает аналогичную обработку, что позволяет вам просматривать несколько книг Excel или документов Word в одном окне Excel или Word и легко переключаться между ними, щелкая их вкладки. Нажмите бесплатно 30-дневная пробная версия Office Tab!

не отличаться

1. Нажмите F11 + Альт ключи для включения Microsoft Visual Basic для приложений окно, затем щелкните Вставить > Модули и скопируйте и вставьте ниже код VBA в новый Модули окно.

VBA: объединить строки на основе одного значения столбца

Sub MG30Nov12()
'Updateby20150519
Dim Rng As Range
Dim InputRng As Range
Dim nRng As Range
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
Set InputRng = InputRng.Parent.Range(InputRng.Columns(1).Address)
With CreateObject("scripting.dictionary")
.CompareMode = vbTextCompare
For Each Rng In InputRng
    If Not .Exists(Rng.Value) Then
        .Add Rng.Value, Rng.Offset(, 1)
    Else
        .Item(Rng.Value).Value = .Item(Rng.Value).Value + Rng.Offset(, 1)
            If nRng Is Nothing Then
                Set nRng = Rng
            Else
                Set nRng = Union(nRng, Rng)
            End If
    End If
Next
If Not nRng Is Nothing Then
    nRng.EntireRow.Delete
End If
End With
End Sub

2. Нажмите F5 или нажмите кнопку Run кнопку для запуска VBA, и появится диалоговое окно для выбора диапазона данных для работы. см. снимок экрана:

doc объединить столбцы на основе одного столбца 3

3. После выбора рабочего диапазона нажмите OK. Теперь данные были объединены по первому столбцу и суммированы значения во втором столбце.

doc объединить столбцы на основе одного столбца 4

Внимание: Этот код VBA может правильно работать при слиянии на основе первого столбца и значений суммы во втором столбце.


стрелка синий правый пузырь Объединяйте строки на основе одного столбца, а затем суммируйте значения с помощью Advanced Combine Rows

Если вы не знакомы с кодом VBA, вы можете использовать Расширенные ряды комбинирования особенность инструмента надстройки третьей части - Kutools for Excel чтобы легко и быстро объединить повторяющиеся строки, а затем суммировать значения в другом столбце.

После бесплатная установка Kutools for Excel, сделайте следующее:

1. Выберите данные, которые хотите использовать, и нажмите Кутулс > Слияние и разделение > Расширенные ряды комбинирования. Смотрите скриншот:

doc расширенный комбайн, ряд 1

2. Затем в появившемся диалоговом окне выберите столбец, на основе которого вы будете объединять другие столбцы, затем щелкните первичная Key, щелкните другой столбец и щелкните Рассчитать Затем выберите Сумма.

Функции: Если у выбранного диапазона есть заголовки, отметьте У моих данных есть заголовки, и проверьте Использовать форматированные значения сохранит форматирование после слияния.

doc объединить столбцы на основе одного столбца 6

3. Затем нажмите Ok. Теперь данные были объединены на основе основного столбца, а другой - суммирован. Смотрите скриншот:

doc объединить столбцы на основе одного столбца 7


стрелка синий правый пузырь Объединяйте строки на основе одного столбца, а затем выполняйте различные операции с другими столбцами с помощью Advanced Combine Rows.

Расширенные ряды комбинирования является мощным, потому что он не только может объединять повторяющиеся строки в одном столбце, а затем суммировать другой столбец, но также может объединять повторяющиеся строки в одном столбце, а затем выполнять различные операции с другими столбцами.

Предположим, у меня есть диапазон данных, как показано на скриншоте ниже, и я хочу объединить значения в столбце B и значения суммы в столбце C на основе столбца A.
doc объединить столбцы на основе одного столбца 8

После бесплатная установка Kutools for Excel, сделайте следующее:

1. Выберите диапазон данных и нажмите Кутулс > Слияние и разделение > Расширенные ряды комбинирования. Смотрите скриншот:

doc расширенный комбайн, ряд 1

2. в Объединить строки на основе столбца диалог, сделайте вот так:

(1) Щелкните столбец, на основе которого вы хотите объединить, и щелкните Основной ключ;

doc объединить столбцы на основе одного столбца 10

(2) Щелкните столбец, в котором вы хотите объединить данные, и щелкните Сочетать, затем выберите из списка один нужный разделитель;

doc объединить столбцы на основе одного столбца 11

(3) Щелкните столбец, значения которого вы хотите суммировать, и щелкните РассчитатьИ выберите Сумма.

doc объединить столбцы на основе одного столбца 12

3. Нажмите Ok. Теперь вы можете увидеть результат, как показано ниже:

doc объединить столбцы на основе одного столбца 13

Доступно Расширенные ряды комбинирования функцию, вы также можете объединять строки на основе одного столбца, а затем подсчитывать, усреднять, сохранять первые или последние данные в других столбцах. 

Лучшие инструменты для офисной работы

🤖 Kutools AI Помощник: Революционный анализ данных на основе: Интеллектуальное исполнение   |  Генерировать код  |  Создание пользовательских формул  |  Анализ данных и создание диаграмм  |  Вызов функций Kutools...
Популярные опции: Найдите, выделите или определите дубликаты   |  Удалить пустые строки   |  Объедините столбцы или ячейки без потери данных   |   Раунд без формулы ...
Супер поиск: Множественный критерий VLookup    VLookup с несколькими значениями  |   VLookup по нескольким листам   |   Нечеткий поиск ....
Расширенный раскрывающийся список: Быстрое создание раскрывающегося списка   |  Зависимый раскрывающийся список   |  Выпадающий список с множественным выбором ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка Фокус   |  Просмотр дизайна   |   Большой Формулный Бар    Менеджер книг и листов   |  Библиотека ресурсов (Авто текст)   |  Выбор даты   |  Комбинировать листы   |  Шифровать/дешифровать ячейки    Отправлять электронные письма по списку   |  Суперфильтр   |   Специальный фильтр (фильтровать жирным шрифтом/курсивом/зачеркиванием...) ...
15 лучших наборов инструментов12 Текст Инструменты (Добавить текст, Удалить символы, ...)   |   50+ График Тип (Диаграмма Ганта, ...)   |   40+ Практических Формулы (Рассчитать возраст по дню рождения, ...)   |   19 Вносимые Инструменты (Вставить QR-код, Вставить изображение из пути, ...)   |   12 Конверсия Инструменты (Числа в слова, Конверсия валюты, ...)   |   7 Слияние и разделение Инструменты (Расширенные ряды комбинирования, Разделить клетки, ...)   |   ... и более

Улучшите свои навыки работы с Excel с помощью Kutools for Excel и почувствуйте эффективность, как никогда раньше. Kutools for Excel предлагает более 300 расширенных функций для повышения производительности и экономии времени.  Нажмите здесь, чтобы получить функцию, которая вам нужна больше всего...

Описание


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I have the same/similar question. I am trying to sum all of the columns to the right of the reference cell but it only sums the one. How do I get it to sum all those to the right individually?
This comment was minimized by the moderator on the site
Hey, your module used to work for big tables as well (eg. you want to sum up according to Year but you have Sales 1, Sales 2, Sales 3....etc). But now it only gets the first column right (Sales 1) and all others are not summed correctly. Did you change anything?
Thanks!
This comment was minimized by the moderator on the site
Hi, IK, maybe you can use the sumproduct function SUMPRODUCT((A2:A10=”Pen”)*(B2:E10)) to calculate them one by one. A2:A10 is the range contain the lookup value, pen is the criterion, B2:E10 is range that you want to sum based on criterion.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations