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

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

АвторКеллиДата изменения

В повседневной работе при анализе данных часто требуется агрегировать количество записей или событий по временным периодам: например, подсчитать, сколько продаж было совершено в каждом месяце, отследить частоту активностей по неделям или проанализировать сезонные тенденции по кварталам. Хотя функция СЧЁТЕСЛИ позволяет считать данные по заданным критериям в Excel, не всегда очевидно, как группировать и подсчитывать даты непосредственно по годам, месяцам, кварталам или неделям. В этой статье представлены несколько практических и простых в применении методов подсчёта количества записей по различным временным периодам (год, квартал, месяц, неделя, день недели) в Excel — они помогут вам эффективно обобщать и анализировать временные данные, избегая ошибок при ручном подсчёте.


Подсчёт количества записей по годам/месяцам с помощью формул

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

Выберите пустую ячейку, в которую вы хотите вывести результат подсчёта, и введите следующую формулу:

=SUMPRODUCT((MONTH($A$2:$A$24)=F2)*(YEAR($A$2:$A$24)=$E$2))

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

Примечания и советы:

  • В формуле MONTH($A$2:$A$24)=F2 и YEAR($A$2:$A$24)=$E$2заданы критерии, соответствующие месяцу в ячейке F2 и году в ячейке E2. Обновите диапазоны и ссылки (например,)A2:A24, E2, F2) в соответствии с расположением ваших данных.
  • Для подсчёта только по месяцам без учёта года используйте:
    =SUMPRODUCT(1*(MONTH($A$2:$A$24)=F2))
  • Убедитесь, что столбец с датами содержит настоящие значения дат Excel, а не текстовые строки, лишь имитирующие формат даты, — это поможет избежать ошибок и несоответствий. Если формула выдаёт неожиданные результаты, обязательно перепроверьте формат дат.
  • Если ваш набор данных объёмный, рассмотрите возможность использования сводных таблиц или VBA для повышения производительности и упрощения обслуживания.

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


Подсчёт количества записей по годам/месяцам/дням недели/дням с помощью Kutools для Excel

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

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

1. Выделите столбец с датами и нажмите Kutools > Формат > Применить формат даты. Откроется следующее диалоговое окно:
перейдите в диалоговое окно «Применить формат даты» и задайте параметры

2. В диалоговом окне Применить формат даты выберите стиль форматирования, соответствующий вашей задаче подсчёта (например, месяц, год, день недели, день и т.д.), затем нажмите ОК. Например, выберите «Mar» для подсчёта по месяцам.

3. При выделенном столбце с датами нажмите Kutools > В фактические. Этот шаг преобразует все даты в отображаемые значения (например, названия месяцев), чтобы упростить последующую группировку.
нажмите «В фактические», чтобы преобразовать даты в названия месяцев

4. Далее выделите диапазон, содержащий преобразованные «Имя группы» и связанные данные (например, столбцы «Сумма» или «Категория»). Перейдите в меню Kutools > Содержимое > Расширенное объединение строк. Откроется следующий интерфейс:
перейдите к функции «Расширенное объединение строк» и задайте параметры

5. В диалоговом окне «Расширенное объединение строк»:
(1) Укажите столбец с датами в качестве Основного ключа, чтобы выполнить группировку по нему.
(2) Для нужного столбца выберите тип расчёта Подсчёт.
(3) Для остальных столбцов можно выбрать другие методы агрегации или объединения (например, объединить названия фруктов через запятую).
(4) Нажмите ОК, чтобы применить изменения.

Теперь ваши данные будут отображать количество записей за выбранный период. См. снимок экрана ниже:
подсчитано количество вхождений по месяцам

Kutools для Excel— раскройте весь потенциал Excel с помощью более чем 300 незаменимых инструментов, которые ускоряют и упрощают вашу работу, а также воспользуйтесь возможностями ИИ для более разумной обработки данных и повышения продуктивности.Получить сейчас

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

Подсчёт количества записей по годам/месяцам/кварталам/часам с помощью сводной таблицы

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

1. Выделите таблицу с данными и перейдите в меню Вставка > Сводная таблица. Откроется диалоговое окно создания сводной таблицы.
снимок экрана с выбором пункта меню Вставка > Сводная таблица

2. В диалоговом окне укажите место размещения сводной таблицы (новый лист или существующее расположение, например, ячейку E1), затем нажмите ОК.
задайте параметры в диалоговом окне «Создание сводной таблицы»

3. В области полей сводной таблицы перетащите поле Дата в раздел Строки, а поле Сумма (или целевое поле) — в раздел Значения. По умолчанию значения суммируются.

Сводная таблица отобразится, как показано на снимке экрана ниже:
перетащите названия столбцов в соответствующие поля

4. Измените способ вычисления значений на подсчёт: щёлкните правой кнопкой мыши по заголовку столбца значений (например, «Сумма по полю Сумма»), затем выберите Итоги по > Количество.
выберите «Итоги по» > «Количество» в контекстном меню

5. Чтобы сгруппировать данные по дополнительным периодам (например, месяцу, году или кварталу), щёлкните правой кнопкой мыши любую ячейку в столбце «Метки строк», выберите Группировать, укажите критерии группировки (например, месяцы, годы или кварталы) в открывшемся диалоговом окне и нажмите ОК.
выберите «Группировать» в контекстном меню и укажите месяц и год

Теперь ваша таблица отображает количество записей по выбранным периодам:
подсчитано количество вхождений по году и месяцу

Примечание:Группировка по нескольким периодам (например, месяц и год) добавляет дополнительные уровни в метки строк. Вы можете изменить порядок полей группировки (например, переместить)Годы ниже Дата) на панели полей сводной таблицы, чтобы настроить нужный вид сводки.
Количество записей за каждый месяц рассчитывается путем их группировки по месяцу и году.

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


Макрос VBA: подсчёт записей по годам/кварталам/месяцам/неделям с автоматической сводкой

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

Полная последовательность действий:

  • Перед первым запуском любого макроса обязательно создайте резервную копию книги.
  • Нажмите Разработчик > Visual Basic, чтобы открыть редактор VBA.
  • Нажмите Вставка > Модуль, затем скопируйте и вставьте приведённый ниже код в окно модуля.
Sub CountOccurrencesByPeriod()
    Dim lastRow As Long
    Dim ws As Worksheet, summaryWs As Worksheet
    Dim periodType As String
    Dim dict As Object, key As Variant
    Dim dateRange As Range, cell As Range
    Dim outputRow As Long
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set ws = Application.ActiveSheet
    Set dateRange = Application.InputBox("Select date range:", xTitleId, Selection.Address, Type:=8)
    
    periodType = Application.InputBox("Count by (Year/Quarter/Month/Week):", xTitleId, "Month", Type:=2)
    
    If dateRange Is Nothing Or periodType = "" Then Exit Sub
    
    Set dict = CreateObject("Scripting.Dictionary")
    
    For Each cell In dateRange
        If IsDate(cell.Value) Then
            Select Case LCase(periodType)
                Case "year"
                    key = Year(cell.Value)
                Case "quarter"
                    key = "Q" & WorksheetFunction.RoundUp(Month(cell.Value) / 3, 0) & " " & Year(cell.Value)
                Case "month"
                    key = Format(cell.Value, "yyyy-mm")
                Case "week"
                    key = "W" & WorksheetFunction.WeekNum(cell.Value) & " " & Year(cell.Value)
                Case Else
                    key = Format(cell.Value, "yyyy-mm")
            End Select
            
            If dict.Exists(key) Then
                dict(key) = dict(key) + 1
            Else
                dict.Add key, 1
            End If
        End If
    Next cell
    
    Set summaryWs = Worksheets.Add(After:=ws)
    summaryWs.Name = "Occurrence_Summary"
    
    summaryWs.Range("A1").Value = "Period"
    summaryWs.Range("B1").Value = "Occurrences"
    
    outputRow = 2
    For Each key In dict.Keys
        summaryWs.Cells(outputRow, 1).Value = key
        summaryWs.Cells(outputRow, 2).Value = dict(key)
        outputRow = outputRow + 1
    Next key
    
    MsgBox "Summary completed in sheet 'Occurrence_Summary'.", vbInformation
End Sub

После ввода кода:

  • Вернитесь в Excel и нажмите Alt+F8, выберите CountOccurrencesByPeriod и нажмите Выполнить.
  • Появится запрос на выбор Диапазон дат для анализа. Выберите соответствующий столбец или диапазон, содержащий ваши даты.
  • Второй запрос предложит указать период группировки: введите «Year», «Quarter», «Month» или «Week» (регистр не учитывается).
  • Макрос создаст новый лист с именем Occurrence_Summary, в котором перечислены все периоды и количество записей в каждом из них.

Устранение неполадок и советы:

  • Если появится предупреждение о безопасности макросов, измените настройки макросов в разделе Файл > Параметры > Центр управления > Параметры макросов.
  • Убедитесь, что столбец с датами содержит корректные значения в формате Excel: текстовые строки или смешанные форматы могут вызвать неточные расчёты или ошибки.
  • Макрос гибкий: введите «Quarter», чтобы мгновенно сгруппировать записи по годам и кварталам, или «Week» — для еженедельной сводки.
  • Если вы хотите настроить вывод — например, добавить дополнительные данные, — просто измените макрос так, чтобы он обрабатывал другие столбцы или применял другие правила расчёта.

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


Подсчёт количества записей по неделям с помощью формулы WEEKNUM

Подсчёт частоты записей или событий по неделям — распространённая задача при отслеживании продаж, управлении проектами и распределении ресурсов. В Excel для этого предусмотрена функция НОМНЕДЕЛИ, которая возвращает номер недели заданной даты в пределах года, что позволяет легко группировать данные по неделям с помощью формул.

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

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

=WEEKNUM(A2,1)

Второй аргумент («1») указывает, что неделя начинается с воскресенья (замените на «2», если вы хотите, чтобы неделя начиналась с понедельника). Скопируйте эту формулу во все строки с данными о датах.

2. Создайте список номеров недель, по которым нужно выполнить сводку (например, 1, 2, 3…). В другой пустой ячейке (например, D2) используйте следующую формулу для подсчёта количества записей за указанную неделю (предполагается, что в диапазоне B2:B24 находятся номера недель, а в ячейке D2 — номер недели для поиска):

=COUNTIF($B$2:$B$24, D2)

После нажатия клавиши Enter протяните эту формулу вниз по списку Номер недели. Каждый результат покажет количество записей за соответствующую неделю.

Советы и меры предосторожности:

  • Если нужно подсчитывать записи одновременно по году и неделе, чтобы отличать записи из разных лет, используйте:
    =SUMPRODUCT((YEAR($A$2:$A$24)=$F$2)*(WEEKNUM($A$2:$A$24,1)=G2))
    Здесь F2 — целевой год, а G2 — номер целевой недели. При необходимости скорректируйте диапазоны столбцов и ссылки.
  • Функция WEEKNUM может возвращать разные значения номера недели в зависимости от настроек: системных, по стандарту США/ISO или выбранного вами дня начала недели.
  • Если вы используете стандарт ISO номера недели (европейский стандарт, согласно которому недели начинаются с понедельника, а первой неделей года считается та, что содержит первый четверг), воспользуйтесь формулой =ISOWEEKNUM(A2) (для Excel 2013 и новее).
  • Всегда убедитесь, что все даты указаны в правильном формате дат Excel — это гарантирует точность результатов.

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


Демонстрация: подсчёт количества записей по годам/месяцам/дням недели/дням

 

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

Лучшие инструменты повышения продуктивности в 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-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
  • Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек