Excel подсчет значений по месяцам

  • Редакция Кодкампа

17 авг. 2022 г.
читать 2 мин


Часто вам может понадобиться суммировать значения некоторого набора данных в Excel на основе месяца.

Например, предположим, что у нас есть следующий набор данных, и мы хотели бы просуммировать общий объем продаж по месяцам:

В следующем пошаговом примере показано, как это сделать.

Шаг 1: введите данные

Сначала введите значения данных в Excel:

Шаг 2: извлеките месяц из дат

Далее нам нужно использовать функцию =МЕСЯЦ() для извлечения месяца из каждой даты.

В нашем примере мы введем следующую формулу в ячейку D2 :

=MONTH( A2 )

Затем мы перетащим и заполним эту формулу в каждую оставшуюся ячейку в столбце D:

Шаг 3: Найдите уникальные месяцы

Затем нам нужно использовать функцию =UNIQUE() для создания списка уникальных месяцев.

В нашем примере мы введем следующую формулу в ячейку F2 :

=UNIQUE( D2:D10 )

Это создаст список уникальных месяцев:

Шаг 4: Найдите сумму по месяцам

Далее мы будем использовать функцию СУММЕСЛИ(диапазон, критерий, диапазон_суммы) , чтобы найти сумму продаж, сделанных в течение каждого месяца.

В нашем примере мы введем следующую формулу в ячейку G2 :

=SUMIF( $D$2:$D$10 , F2 , $B$2:$B$10 )

Затем мы перетащим и заполним эту формулу в оставшиеся ячейки в столбце G:

Сумма Excel по месяцам

Это говорит нам:

  • В январе было совершено 117 продаж.
  • Всего в феврале было совершено 50 продаж.
  • Всего в марте было совершено 111 продаж.

Дополнительные ресурсы

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

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

Написано

Редакция Кодкампа

Замечательно! Вы успешно подписались.

Добро пожаловать обратно! Вы успешно вошли

Вы успешно подписались на кодкамп.

Срок действия вашей ссылки истек.

Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.

Успех! Ваша платежная информация обновлена.

Ваша платежная информация не была обновлена.

 

Доброго времени суток.
Господа, сразу прошу прощения, ибо политики безопасности компании не позволяют выложить файл с примером. Аналогично, и просмотреть другой пример не могу.  В поиске есть, но решение только в прикрепленных файла…

Имеем:
столбец с датами в формате dd.mm.yyyy
Нужно:
посчитать количество записей за определенный месяц.

Заранее благодарен.

 

арех

Пользователь

Сообщений: 324
Регистрация: 25.06.2014

#2

06.04.2015 10:07:08

Код
=СЧЁТЕСЛИ( "Где считать-диапозон"; "Ваша дата")

для примера, если в столбце А:А ваши даты

Код
=СЧЁТЕСЛИ(A:A;"11.01.1991")

Кажется все забыли про сводные :)

 

Пытливый

Пользователь

Сообщений: 4586
Регистрация: 22.12.2012

Если в столбцах именно ДАТА (а не текст), то можно легко  решить через СЧЁТЕСЛИМН()
Например, в А1:А6 — даты,
В С1 пишем дату начала месяца, который нас интересует, например 01.01.2014
В С2 пишем формулу, которая будет выдавать дату конца интересующего нас месяца: =КОНМЕСЯЦА(С1;0)
В С3 пишем итоговую суммирующую формулу:
=СЧЁТЕСЛИМН(А1:А6;»>=»&C1;А1:А6;»<=»&C2)

Кому решение нужно — тот пример и рисует.

 

арех

Пользователь

Сообщений: 324
Регистрация: 25.06.2014

#4

06.04.2015 10:16:29

Цитата
Пытливый написал: Если в столбцах именно ДАТА (а не текст)

Зачем мучиться. Вариант с формулой из #2 сообщения подходит и для ДАТА-формата. ;)

Кажется все забыли про сводные :)

 

Пытливый

