Суммирование ячеек в excel за месяц


Просмотров:
9 315

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

Что хотим получить

Сумма за месяц, пример формулы в Excel

В данном примере, у нас есть определенный диапазон дат (B3:B11) и соответствующие этим датам значения (С3:С11). В ячейках F3:F5 мы хотим получить суммы за месяц из диапазона.

Для этого используем функцию «СУММЕСЛИМН», данная функция суммирует значения из указанного диапазона, для которых выполняются несколько условий. Для нашей задачи таким условием будет определение диапазона от начала до конца месяца. Для упрощения сделаем так что задать в диапазоне необходимо только начальную дату, то есть первое число месяца, а дату окончания месяца получим из функции «КОНЕЦМЕСЯЦА».

Формула

Введем в ячейку F3, такую формулу:

=СУММЕСЛИМН(C3:C11;B3:B11;»>=»&E3;B3:B11;»<=»&КОНМЕСЯЦА(E3;0))

Разберемся, что мы ввели

С3:С11 – диапазон, из которого будут браться значения для суммирования.

B3:B11;»>=»&E3 – первое условие, определяющее, что значение из диапазона В3:В11 должно быть больше или равно значению в ячейке Е3. Так как в ячейке Е3 указана дата начала месяца, то этим условием определяем нижнюю границу диапазона дат.

«<=»&КОНМЕСЯЦА(E3;0) – второе условие указывающее верхнюю границу диапазона дат. Значение должно быть меньше или равно чем результат выполнения функции «КОНЕЦМЕСЯЦА», датой для которой является первый день месяца из ячейки Е3.

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

Делаем красиво

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

Откроем окно «Формат ячеек» и на вкладке «Число» выберем «(все форматы)».  Среди предопределенных форматов есть один формат более – менее нам подходящий «МММ.ГГ». В этом формате будет представлено сокращенное название месяца и две последние цифры года.

Что бы не определять свой формат, можно использовать и этот предопределенный формат. Но если в таблице данных содержатся значения только за один год, выводить номер года нет ни какого смысла. Введем в поле «Тип» собственный формат «ММММ» — четыре большие буквы М. После чего наши ячейки примут вид:

Первый день месяца с пользовательским форматированием в 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

Написано

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

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

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

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

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

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

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

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

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

= СУММЕСЛИМН( значения ; Диапазон_Значений ; «> =» & 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 создал эти даты для нас. Как правило, это сложно, потому что если вы добавляете названия месяцев в виде текста (т.е. «январь», «февраль», «март» и т.д.) в столбце Е вы должны пойти на лишние хлопоты, чтобы создать даты, которые можно использовать для критериев,

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

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

 

yevgeniy

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

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

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

 

dude

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

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

 

yevgeniy

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

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

Да.  
Спасибо.  
Поясните если ест время работу формулы.

 

Можно и так.  
Тут хоть синтаксис формулы ясен.  
А про бинарное отрицание   —    и мне очень хотелось бы узнать.

 

Спасибо за информацию, The_Prist!  
Вот только бы хотелось где-нибудь почитать об этом, примеры посмотреть.  
А то в справочной Excel не нашёл я этого.  
Может, подскажите, где об этом прочесть?  
Я так хочу постичь Excel и мне не хватает информации.  
Получаю, в основном, здесь, на форуме.  
Мой прошлый ответ Евгению — мой первый более-менее вразумительный ответ хоть кому-то по Excel. Это — здорово!

 

Serge

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

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

{quote}{login=vlad3622340}{date=18.11.2009 11:31}{thema=}{post}Спасибо за информацию, The_Prist!  
Вот только бы хотелось где-нибудь почитать об этом, примеры посмотреть.  
А то в справочной Excel не нашёл я этого.  
Может, подскажите, где об этом прочесть?  
Я так хочу постичь Excel и мне не хватает информации.  
Получаю, в основном, здесь, на форуме.  
Мой прошлый ответ Евгению — мой первый более-менее вразумительный ответ хоть кому-то по Excel. Это — здорово!{/post}{/quote}  

http://www.planetaexcel.ru/links.php

 

vikttur

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

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

Пример Тухачевского без допстолбца  
=СУММПРОИЗВ(данные;—(МЕСЯЦ(дата)=СТОЛБЕЦ(A:A)))

 

Пример без изменений исходных данных :)  
=СУММ((МЕСЯЦ($B$2:$B$366)=ПОИСКПОЗ(G2;$G$2:$R$2;0))*$D$2:$D$366)

 

vikttur

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

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

{quote}{login=Саша}{date=18.11.2009 02:44}{thema=}{post}Пример без изменений исходных данных :){/post}{/quote}  
Кто посмел? Тухачевский не менял. Я тоже :)

 

Ну..один использовал доп строку, второй заменил текстовые названия месяцев на даты, скрыв следы преступления форматом ячейки =)  
Vikttur, ты бы лучше с просмотром() в теме sh_alex’a помог, чем тут с суммпроизв играться :)

 

vikttur

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

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

 

Yury

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

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

А если есть столбец со статьёй расхода, то можно ли вывести сумму по каждому виду расхода?  
Пробовал использовать СУММЕСЛИМН, но не могу вставить условие по месяцу…

 

Serge

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

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

{quote}{login=Yury}{date=04.07.2010 12:25}{thema=}{post}А если есть столбец со статьёй расхода, то можно ли вывести сумму по каждому виду расхода?  
Пробовал использовать СУММЕСЛИМН, но не могу вставить условие по месяцу…{/post}{/quote} Так?  

  52 Кб

 

Serge

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

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

Или так ещё можно…  

  55,5 Кб

 

Serge

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

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

 

Yury

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

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

Да, именно так! Спасибо!  
Если я правильно понял, то в первом случае для решения использована сводная таблица (сейчас буду изучать), а во втором «оченьнавороченнаяформула» :)

 

Serge

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

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

{quote}{login=Yury}{date=04.07.2010 01:04}{thema=}{post}Да, именно так! Спасибо!  
Если я правильно понял, то в первом случае для решения использована сводная таблица (сейчас буду изучать), а во втором «оченьнавороченнаяформула» :){/post}{/quote}Про сводную Вы правы, а вот «оченьнавороченнуюформулу» в третьем решении я чуть укоротил :-)  

  В любом случае никаких исходных данных я не менял, это я про <Ну..один использовал доп строку, второй заменил текстовые названия месяцев на даты, скрыв следы преступления форматом ячейки =)>…

 

dimetrius

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

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

А если нужно просуммировать значения по месяцам не для одного года?

 

Serge

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

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

{quote}{login=dimetrius}{date=05.01.2011 10:19}{thema=}{post}А если нужно просуммировать значения по месяцам не для одного года?{/post}{/quote}  
А какая разница? Сколько хотите, столько и суммируйте.

 

Serge

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

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

{quote}{login=Serge 007}{date=05.01.2011 10:25}{thema=Re: }{post}  
А какая разница? Сколько хотите, столько и суммируйте.{/post}{/quote}  
Ни в формуле, ни в сводной ограничений на годы нет.

 

dimetrius

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

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

Что же тогда писать в первой строке после 12? Если написать 1 — то будут просуммированы снова значения за январь 2009. А если расширить именованный диапазон «дата» на 2010 год — то будут просуммированы значения за 2009 и 2010 годы, а нужно отдельно…

 

Serge

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

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

{quote}{login=dimetrius}{date=05.01.2011 10:35}{thema=}{post}…нужно отдельно…{/post}{/quote}Нарисуйте как нужно.  

    {44322}

 

Serge

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

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

И укажите какое решение нужно — сводной или формулами?

 

yevgeniy

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

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

если устроит сводная, то группируйте данные не только по месяцам но и по годам

 

Serge

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

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

{quote}{login=Евгений.}{date=05.01.2011 10:44}{thema=Re: Re: }{post}если устроит сводная, то группируйте данные не только по месяцам но и по годам{/post}{/quote}  
Так надо?  

  74 Кб

 

dimetrius

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

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

{quote}{login=Serge 007}{date=05.01.2011 10:43}{thema=}{post}И укажите какое решение нужно — сводной или формулами?{/post}{/quote}  

  Формулами. Продолжить таблицу вверху, но вместо значений 370, 280, 310 должны быть значения за январь, февраль, март 2010 года.

 

Serge

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

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

{quote}{login=dimetrius}{date=05.01.2011 10:49}{thema=Re: }{post}  
Формулами. Продолжить таблицу вверху, но вместо значений 370, 280, 310 должны быть значения за январь, февраль, март 2010 года.{/post}{/quote}Блин, не понимаю кто чего спрашивает…  
Так надо?  
=СУММПРОИЗВ(данные;—((МЕСЯЦ(дата)=S$1)*ГОД(дата)=2010))  

  {65588}

 

Serge

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

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

{quote}{login=Serge 007}{date=05.01.2011 10:54}{thema=Re: Re: }{post}Блин, не понимаю кто чего спрашивает…  
{/post}{/quote}А, разобрался.  
Евгений — просит сводную, а dimetrius — формулы.  
Ясно.

 

yevgeniy

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

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

не совсем, я предложил использование сводной, если устроит это dimetriusа

 

Serge

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

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

#30

05.01.2011 23:04:49

{quote}{login=dimetrius}{date=05.01.2011 10:49}{thema=Re: }{post}  
Формулами. Продолжить таблицу вверху, но вместо значений 370, 280, 310 должны быть значения за январь, февраль, март 2010 года.{/post}{/quote}  
Я бы так сделал:  
см. файл.  

  60 Кб

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

  • post_188548.xls (60 КБ)

<#0>

Понравилась статья? Поделить с друзьями:
  • Суммирование чисел в одной ячейке excel
  • Суммирование часов минут excel
  • Суммесли на английском excel
  • Суммесли множество в excel
  • Суммесли критерий в диапазоне excel