В статье объясняются особенности функции ПРОМЕЖУТОЧНЫЕ.ИТОГИ в Excel и показано, как использовать формулы промежуточных итогов для суммирования данных в видимых ячейках.
В предыдущей статье мы обсудили автоматический способ вставки промежуточных итогов в Excel с помощью инструмента Промежуточные итоги. Сегодня вы узнаете, как можно самостоятельно создавать формулы промежуточных итогов и какие преимущества это дает.
Синтаксис и использование функции ПРОМЕЖУТОЧНЫЕ.ИТОГИ
Microsoft определяет ПРОМЕЖУТОЧНЫЕ.ИТОГИ как функцию, которая возвращает промежуточный итог в таблице данных. И это не просто суммирование чисел в определенном диапазоне ячеек.
В отличие от других функций Excel, которые предназначены только для одной конкретной задачи, она удивительно универсальна. Она может выполнять различные арифметические и логические операции, такие как подсчет количества значений, вычисление среднего, поиск минимального или максимального и многое другое.
Функция ПРОМЕЖУТОЧНЫЕ.ИТОГИ (на английском — SUBTOTAL) доступна во всех версиях Excel 2019, 2016 и ниже.
Синтаксис ее следующий:
ПРОМЕЖУТОЧНЫЕ.ИТОГИ(номер_функции; ссылка1; [ссылка2];…)
Где:
- Номер_функции — число, указывающее, какую функцию использовать для вычисления промежуточного итога.
- Ссылка1, ссылка2,… – одна или несколько ячеек или диапазонов с исходными данными. Первый аргумент является обязательным, остальные (их может быть до 254) — необязательны.
Аргумент номер_функции может принимать значения:
- 1-11 – игнорируются отфильтрованные ячейки, но включают строки, скрытые вручную.
- 101-111 – нужно игнорировать все скрытые ячейки: отфильтрованные и скрытые вручную.
Номер функции | Номер функции | Функция | Описание |
1 | 101 | СРЗНАЧ | Возвращает среднее значение чисел. |
2 | 102 | СЧЁТ | Подсчитывает ячейки, содержащие числовые значения. |
3 | 103 | СЧЁТЗ | Считает непустые ячейки. |
4 | 104 | МАКС | Возвращает наибольшее значение. |
5 | 105 | МИН | Возвращает наименьшее значение. |
6 | 106 | ПРОИЗВЕД | Вычисляет произведение ячеек. |
7 | 107 | СТАНДОТКЛОН | Возвращает стандартное отклонение генеральной совокупности на основе выборки чисел. |
8 | 108 | СТАНДОТКЛОНП | Возвращает стандартное отклонение, основанное на генеральной совокупности чисел. |
9 | 109 | СУММ | Складывает числа. |
10 | 110 | ДИСП | Оценивает дисперсию генеральной совокупности на основе выборки чисел. |
11 | 111 | ДИСПР | Оценивает дисперсию генеральной совокупности на основе всей совокупности чисел. |
На самом деле нет необходимости запоминать все эти номера. Как только вы начнете вводить формулу промежуточного итога в ячейку или в строку формул, Microsoft Excel отобразит для вас список доступных функций с номерами. Останется только выбрать подходящую.
Например, вот как вы можете составить формулу с номером 9 для суммирования значений в ячейках с D2 по D10:
Чтобы добавить номер функции в формулу, дважды щелкните его в списке, затем поставьте точку с запятой, укажите диапазон, введите закрывающую скобку и нажмите Enter. Готовая формула будет выглядеть так:
=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(9;D2:D10)
Аналогичным образом вы можете написать формулу с аргументом 1 для получения среднего значения, с 2 для подсчета ячеек с числами, можете указать 3 для подсчета непустых значений и т. д. На скриншоте ниже показаны несколько других формул с различными функциями в действии:
Особенности формулы ПРОМЕЖУТОЧНЫЕ.ИТОГИ:
- Считает только по столбцам, для строк не подходит.
- Отфильтрованные значения не учитываются. Скрытые вручную значения учитываются функциями с номерами 1 – 11.
- Подсчитывает только исходные данные. Никакие другие промежуточные итоги не учитываются.
- Когда вы используете формулу промежуточных итогов с функцией суммирования, например СУММ или СРЗНАЧ, она вычисляет только ячейки с числами, игнорируя пустые и содержащие нечисловые значения.
- Применяется только к обычным диапазонам, с таблицами Excel не работает.
Существенное преимущество этой формулы в том, что ее можно использовать почти в любом месте вашего рабочего листа. То есть, таблица может не быть настолько жестко упорядоченной, как при использовании инструмента «Промежуточные итоги».
Теперь, когда вы знаете, как создать формулу промежуточных итогов в Excel, главный вопрос: зачем вообще тратить силы на ее изучение? Почему бы просто не использовать обычные функции, такие как СУММ, СЧЁТЕСЛИ, МАКС и т.д.? Вы найдете ответ ниже.
3 основных причины использовать ПРОМЕЖУТОЧНЫЙ ИТОГ в Excel
По сравнению с традиционными функциями Excel, ПРОМЕЖУТОЧНЫЕ.ИТОГИ дает следующие важные преимущества.
1. Вычисляет значения с учетом применяемого фильтра.
Поскольку функция Excel ПРОМЕЖУТОЧНЫЕ.ИТОГИ игнорирует значения в отфильтрованных строках, вы можете использовать ее для создания динамической сводки данных, в которой промежуточные итоги пересчитываются автоматически в соответствии с фильтром. Скрытые фильтром значения при этом учитываться не будут.
А вот если мы будет использовать обычную функцию, к примеру, СУММ, то применение фильтра не изменит вычисленный итог. Складываются в том числе и скрытые фильтром числа.
Например, если мы отфильтруем таблицу, чтобы отобразить продажи только черного шоколада, формула промежуточного итога не изменится, но все остальные товары будут удалены из итога:
Стандартная функция СУММ с подсчетом только нужных ячеек не справится. Придется либо копировать эти данные в другое место, чтобы все другие не мешали, либо применять функцию СУММЕСЛИ и постоянно корректировать ее в соответствии с нужными целями.
Примечание. Поскольку оба набора номеров функций (1-11 и 101-111) игнорируют отфильтрованные ячейки, в этом случае вы можете использовать формулу с функцией номер 9 или 109.
2. Вычисление только видимых ячеек.
Как вы помните, формулы промежуточных итогов с номером функции от 101 до 111 игнорируют все скрытые ячейки – отфильтрованные и скрытые вручную. Итак, когда вы используете функцию «Скрыть» в Excel для удаления из представления нерелевантных данных, используйте функцию номер 101-111, чтобы исключить значения в скрытых строках из подсчета итогов.
Номер функции | Отфильтрованные значения | Скрытые вручную |
1-11 | игнорируются | учитываются |
101-111 | игнорируются | игнорируются |
На рисунке ниже вы видите, что не следует использовать функцию 9, если вы руками скрывали какие-либо строки в вашей таблице. При этом функция 109 всегда возвращает результат исходя только из видимых на экране значений.
Следующий пример поможет вам лучше понять, как это работает: Промежуточный итог 9 против 109.
3. Игнорируются значения во вложенных формулах промежуточных итогов.
Если диапазон, указанный в вашей формуле промежуточных итогов Excel, содержит любые другие формулы промежуточных итогов, эти вложенные итоги будут проигнорированы, поэтому одни и те же числа не будут вычисляться дважды. Ведь нам не нужен двойной счёт. Классно, не правда ли?
На снимке экрана ниже формула
=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(9;G2:G12)
игнорирует результаты формул промежуточных итогов в ячейках G7 и G120, как если бы вы использовали функцию СУММ с двумя отдельными диапазонами: СУММ(G2:C6, G8:G11).
Использование промежуточных итогов в Excel - примеры формул
Когда вы впервые сталкиваетесь с промежуточными итогами, это может показаться сложным, запутанным и даже не слишком нужным. Но как только вы узнаете все подробности, то поймете, что овладеть ими не так уж и сложно, а пользы может быть много. Следующие примеры дадут вам несколько полезных советов и новых идей.
Пример 1. Промежуточный итог с функцией 9 или 109?
Как вы уже знаете, ПРОМЕЖУТОЧНЫЕ.ИТОГИ использует 2 набора номеров функций: 1-11 и 101-111. Все они игнорируют отфильтрованные строки, но номера 1–11 учитывают скрытые вручную строки, а номера 101–111 исключают их. Чтобы лучше понять разницу, давайте рассмотрим следующий пример.
Чтобы суммировать отфильтрованные строки, вы можете использовать формулу Промежуточный итог с функцией 9 или с 109, как показано на рисунке ниже:
Но если вы скрыли отдельные элементы вручную,
- используя команду «Скрыть строки» на вкладке «Главная»> «Ячейки»> «Формат» > «Скрыть и отобразить»,
- или щелкнув строки правой кнопкой мыши и выбрав «Скрыть»,
и теперь хотите суммировать значения только в видимых строках, использовать функцию 109 – это единственный вариант:
Остальные номера функций работают таким же образом. Например, для подсчета непустых отфильтрованных ячеек подойдет формула с функцией 3 или 103. Но только функция 103 может правильно подсчитывать видимые значения, если в диапазоне есть скрытые вручную строки.
Примечание. Функция Excel ПРОМЕЖУТОЧНЫЕ.ИТОГИ с номерами 101-111 игнорирует значения в скрытых строках, но не в скрытых столбцах. Например, если вы используете формулу =ПРОМЕЖУТОЧНЫЕ.ИТОГИ(109;D2:H10) для суммирования чисел в горизонтальном диапазоне (по строке), то скрытие столбца F не повлияет на результат.
Пример 2. Промежуточные итоги с условием.
Если вы создаете сводный отчет или информационную панель, где вам нужно отображать различные сводные данные, но у вас ограничено место, чтобы разместить множество вариантов итогов, то можно сделать так:
- В одной ячейке создайте раскрывающийся список, содержащий названия функций, такие как СУММ, МАКС, МИН и др.
- В ячейке рядом с раскрывающимся списком введите вложенную формулу ЕСЛИ со встроенными функциями промежуточных итогов, соответствующими именам функций в раскрывающемся списке.
Например, если предположить, что значения для промежуточного итога находятся в ячейках C2: C16, а раскрывающийся список в A17 содержит элементы «Итого», «Среднее», «Максимум» и «Минимум», «динамическая» формула промежуточного итога будет выглядеть следующим образом:
=ЕСЛИ(A17="Сумма";ПРОМЕЖУТОЧНЫЕ.ИТОГИ(9;C2:C16); ЕСЛИ(A17="Среднее";ПРОМЕЖУТОЧНЫЕ.ИТОГИ(1;C2:C16);ЕСЛИ(A17="Минимум";ПРОМЕЖУТОЧНЫЕ.ИТОГИ(5;C2:C16); ЕСЛИ(A17="Максимум";ПРОМЕЖУТОЧНЫЕ.ИТОГИ(4;C2:C16);""))))
И теперь, в зависимости от того, какую функцию ваш пользователь выбирает из раскрывающегося списка, соответствующая функция будет вычислять значения в отфильтрованных строках:
Примечание. Если вдруг раскрывающийся список и ячейка формулы исчезнут с вашего рабочего листа, обязательно снова выберите их в списке фильтра – значит, вы их случайно отфильтровали.
Думаю, при помощи этого способа вы можете заменить этой универсальной функцией стандартные функции суммирования, нахождения максимума и минимума, среднего значения, подсчёта и т.д. Ведь в данном случае даже сортировка не нужна, так как мы не группируем данные, а просто делаем подсчёт. Главное, чтобы не было пустых строк.
Обратите внимание также на то, что если бы мы использовали для расчёта суммы продаж функцию СУММ, то в этой таблице мы не смогли бы подсчитать продажи по какому-то определённому покупателю или группе покупателей. Пришлось бы для каждого из них использовать функцию СУММЕСЛИ.
Вы можете достаточно просто посчитать промежуточные итоги с условием, если отфильтровать нужные строки по товарам, по покупателям либо по другим критериям. Результат будет показан только по значениям, оставшимся после фильтрации. Соответственно и расчет будет сделан только по ним.
К примеру, вот как можно подсчитать сумму продаж черного шоколада, исключив молочный при помощи фильтра:
Как видите, при помощи формулы СУММ это сделать невозможно. А использовать СУММЕСЛИ — это каждый раз корректировать условие в формуле либо делать несколько формул «на все случаи жизни». А здесь мы просто отбираем нужное при помощи фильтра. Согласитесь, это гораздо проще и удобнее, нежели писать и затем корректировать громоздкие формулы.
Почему промежуточные итоги не работают? Распространенные ошибки.
Если формула промежуточного итога возвращает ошибку, вероятно, это связано с одной из следующих причин:
#ЗНАЧ! - аргумент номер_функции не является целым числом от 1 до 11 или от 101 до 111; или любой из аргументов ref содержит трехмерную ссылку сразу на несколько листов вашей рабочей книги.
#ДЕЛ/0! - возникает, если указанная функция должна выполнить деление на ноль (например, вычисление среднего значения или стандартного отклонения для диапазона ячеек, не содержащего ни одного числа).
#ИМЯ? - неправильно написано название функции — исправить ошибку проще простого:)
Совет. Если вы еще не чувствуете себя комфортно с функцией ПРОМЕЖУТОЧНЫЕ.ИТОГИ, вы можете использовать встроенный инструмент ПРОМЕЖУТОЧНЫЙ ИТОГ и автоматически вставлять формулы.
Вопросы оставляйте в комментариях.