Пользователь

Сообщений: 4586
Регистрация: 22.12.2012

apex, дык ить человеку за промежуток надобно… :)

Кому решение нужно — тот пример и рисует.

 

Да, я так и пытался. Но как при счетесли задать именно месяц?  Например четверный?
Счетесли(A:A; 4) не считает…  Как задать, что «4» это именно месяц?

Изменено: ogololobov200906.04.2015 10:22:59

 

арех

Пользователь

Сообщений: 324
Регистрация: 25.06.2014

Пытливый,Тю блин :)

Кажется все забыли про сводные :)

 

арех

Пользователь

Сообщений: 324
Регистрация: 25.06.2014

Тогда можно добавить столбец — с месяцем — и к нему привязать СЧЁТЕСЛИ

Изменено: арех06.04.2015 10:39:15

Кажется все забыли про сводные :)

 

Sanja

Пользователь

Сообщений: 14838
Регистрация: 10.01.2013

Возможно Сводная Вам подойдет, без всяких формул

Согласие есть продукт при полном непротивлении сторон.

 

Да вот как раз хотел  без дополнительных столбцов и таблиц..  Так-то решений море.

 

Pelena

Пользователь

Сообщений: 1416
Регистрация: 22.12.2012

#11

06.04.2015 11:01:19

Код
=СУММПРОИЗВ(--(МЕСЯЦ(диапазон_с_датами)=4))

Код
=СУММПРОИЗВ(--(ТЕКСТ(диапазон_с_датами;"ММММ")="апрель"))

это если год не надо учитывать

 

Pelena, не понял ваш синтаксис.
Что вместо «—«?
У меня не работает. Возможно я как-то не так подставляю..
СУММПРОИЗВ — это же 2 массива перемножает и складывает. Не пойму, что здесь нужно перемножать.

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

#13

06.04.2015 12:10:14

Цитата
ogololobov2009 написал:
Что вместо «—«?

ни чего, данная комбинация (бинарное отрицание) преобразует текст «истина» в 1, «ложь» в 0
есть предположение что у вас вместо дат в числовом виде текст но без файла это только предположение

Лень двигатель прогресса, доказано!!!

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

вот вам пример в картинке

Лень двигатель прогресса, доказано!!!

 

Действительно работает. :)

Спасибо всем за помощь и пояснения!

Если не сложно, поясните еще логику данной функции. Не понимаю почему СУММПРОИЗВ дает количество.

Изменено: ogololobov200906.04.2015 13:58:53

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

Зайдите в раздел «Приемы» — там про эту функцию есть статья.

 

Максим Зеленский

Пользователь

Сообщений: 4646
Регистрация: 11.06.2014

Microsoft MVP

#17

06.04.2015 14:04:54

Цитата
ogololobov2009 написал: Не понимаю почему СУММПРОИЗВ дает количество.

Выделите ячейку с формулой. Вкладка «Формулы» — кнопка «Вычислить формулу» (примерно посередине, кружок с буквой f курсивом). там более-менее наглядно.
СУММПРОИЗВ может просуммировать и 1 массив.

F1 творит чудеса

 

TheBestOfTheBest

Пользователь

Сообщений: 2366
Регистрация: 03.04.2015

Excel 2010 +PLEX +SaveToDB +PowerQuery

#18

06.04.2015 14:25:13

Цитата
ogololobov2009 написал: Не понимаю почему СУММПРОИЗВ дает количество.

Потому что логическое выражение ИСТИНА/ЛОЖЬ представляется excel-ем как 1/0.

Неизлечимых болезней нет, есть неизлечимые люди.

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

#19

06.04.2015 15:01:39

Цитата
логическое выражение ИСТИНА/ЛОЖЬ представляется excel-ем как 1/0

… и СУММПРОИЗВ работает, как и раньше, но сумма единиц- это все равно, что количество.

 

Alex Star

Пользователь

Сообщений: 4
Регистрация: 05.09.2020

Здравствуйте,
искал ответ на свой вопрос и это тема более близка к моему вопросу.
Помогите пожалуйста

Прикрепленные файлы

  • Пример.xlsx (10.64 КБ)

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

#21

11.09.2021 16:38:06

Alex Star, нужно описывать свою задачу в сообщении.

На чтение 5 мин. Просмотров 27.6k.

= СУММЕСЛИМН( значения ; Диапазон_Значений ; «> =» & A1 ; Диапазон_Значений; «<=» & КОНМЕСЯЦА( A1 ; 0 ))

Сумма по месяцам

Эта функция поможет подвести итоги по месяцу при помощи функции КОНМЕСЯЦА. В примере формула выглядит так:

=СУММЕСЛИМН(C4:C9;B4:B9; «>=» & E4; B4:B9; «<=» &КОНМЕСЯЦА( E4; 0 ))

Функция СУММЕСЛИМН может суммировать диапазоны на основе нескольких критериев.

В этом случае мы устанавливаем СУММЕСЛИМН суммировать суммы по месяцам , используя два критерия: один для соответствующей даты больше или равной первому дню месяца, второй, для соответствующей даты меньше или равной последнему дню месяца. Другими словами, нам нужна формула , как эта:

= СУММЕСЛИМН( сумма ; дата ; «> =» & «1/1/2016» ; дата ; «<=» & «1/31/2016» )

Более безопасная альтернатива

=СУММЕСЛИМН ( сумма ; дата ; «> =» & ДАТА ( 2016 ; 1 ; 1 ); дата ; «<=» & ДАТА ( 2016 ; 1 ; 31 ))

Он более безопасен, поскольку сроки построены с отдельными значениями год, месяц и день, а не вводятся как текст, который должен быть интерпретирован Excel).

Как правило, это болезненно, потому что если вы добавляете названия месяцев в виде текста (т.е. «январь», «Февраль», «март» и т.д.) в столбце Е вы должны пойти на лишние хлопоты, чтобы создать даты, которые можно использовать для критериев.

Тем не менее, в данном случае, мы используем простой трюк, чтобы сделать это легко: В колонке Е, вместо того, чтобы печатать названия месяцев, мы добавим фактические даты (1/1/2016, 2/1/2016, 3/1/2016), затем используем формат дат ( «мммм») для отображения названия месяцев.

Это позволяет легко строить критерии нужных нам для СУММЕСЛИ. Чтобы соответствующая дата была больше или равна первому числу месяца, мы используем:

«> =» & E4

И чтобы соответствующая дата была меньше или равна последнему дню месяца, мы используем:

«<=» &КОНМЕСЯЦА( E4 ; 0 )

Где КОНМЕСЯЦА автоматически возвращается в последний день.

Конъюнкция с операндом (&) необходима при построении критериев, которые использует логический оператор с числовым значением.

Сумма за месяц игнорируя год

=СУММПРОИЗВ (( МЕСЯЦ ( даты ) = месяц ) * количество )

Подводя данные по месяцам, игнорируя год, вы можете использовать формулу, основанную на функциях СУММПРОИЗВ и МЕСЯЦ.

Сумма за месяц игнорируя год

В показанном примере, формула в Н5:

=СУММПРОИЗВ((МЕСЯЦ(B4:B19)=3)*E4:E19)

В результате получится сумма всех продаж в марте, независимо от года.

Внутри функции СУММПРОИЗВ, функция МЕСЯЦ используется для извлечения номера месяца для каждой даты в наборе данных. Сокращенный вариант результата массива выглядит следующим образом:

{ 1 ; 1 ; 1 ; 2 ; 2 ; 2 ; 3 ; 3 ; 3 }

Каждое значение сравнивается с 3 (номер месяца март), чтобы получить результат, как этот:

{ ЛОЖЬ ; ЛОЖЬ ; ЛОЖЬ ; ЛОЖЬ ; ЛОЖЬ ; ЛОЖЬ ; ИСТИНА ; ИСТИНА ; ИСТИНА }

Этот массив затем умножается на значения суммы, ассоциированных с каждой датой марта. Арифметическая операция изменяет ИСТИНА/ЛОЖЬ значения в единицы и нули, поэтому операция выглядит примерно так:

{ 0 ; 0 ; 0 ; 0 ; 0 ; 0 ; 1 ; 1 ; 1 } * { 100 ; 100 ; 100 ; 100 ; 100 ; 100 ; 100 ; 100 ; 100 }

Где 100 это просто заполнитель на любую сумму. В результате получится один массив следующим образом:

{ 0 ; 0 ; 0 ; 0 ; 0 ; 0 ; 100 ; 100 ; 100 }

Обратите внимание, что только «выжившие« суммы связаны с мартом, а остальные равны нулю.

СУММПРОИЗВ затем суммирует элементы в массиве и рассчитывает результат, 300 в сокращенном примере выше.

Среднее значение по месяцам

=СРЗНАЧЕСЛИМН( значения ; даты ; «> =» & A1 ; даты ; «<=» & КОНМЕСЯЦА( A1 ))

Чтобы высчитать среднее за месяц, вы можете использовать формулу, основанную на функции СРЗНАЧЕСЛИМН, с помощью функции КОНМЕСЯЦА.

В показанном примере, формула в F4 является:

=СРЗНАЧЕСЛИМН(D5:D12;C5:C12;»>=F5″;C5:C12;»»<=КОНМЕСЯЦА(F5;0))

Функция СРЗНАЧЕСЛИМН может находить среднее в диапазонах на основе нескольких критериев. В этом случае мы устанавливаем СРЗНАЧЕСЛИМН составлять среднее по месяцам , используя два критерия: (1) дата больше или равна первому дню месяца, (2) дата меньше или равна последнему дню месяца. Если мы жестко закодируем даты в январе 2016 года в формулу с использованием функции ДАТА, она будет выглядеть следующим образом:

=СРЗНАЧЕСЛИМН( суммы ; сроки ; «> =» & ДАТА ( 2016 ; 1 ; 1 ); даты ; «<=» & ДАТА ( 2016 ; 1 ; 31 ))

Кодирование дат

Но мы не хотим, чтобы даты жестко кодировались, мы хотим, чтобы Excel создал эти даты для нас. Как правило, это сложно, потому что если вы добавляете названия месяцев в виде текста (т.е. «январь», «февраль», «март» и т.д.) в столбце Е вы должны пойти на лишние хлопоты, чтобы создать даты, которые можно использовать для критериев,

Тем не менее, в данном случае, мы используем простой трюк, чтобы сделать вещи проще: в колонке Е, вместо того, чтобы печатать названия месяцев, мы добавим фактические даты для первого числа каждого месяца (1/1/2016, 2/1/2016, 3 / 1/2016, и т.д.), а также используем пользовательский формат даты ( «МММ») для отображения названия месяцев.

Это позволяет легко строить критерии, нужные нам для СРЗНАЧЕСЛИМН. Чтобы соответствующие даты были больше или равны первому числу месяца, мы используем:

«> =» & E4

И чтобы соответствующие даты были меньше или равны последнему дню месяца, мы используем:

«<=» & КОНМЕСЯЦА( E4 ; 0 )

КОНМЕСЯЦА автоматически возвращается в последний день того же месяца, потому что мы поставляем ноль для месяца аргумента.

Примечание: конъюнкция с операндом (&) необходима при построении критериев на основе ссылки на ячейку.

В Excel мы можем использовать функцию СЧЁТЕСЛИМН для подсчета ячеек с заданными критериями. В этом руководстве показано, как использовать эту функцию СЧЁТЕСЛИМН вместе с функцией ДАТАФИКАЦИЯ для создания итогового подсчета по месяцам в Excel.


Создайте сводный счет по месяцам с помощью функций СЧЁТЕСЛИМН и ДАТА

Чтобы создать итоговый счетчик по месяцам, вы можете использовать формулу, основанную на функциях СЧЁТЕСЛИМН и ДАТАМ, общий синтаксис:

=COUNTIFS(date_range,»>=»&first_day_of_month,date_range,»<«&EDATE(first_day_of_month,1))

  • date_range: Список дат, которые вы хотите подсчитать;
  • first_day_of_month: Ячейка, содержащая первый день месяца.

Предполагая, что у вас есть список дат в столбце A, теперь вы хотите получить общее количество, основанное на некоторых конкретных месяцах. В этом случае вы должны ввести первые дни месяцев, которые вы хотите посчитать, как показано на скриншоте ниже:

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

=COUNTIFS($A$2:$A$13,»>=»&C2,$A$2:$A$13,»<«&EDATE(C2,1))

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


Пояснение к формуле:

=COUNTIFS($A$2:$A$13,»>=»&C2,$A$2:$A$13,»<«&EDATE(C2,1))

  • Функция СЧЁТЕСЛИМН используется для подсчета количества ячеек на основе нескольких критериев, в этой формуле C2 — это первый день месяца.
  • Чтобы получить общее количество за месяц, вам необходимо указать еще один критерий — первый день следующего месяца. Это можно вернуть с помощью функции EDATE.
  • Вся формула означает, что подсчитываемые даты должны быть больше или равны дате в ячейке C2 и меньше первого дня следующего месяца, предоставленного функцией EDATE.

Используемая относительная функция:

  • COUNTIFS:
  • Функция СЧЁТЕСЛИМН возвращает количество ячеек, соответствующих одному или нескольким критериям.
  • EDATE:
  • Функция СЧЁТЕСЛИМН возвращает серийный номер, который равен n месяцам в будущем или прошлом.

Другие статьи:

  • Подсчитать количество дат по году, месяцу
  • При работе с листом Excel иногда вам может потребоваться подсчитать ячейки, в которых указаны даты за определенный год или месяц, как показано ниже. Чтобы решить эту задачу в Excel, вы можете использовать функции СУММПРОИЗВ, ГОД и МЕСЯЦ для создания формул для подсчета количества дат, принадлежащих определенному году или месяцу, как вам нужно.
  • Подсчитать количество ячеек между двумя значениями / датами
  • Вы когда-нибудь пытались получить или подсчитать количество ячеек между двумя заданными числами или датами в Excel, как показано на скриншоте ниже? В этой статье мы расскажем о некоторых полезных формулах для решения этой проблемы.
  • Количество ячеек, содержащих числовые или нечисловые значения
  • Если у вас есть диапазон данных, который содержит как числовые, так и нечисловые значения, и теперь вы можете подсчитать количество числовых или нечисловых ячеек, как показано на скриншоте ниже. В этой статье я расскажу о некоторых формулах решения этой задачи в Excel.

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

Kutools for Excel — Помогает вам выделиться из толпы

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

  • Разработан для 1500 рабочих сценариев, помогает решить 80% проблем с Excel.
  • Уменьшите количество нажатий на клавиатуру и мышь каждый день, избавьтесь от усталости глаз и рук.
  • Станьте экспертом по Excel за 3 минуты. Больше не нужно запоминать какие-либо болезненные формулы и коды VBA.
  • 30-дневная неограниченная бесплатная пробная версия. 60-дневная гарантия возврата денег. Бесплатное обновление и поддержка 2 года.

Лента Excel (с Kutools for Excel установлены)


Вкладка Office — включение чтения и редактирования с вкладками в Microsoft Office (включая Excel)

  • Одна секунда для переключения между десятками открытых документов!
  • Уменьшите количество щелчков мышью на сотни каждый день, попрощайтесь с рукой мыши.
  • Повышает вашу продуктивность на 50% при просмотре и редактировании нескольких документов.
  • Добавляет эффективные вкладки в Office (включая Excel), точно так же, как Chrome, Firefox и новый Internet Explorer.

Снимок экрана Excel (с установленной вкладкой Office)

Комментарии (0)


Оценок пока нет. Оцените первым!

Excel для Microsoft 365 Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Excel 2007 Еще…Меньше

Для подсчета чисел или дат, которые соответствуют одному условию (например, больше, меньше, больше или равно или меньше или равно), используйте функцию СЧЁТЕIF. Для подсчета чисел или дат, которые попадают в диапазон (например, больше 9000 и при этом меньше 22500), можно использовать функцию СЧЁТЕ ЕСЛИМН. Кроме того, можно также использовать суммПРОИВ.

Пример

Примечание: Вам потребуется настроить ссылки на формулы в ячейках, указанные здесь, в зависимости от того, где и как вы копируете эти примеры в Excel листе.

1

A

B

2

Продавец

Счет

3

Грачев

15 000

4

Грачев

9 000

5

Шашков

8 000

6

Суйма

20 000

7

Грачев

5 000

8

Зайцев

22 500

9

Формула

Описание (результат)

10

=СЧЁТЕ ЕСЛИ(B2:B7;»>9000″)

Функция СЧЁТЕФ подсчитывирует количество ячеек в диапазоне B2:B7, содержащих числа больше 9000 (4).

11

=СЧЁТЕ ЕСЛИ(B2:B7;»<=9000″)

Функция СЧЁТЕФ подсчитывирует количество ячеек в диапазоне B2:B7, содержащих числа меньше 9000 (4).

12

=СЧЁТЕ ЕСЛИМН(B2:B7;»>=9000″;B2:B7;»<=22500″)

Функция СЧЁТЕ ЕСЛИМН (доступна в Excel 2007 г. и более поздних) подсчитывают количество ячеек в диапазоне B2:B7, большее или равное 9000, и меньше или равно 22500 (4).

13

=СУММПРОИВ((B2:B7>=9000)*(B2:B7<=22500))

Функция СУММПРОИПР подсчитывает количество ячеек в диапазоне B2:B7, содержащих числа, которые больше или равны 9000 и меньше или равны 22500 (4). Эту функцию можно использовать в Excel 2003 и более ранних, где функция СЧЁТЕФМН недоступна.

14

Системная дата

15

3/11/2011

16

1/1/2010

17

12/31/2010

18

6/30/2010

19

Формула

Описание (результат)

20

=СЧЁТЕ ЕСЛИ(B14:B17;»>01.03.2010″)

Количество ячеек в диапазоне B14:B17 с данными больше 01.03.2010 г. (3).

21

=СЧЁТЕ ЕСЛИ(B14:B17;»31.12.2010″)

Количество ячеек в диапазоне B14:B17, равное 31.12.2010 (1). Знак равно не требуется в условиях, поэтому он не включается в условия (формула будет работать со знаком равно, если вы включит его («=31.12.2010»).

22

=СЧЁТЕ ЕСЛИМН(B14:B17;»>=01.01.2010″;B14:B17;»<=31.12.2010″)

Количество ячеек в диапазоне B14:B17 между (включительно) 01.01.2010 и 31.01.2010 (3).

23

=СУММПРОИВ((B14:B17>=ДАТА.ДАТА.В.(«01.01.2010»))*(B14:B17<=ДАТАVALUE(«31.12.2010»)))

Количество ячеек в диапазоне B14:B17 между (включительно) 01.01.2010 и 31.01.2010 (3). Этот пример служит заменой функции СЧЁТЕНФС, которая впервые была представлена в Excel 2007 г. Функция ДАТА.ВЕО преобразует даты в числовые значения, с которыми затем может работать функция СУММПРОИВ.

Нужна дополнительная помощь?

Понравилась статья? Поделить с друзьями:
  • Excel пишет число в ячейке
  • Excel подсчет значений в столбце по значению
  • Excel пишет формулу как текст
  • Excel подсчет значений в массиве
  • Excel пишет формулу вместо значения