KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

Как подсчитать данные по группам в Excel?

АвторСуньДата изменения

В Excel подсчёт общего количества значений в простом диапазоне — задача привычная и несложная для большинства пользователей. Однако на практике, например в отчётах о продажах, списках запасов или данных о сотрудниках, информация зачастую организована по группам: категории товаров, отделы, регионы и т.п. В таких случаях важно не только получить общий итог, но и определить количество записей в каждой группе. Эта задача особенно актуальна при сводке и анализе сгруппированных данных для составления отчётов или принятия решений на основе информации. Хотя в Excel нет одной кнопки или встроенной функции с надписью «Подсчёт по группам», существует несколько надёжных и эффективных способов добиться нужного результата.

Ниже представлены практические способы группового подсчёта данных в Excel, подходящие под разные задачи и уровни пользователей — от встроенных инструментов до универсальных решений на основе формул и автоматизированных скриптов VBA. Каждый метод обладает своими преимуществами, что упрощает выбор оптимального варианта для конкретного сценария работы с таблицей.

Подсчёт данных по группам с помощью Сводная таблица
Подсчёт данных по группам с помощью кода VBA
Подсчёт данных по группам с помощью формул Excel (COUNTIF/COUNTIFS)


Подсчёт данных по группам с помощью Сводная таблица

Сводные таблицы — идеальный инструмент для быстрой агрегации больших объёмов данных по различным категориям, включая подсчёт количества элементов в каждой группе. Например, если у вас есть длинный список торговых операций и вы хотите узнать, сколько раз был продан каждый товар, сводная таблица станет одним из самых быстрых и практичных решений.

Предположим, у вас есть набор данных, подобный приведённому ниже, и вы хотите подсчитать количество вхождений по группам (например, сколько раз встречается каждый элемент или категория):

снимок экрана исходных данных

1. Выделите весь диапазон данных, содержащий группы и данные, которые необходимо подсчитать. Нажмите Вставка > Сводная таблица > Сводная таблица на ленте Excel. См. снимок экрана:

снимок экрана создания сводной таблицы

2. В диалоговом окне Создание сводной таблицы выберите, где разместить сводную таблицу — на новом листе или на существующем. Если вы выбираете Существующий лист, обязательно укажите пустую ячейку, которая не будет мешать вашим текущим данным. См. снимок экрана:

снимок экрана выбора места размещения сводной таблицы

3. Нажмите ОК. Справа в окне Excel появится область Список полей сводной таблицы. Перетащите заголовок столбца с группами (например, «Товар» или «Категория») одновременно в разделы Метки строк и Значения. По умолчанию в области значений будет использоваться функция «Количество», показывающая, сколько раз встречается каждая запись. См. снимок экрана:

снимок экрана добавления полей в сводную таблицу

Вы сразу увидите отчёт, в котором Excel автоматически сгруппирует ваши данные и покажет количество записей в каждой группе. Это особенно полезно для наглядного отображения распределения товаров, продуктов или записей по категориям. Если вы обновите исходный набор данных, не забудьте обновить сводную таблицу, чтобы все изменения корректно отразились в ней.

снимок экрана результата

Советы и примечания: Если исходный диапазон данных содержит пустые строки или столбцы с пустыми значениями, обязательно исключите их при создании сводной таблицы — иначе это может повлиять на точность группировки. Сводные таблицы обеспечивают интуитивно понятный способ агрегирования данных, но если вам нужно использовать результаты в формулах на других листах или требуется более гибкая отчётность, рассмотрите приведённые ниже решения на основе формул или VBA.


Подсчёт данных по группам с помощью кода VBA

Если ваша книга требует частого подсчёта и составления отчётов по различным группам данных или вы хотите автоматизировать этот процесс для больших наборов данных и регулярных задач, воспользуйтесь скриптом VBA. VBA (Visual Basic for Applications) позволяет настраивать и автоматизировать рабочие процессы в Excel — создавать отчёты, агрегировать информацию или экспортировать групповые итоги с минимальным ручным вмешательством.

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

1. Перейдите на вкладку РазработчикVisual Basic, чтобы открыть редактор VBA. В появившемся окне выберите ВставкаМодуль и вставьте следующий код в окно модуля:

Sub GroupCount()
    Dim dict As Object
    Dim lastRow As Long
    Dim groupCol As Range
    Dim groupCell As Range
    Dim outputRow As Long
    Dim key As Variant
    
    Set dict = CreateObject("Scripting.Dictionary")
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    ' Change Sheet1 and column as needed
    With Worksheets("Sheet1")
        lastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
        Set groupCol = .Range("A2:A" & lastRow)
        
        For Each groupCell In groupCol
            If Not dict.Exists(groupCell.Value) Then
                dict(groupCell.Value) = 1
            Else
                dict(groupCell.Value) = dict(groupCell.Value) + 1
            End If
        Next groupCell
        
        outputRow = 2
        .Cells(1, "C").Value = "Group"
        .Cells(1, "D").Value = "Count"
        
        For Each key In dict.Keys
            .Cells(outputRow, "C").Value = key
            .Cells(outputRow, "D").Value = dict(key)
            outputRow = outputRow + 1
        Next key
    End With
End Sub

2. Чтобы выполнить код, нажмите F5 или щёлкните кнопку Кнопка «Выполнить» «Выполнить» в редакторе VBA. Скрипт просканирует данные по группам в столбце A (начиная с A2) на листе «Sheet1», подсчитает количество записей в каждой группе и выведет сводный результат в столбцы C и D, начиная со строки 2.

Примечания: Вы можете изменить название «Sheet1», ссылки на столбцы и места вывода результатов в соответствии с вашей конкретной книгой. Если ваши данные содержат пустые ячейки или особые случаи, обязательно проверьте точность результатов. Если дублирующиеся имена групп имеют разное написание (например, «Apple» и «apple»), они будут рассматриваться как отдельные группы. Для настройки группировки — например, без учёта регистра, с сортировкой результатов или с применением более сложной логики — может потребоваться дополнительная доработка кода VBA.

VBA идеально подходит для автоматизации повторяющихся задач, особенно при работе с большими или часто обновляемыми наборами данных, где ручное создание сводок отнимает слишком много времени. Если возникают ошибки вроде «Переменная объекта не установлена» или «Индекс за пределами диапазона», убедитесь, что ссылки на листы и диапазоны точно соответствуют структуре ваших реальных данных.


Подсчёт данных по группам с помощью формул Excel (COUNTIF/COUNTIFS)

Для пользователей, которые предпочитают работать прямо в сетке листа или нуждаются в динамических решениях на основе формул для последующих вычислений и ссылок, функции Excel COUNTIF и COUNTIFS становятся мощной альтернативой. Эти формулы особенно ценны, когда групповые подсчёты должны автоматически обновляться при изменении исходных данных или когда результаты требуется разместить рядом с данными — для удобства справки или углублённого анализа.

Пример сценария: Допустим, ваши данные находятся в столбцах A (Имя группы) и B (Значение), и вы хотите подсчитать, сколько раз встречается каждая группа.

1.В новом столбце рядом с данными (например, в ячейке C2) введите приведённую ниже формулу для расчёта количества записей в каждой группе:

=COUNTIF($A$2:$A$100, A2)

2. После ввода формулы нажмите Enter. Чтобы применить её ко всем строкам, протяните маркер заполнения вниз от ячейки C2 до конца данных или дважды щёлкните маркер заполнения для автоматического заполнения. Формула вернёт количество вхождений группы в текущей строке.

3.Если вы хотите получить уникальный список всех групп и соответствующие им подсчёты, сначала извлеките уникальные названия групп (например, с помощью функции)Удалить дубликаты или формулы UNIQUE — в зависимости от версии Excel), а затем примените к этому списку функцию COUNTIF.

Пояснение параметров: В приведённой выше формуле $A$2:$A$100 — это диапазон, содержащий названия ваших групп. Настройте этот диапазон в соответствии с вашими фактическими данными. A2 — это ссылка на ячейку с текущим значением группы.

Это формульное решение отличается высокой гибкостью: его можно применять к отфильтрованным спискам, отсортированным данным или комбинировать с другими вычислениями. Однако при работе с очень большими наборами данных стоит учитывать производительность — пересчёт может занять дополнительное время.

Функция COUNTIFS позволяет выполнять подсчёт по нескольким критериям, если ваша группировка более сложная (например, одновременно по категории и региону).


Связанные статьи:


Лучшие инструменты повышения продуктивности в Office

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

Раскройте весь потенциал 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.

ExcelWordOutlookTabsPowerPoint
  • Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
  • Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
  • Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
  • 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
  • Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек