17 авг. 2022 г.
читать 2 мин
Самый простой способ подсчитать количество ячеек в отфильтрованном диапазоне в Excel — использовать следующий синтаксис:
SUBTOTAL( 103 , A1:A10 )
Обратите внимание, что значение 103 — это сокращение для определения количества отфильтрованных строк.
В следующем примере показано, как использовать эту функцию на практике.
Пример: подсчет отфильтрованных строк в Excel
Предположим, у нас есть следующий набор данных, который показывает количество продаж, совершенных компанией в разные дни:
Затем давайте отфильтруем данные, чтобы отображались только даты в январе или апреле.
Для этого выделите диапазон ячеек A1:B13.Затем щелкните вкладку « Данные » на верхней ленте и нажмите кнопку « Фильтр ».
Затем щелкните стрелку раскрывающегося списка рядом с « Дата » и убедитесь, что отмечены только поля рядом с «Январь» и «Апрель», затем нажмите « ОК »:
Данные будут автоматически отфильтрованы, чтобы отображались только строки, в которых даты указаны в январе или апреле:
Если мы попытаемся использовать функцию COUNT() для подсчета количества значений в столбце Date, она фактически вернет количество всех исходных значений:
Вместо этого мы можем использовать функцию ПРОМЕЖУТОЧНЫЕ.ИТОГИ() :
Эта функция считает только видимые строки.
Из вывода мы видим, что 5 дней приходятся на январь или апрель.
Обратите внимание, что в этой конкретной формуле мы использовали 103 в функции промежуточного итога, но мы могли бы также использовать 102 :
Вот разница между ними:
- 102 использует функцию COUNT , которая подсчитывает только ячейки, содержащие числа.
- 103 использует функцию COUNTA , которая подсчитывает все непустые ячейки.
Не стесняйтесь использовать значение в формуле, которое имеет смысл для ваших данных.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные операции в Excel:
Как удалить отфильтрованные строки в Excel
Как суммировать отфильтрованные строки в Excel
Как усреднить отфильтрованные строки в Excel
Написано
Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.
Количество выделенных строк в Excel.
Смотрите также запись ставит единицу. Range) As Long то можно использовать что увеличивал неЯ думаю, что итоги с определеннымиВот как это сделать.Не устанавливайте флажок, если появляются разные результаты данных.
. в Excel». формулы, смотрите в помощью формул. – не считает. так.Говорят, что нет Вот пример прикрепила. Application.Volatile True Dim другие значения кода
на 10 ячеек, в этих ячейках условиями. Например показывалоЩелкните стрелку фильтра в вы хотите, чтобы
по следующим соображениям.Примечание:Введите условия фильтрации иПримечание: статье «Копирование вКак сделать порядковый номерШестой способ.Выделены три строки. специальной функции без Если будет ноль i As Range математической операции: на 11. Это надо правильно прописать количество ячеек удовлетворяющих ячейке со словом Excel Online добавилДанные были добавлены, изменены При использовании диалогового окна нажмите кнопку
Мы стараемся как можно Excel» тут. Проверяем,
в Excel поЧтобы посчитать ячейкиБыстро выделить столбец макросов записей у меня For Each iАГРЕГАТ (AGGREGATE) может быть причиной? формулу с промежуточными значению «Март», выберите пункт заполнители заголовков (которые
или удалены в «ОК оперативнее обеспечивать вас отфильтровываем цифры больше порядку после фильтра. (строки) по определенному можно так. Выделяем
посчитать количество выделенных строк другая обработка должна In диапазон If– самая мощная Спасибо
итогами…ChehonteЧисловые фильтры вы можете переименовать) диапазоне ячеек или
Поиск.
актуальными справочными материалами «20». Получалось так.У нас такая условию, используем функцию верхнюю ячейку столбца. в Excel пойти, т.е. важно i.Font.ColorIndex = критерий.Font.ColorIndex функция, появившаяся вЕсли у нас имеетсяChehonte: Через автофильтр илии условие над данными. столбце таблицы.» для поискаПри добавлении данных в на вашем языке.Порядковые номера идут подряд, таблица. «СЧЁТЕСЛИ». Примеры формул Нажимаем на клавишу. Неправда. Есть много отличать. Then КолЦветТст = Office 2010. Также таблица, по которой
: Т.е. просто ввести
расширенный фильтр -МеньшеНажмите кнопку
значения, возвращаемые формулой, изменились, отфильтрованных данных выполняется таблицу элементы управления Эта страница переведена начиная с единицы.Как установить фильтр,
смотрите в статье
F8 и ставим других приемов, чтобыyozhik КолЦветТст + 1 как и ПРОМЕЖУТОЧНЫЕ.ИТОГИ должны считаться итоги, номер бригады и
всё зависит оти введите значение
ОК и лист был поиск только в фильтром автоматически добавляются автоматически, поэтому ееЭтим способом можно
смотрите в статье «Функция «СЧЁТЕСЛИ» в
курсор в нижнюю посчитать выделенные строки,:
End If Next может не только то важную роль увидеть расчет Вам ваших условий. 6000.
. пересчитан. отображаемых данных. данные, в заголовки таблицы. текст может содержать посчитать количество отфильтрованных «Фильтр в Еxcel». Excel» здесь.
excel-office.ru
Порядковый номер строк по порядку после фильтра в Excel.
ячейку столбца. Нажимаем ячейки Excel. Быломожет кто проще предложит, End Function(формула взял суммировать, но и играет какой именно не надо?ChehonteНажмите кнопку
Чтобы применить фильтр, щелкнитеНе используйте смешанные типы которые не отображаются,Щелкните стрелку неточности и грамматические строк. Какими способами Теперь мы отфильтруемСедьмой способ левую мышку. бы желание, а но можно добавить из другово сайта). считать среднее, количество, функцией они вычисляются,
Тут не в: Фильтр может?ОК
стрелку в заголовке данных
не ищутся. Чтобыв заголовке столбца, ошибки. Для нас ещё можно посчитать цифры больше 20..
Или нажимаем сочетание способы найдем. ))) проверку, существует лиЯ сейчас сделаю минимум, максимум и т.к. в таблице расчете дело. ФильтрОпоздала с предложением)). столбца и выберитеДля достижения наилучших результатов выполнить поиск по содержимое которого вы важно, чтобы эта выделенные ячейки, строки, Получилось так.Посчитать строки, выделенные условным клавиш «Ctrl» +
Один из способов критерий фильтра. Если фильтрацию, и в т.д. — код могут быть: будет применяться неChehonte
Excel Online применяет фильтр параметр фильтрации. не используйте смешанные всем данным, снимите
хотите отфильтровать. статья была вам смотрите в статьеЗдесь видно, порядковые номера форматированием
«А». Активная ячейка,узнать количество выделенных
нет, то и фильтре выбираю B, операции задается первымВключены фильтры только к номеру
: Фильтр тут не и показывает только
Если вы не хотите типы данных, такие флажок все фильтры.Снимите флажок полезна. Просим вас «Количество выделенных строк строк в таблицеили
при этом, находится строк – это
не фильтровать и D и Е, аргументом. Плюс кСкрыты некоторые строки бригады, но и поможет. Дело в регионы, в которых форматировать данные в
как текст иДва типа фильтров(выделить все) уделить пару секунд в Excel». идут выборочно, аокрашены цветом вручную в в таблице. настроить порядковые номера присваивать переменной ноль
В результате мы этому имеет множествоСвернуты сгруппированные строки по периоду, по том, что когда сумма продаж меньше виде таблицы, вы число, а такжеС помощью автоФильтра можнои установите флажки и сообщить, помоглаФункцией «Промежуточные итоги» нам нужно, чтобы ExcelО других сочетаниях строк после фильтра.
а и вообще если
получим так: опций по подсчету,Промежуточные итоги внутри таблицы ФАМИЛИИ МАСТЕРА, по выбираешь фильтр по 6000 долларов. также можете применить числа и даты
создать два типа для полей, которые ли она вам, можно быстро настроить
они начинались с. клавиш, чтобы выделить Смотрите об этом фильтр по одному
excel-office.ru
Фильтрация данных в диапазоне или таблице
Я хочу чтоб которые можно указатьОшибки в формулах дням, по ……..всему значению, он выдаетАналогичным образом можно применить фильтры к диапазону в одном столбце, фильтров: по значению вы хотите вывести. с помощью кнопок таблицу, чтобы в «1», затем строкаМожно применить фильтр ячейки, смотрите в способе статью «Порядковый полю — посчитать после фильтрации, красные вторым аргументом:Некоторые из приведенных ниже чему можно. Главное
только значения фильтра.фильтры по дате данных. так как для списка или поНажмите кнопку внизу страницы. Для ней считались итоги ниже «2», т.д. по цвету. статье «Сочетание клавиш номер строк по без фильтра количество слова были посчитаниНапример: в столбце A
способов чувствительны к
чтоб подсчитывались значения, А мне надо,иВыделите данные, которые нужно каждого столбца доступно
Фильтрация диапазона данных
-
критериям. Каждый изОК
-
удобства также приводим по разделам, чтобы Чтобы так было,Затем выделить ячейки и в Excel».
-
порядку после фильтра «Чуркиных-Ивановых» и все
-
из оставшиеся ячейки, встречается 3 разных этим факторам, некоторые которые написаны сверху например, выбрал №бригады,текстовые фильтры отфильтровать. Для лучшего только один тип
-
этих типов фильтров. ссылку на оригинал таблица сворачивалась по
Фильтрация данных в таблице
устанавливаем формулу в посмотреть количество вЧетвертый способ в Excel»
-
Sub фильтр() crit и а не значения — Иванов, – нет. Это
-
столбцов. а вверху отображается. результата столбцы должны команды фильтра. При
-
является взаимно исключающимСтрелка в заголовке столбца (на английском языке).
разделам, т.д. Как первую сверху ячейку строке состояния..Второй способ = «Чуркин» If общих количеств ячеек
Статьи по теме
Петров, Сидоров. Во нужно учитывать приУ меня в
сколько одних значений,Нажмите кнопку включать заголовки.
наличии смешанных типов для каждого диапазона
_з0з_ преобразуется в
Используйте автофильтр или встроенные
это сделать, смотрите столбца, в которомЗдесь ячейки выделены условнымПосчитать количество строк– Not Columns(1).Find(what:=crit) Is как на картине, втором столбце B выполнении вычислений: ячейке М6 проше сколько других иФильтрНа вкладке
данных отображаемая команда ячеек или таблицы значок операторы сравнения, например в статье «Промежуточные будут стоять порядковые форматированием. Отфильтровали по можно с помощьюпосчитать количество выделенных ячеек
Nothing Then ActiveSheet.Range(«$A$1:$AW$400000»).AutoFilterЯ хочу чтоб тоже 3 разныхСУММ (SUM) прописано =ПРОМЕЖУТОЧНЫЕ.ИТОГИ(3;M10:M605) т.д. в каждомрядом с заголовкомданные является типом данных, столбцов. Например, можнофильтра «больше» и «первые итоги в Excel».
Дополнительные сведения о фильтрации
номера (смотрите первую
цвету. В строкефункции «Автосумма» в Excel в столбце Excel Field:=1, Criteria1:=crit q после фильтрации, красные значения — Саша,– тупо суммируетЭто все правильно столбце (там в столбца и выберитенажмите кнопку который чаще всего выполнить фильтрацию по_з2з_. Щелкните этот значок, 10″ в _з0з_Но, можно сделать таблицу с неотфильтрованными состояния написано, что
. Выделяем ячейку, в
. = Application.WorksheetFunction.Subtotal(3, Range(Cells(2, слова были 2 Петя, Коля. Мне
-
все в выделенном счиатет, а выше формулах наверху увидите команду
Фильтр используется. Например, если списку чисел или чтобы изменить или , чтобы отобразить так, что
-
данными). У нас, выделено 3 строки
которой будет стоятьВыделяем ячейки в 1), Cells(Cells(Rows.Count, 1).End(xlUp).Row, а не 3. нужна формула, что диапазоне без разбора, всю считает таблицу, условия)
Удалить фильтр с. столбец содержит три
-
критериям, а не отменить фильтр. нужные данные ипорядковый номер строки в
-
в примере, это (ячейки). цифра количества строк.
столбце и смотрим 1))) Else q
Я извиняюсь если бы высчитывала сколько т.е. и скрытые а не поChehonte.Можно применить общий фильтр, значения, хранящиеся в по обоим; можноОбучение работе с Excel: скрыть остальные. После таблице Excel будет ячейка «А3» вКак преобразовать формат Нажимаем стрелку у внизу листа Excel = 0 End не грамотно пишу у меня Ивановых строки в том фильтруВариант Код =СУММПРОИЗВ(—(ПРОМЕЖУТОЧНЫЕ.ИТОГИ(3;СМЕЩ(M10;СТРОКА(1:44);))*(M11:M54Подставил,: Если в М1Выделите любую ячейку в
Фильтрация данных в таблице
выбрав пункт виде числа, а отфильтровать по значку Фильтрация данных в фильтрации данных в
-
такой же, как столбце «Порядковый номер». данных из других кнопки «Автосумма» на в строке состояния If MsgBox q на русском языке Саш, Ивановых Петь,
-
числе. Если хотя после фильтра значения ввести номер бригады, таблице или диапазонеФильтр
-
четыре — в или настраиваемому фильтру, таблице диапазоне ячеек или номер строки наНа закладке «Формулы» программ в формат
-
закладке Excel «Главная» цифру «Количество». Это End SubVlad999 Ивановых Коль, Петровых бы в одной
-
-
меняются, но…они не то вариант, в и на вкладке
-
, или настраиваемый фильтр, тексте, откроется команда но не кРекомендации и примеры для
Фильтрация диапазона данных
таблице можно либо листе выбираем «Математические» и числа Excel, чтобы и выбираем функцию число заполненных выделенных
-
Галина: заменить Код If Саш, Петровых Петь…. ячейке есть любая
-
правильные……как то не данном случае дляданные зависящий от типатекстовые фильтры
Параметры фильтрации для таблиц или диапазонов
обоим. сортировки и фильтрации повторно применить фильтр(как адрес строки). там находится функция формулы считали такие «Число». ячеек. Пустые ячейки: Нет, фильтр по i.Font.ColorIndex = критерий.Font.ColorIndex и т. д. ошибка – перестает то что то бригады № 3нажмите кнопку данных. Например, при.Повторное применение фильтра данных по цвету для получения актуальных
Для этого устанавливаем ПРОМЕЖУТОЧНЫЕ.ИТОГИ» в Excel, числа, смотрите вЭта функция считает только так Excel не
нескольким полям в на Код IfAbram pupkin считать и тоже считает…..У меня вроде считает 2 Код
Фильтр
-
фильтрации чисел отображаетсяПри вводе данных вЧтобы определить, применен лиФильтрация данных в сводной результатов, либо очистить в первую ячейку выбираем её. статье «Преобразовать текст
-
заполненные строки. Если считает. Но, если рабочем файле.
i.Font.ColorIndex = критерий.Font.ColorIndex: создаем дополнительный столбец выдает ошибку на все правильно считаета =СУММПРОИЗВ((K11:K54=M1)*(M11:M54
. пункт таблицу в заголовки фильтр, обратите внимание таблице
Удаление фильтра из столбца
-
фильтр для повторного таблицы столбца с В строке формул в в число Excel». есть пустые ячейки нужно посчитать строку,Юрий М
Удаление всех фильтров из таблицы или диапазона
-
And i.EntireRow.Hidden ==A1&B1 выходе. какую роль играетChehonteБудут удалены фильтры всехЧисловые фильтры
ее столбцов автоматически на значок вИспользование расширенных условий фильтрации отображения всех данных.
support.office.com
Подсчет после фильтра
порядковыми номерами функцию. скобках пишем: 103;$B$3:B3Автонумерацию в Excel в столбце, то в которой в: Вариант: в нужном Falseпотом формулойПРОМЕЖУТОЧНЫЕ.ИТОГИ (SUBTOTALS) ячейка М10?: Чего то я
столбцов в таблице, для дат отображается
добавляются элементы управления
заголовке столбца.Удаление фильтраWindows Online Заходим на закладку$B$3 – этоможно настроить несколькими в формуле исправляем столбце А нет диапазоне перебираем строки:
Галина=СЧЁТЕСЛИ ()с кодом 9И как вы ничего не понял.
или диапазоне и пункт
фильтрацией.
Стрелка раскрывающегося списка _з0з_В отфильтрованных данных отображаютсяИспользуйте фильтры, чтобы временно «Формулы» выбираем «Ссылки первая ячейка столбца способами, применяя разные адрес первой ячейки значений, а есть если видимая (не: Добрый день!находим всех Ивановых в первом аргументе смогли додуматься доВ ячейках с отображаются все данные.Фильтры по дате
Выделите данные, которые нужно означает, что фильтрация только те строки, скрывать некоторые данные и массивы», выбираем с фильтром эту формулы и функции диапазона. Например, мы
в столбце В, скрыта), увеличиваем переменнуюЕсть автофильтр примененный
Петь и Зайцевых – суммирует все такой формулы??? Это М2 по М5Chehonte, а для текста — отфильтровать. На вкладке включена, но не которые соответствуют указанному в таблице и функцию «Строка». ссылку делаем абсолютной.
Excel. Рассмотрим, вставили формулу функцией то выделяем ячейку на единичку. к таблице. Макросом Фрось видимые после фильтра вобще взрыв мозга!!!!!!!!
прописан счет для: привет всем.Помогите разобратьсяТекстовые фильтрыГлавная применяется.
_з0з_ и скрывают видеть только те,Получилось такая формула: =СТРОКА()В3 –это адрескак сделать порядковый номер
«Автосумма». В этой столбца В. Главное,Файл не смотрел. фильтрую данные.cordoba ячейки. Игнорирует другиеспасибо огромное. Думаю определенного условия. Но с задачей.В ячейке. Применяя общий фильтр,нажмите кнопкуЕсли навести указатель мыши
строки, которые не которые вы хотите.Здесь порядковый номер ячеек
этой же первой в Excel по формуле указан диапазон чтобы были выделеныyozhikКак мне узнать: Здравствуйте ребята, мне подобные функции, которые это еще не этот счет считает прописываю формулу «счетеслимн» вы можете выбратьФорматировать как таблицу
на заголовок столбца должны отображаться. ПослеВыберите любую ячейку в столбца совпадает с
ячейки столбца с порядку после фильтра до первой пустой
ячейки всех нужных: вариант без проверок сколько значений (=строк) нужен ваш помощь могут считать внутренние последний вопрос…… всю таблицу. А для подсчета количества для отображения нужныеи выберите команду с включенным фильтром, фильтрации данных можно диапазоне данных. номером строки таблицы фильтром, но здесь. ячейке столбца. =СЧЁТ(A4:A6) строк. Например, так. MsgBox Application.WorksheetFunction.Subtotal(3, Range(Cells(1,
CyberForum.ru
Суммирование только видимых ячеек
отобразилось автофильтром? очень очень подитоги в исходномформулу прописал, но мне надо, чтоб заданных значении.Но после данные из спискаФорматировать как таблицу
- но он не
- копировать, искать, изменять,
- Выберите
- Excel. Если отфильтруем
- ссылка относительная.
Функция «Фильтр» в Мы адрес ячейкиЗдесь выделили четыре строки. 1), Cells(Cells(Rows.Count, 1).End(xlUp).Row,Может отобразилась одна-двеЯ сделал так
диапазоне. она работает только считали после применения фильтра значение остается существующих, как показано. применен, появится экранная форматировать, выносить иданные информацию в столбце,Заполнили окно функции Excel помогает выбрать А4 исправляем на
Третий способ 1))) — 1Subtotal а может ноль.B15 есть этаПРОМЕЖУТОЧНЫЕ.ИТОГИ (SUBTOTALS) с фиксированным числом фильтра.Т.е. в ячейке то же.А как на рисунке:В диалоговом окне
подсказка «(отображается все)». выводить на печать> выберем строки с так. данные из большой адрес ячейки А1.. в подсчет включает Нужна цифра отображенных формула =ПРОМЕЖУТОЧНЫЕ.ИТОГИ(3,B2:B12) Подсчитывает
с кодом 109 строчек, а у М4 должно стоять сделать чтоб считались
Выбрав параметрСоздание таблицыКнопка фильтра _з0з_ означает, подмножество отфильтрованных данныхФильтр цифрами больше 30,Какие бывают ссылки, для таблицы. А функция Получится так.Можно в таблице и строку с строк. количество ячеек в первом аргументе меня в таблице не 22, а
planetaexcel.ru
Как посчитать количество строк в Excel используя два фильтра?
значения после фильтра?ЗаранееЧисловые фильтрыможно указать, есть что фильтр применен. без переупорядочения или. то получится так. чего, чем отличаются, промежуточные итоги вПятый способ. фильтром отфильтровать нужные фильтром, отнимает 1yozhikB16 есть формула – суммирует все
постоянно добавляются значения.пытался 4.
спасибо.
вы можете применить
ли в таблице
Если навести указатель мыши перемещения.Щелкните стрелку
Подсчет после фильтрации
Еще несколько способов установки смотрите в статье Excel поможет поменятьПосчитать, если выделено цветом
данные. Затем выделить
Владимир: добавьте в код =КолЦветТст(B2:B12,A16) Подсчитывает красные
видимые после фильтра поменять формулу-без результата.ПишетВ м6 считает
Chehonte один из перечисленных заголовки. на заголовок столбца
Кроме того, можно выполнитьв заголовке столбца. порядковых номеров описано «Относительные и абсолютные номер строки. Сделать, – формула Excel отфильтрованные ячейки в: E1: MsgBox Application.WorksheetFunction.Subtotal(3, Range(Cells(2, слова и группировки (или знач.Увеличьте диапазон Код промежуточный итог -
: Попробуйте Промежуточные итоги ниже настраиваемых фильтров.Выберите с фильтром, в
фильтрацию по несколькимВыберите
в статье «Автонумерация ссылки в Еxcel». чтобы после фильтра. столбце. В строке=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(3;A:A)-1 1), Cells(Cells(Rows.Count, 1).End(xlUp).Row,
но B16 сделал скрытия) ячейки. Игнорирует =СУММПРОИЗВ(—(ПРОМЕЖУТОЧНЫЕ.ИТОГИ(3;СМЕЩ(M10;СТРОКА(1:1000);))*(M11:M1010Фаируза, я прям то, что надо.
Или файл приложитеВ этом примере, чтобыТаблица с заголовками
подсказке отображается фильтр, столбцам. Фильтры являютсятекстовые фильтры в Exсel» здесь.Получилось такая формула: оставшиеся строки имелиМожно написать такую
CyberForum.ru
VBA как проверить сколько строк отобразил фильтр?
состояния будет видноБМВ
1))) формула ручную через другие подобные функции,
не знаю что А вот какAleksSid
отобрать регионы, в, чтобы преобразовать верхнюю примененный к этому аддитивными, т. е.
илиКак составлять несколько =ПРОМЕЖУТОЧНЫЕ.ИТОГИ(103;$B$3:B3) порядковые номера по формулу. =СЧЁТ(A1:A6) Эта
количество строк. Помним,: ну можно жГалина VBA и там которые могут считать сказать…..Пробовал, прописывал то с М2-М5 быть?: с промежуточным итогом которых сумма продаж строку в заголовки столбцу, например «равно
каждый дополнительный фильтрЧисловые фильтры,
взаимосвязанных таблиц Excel,Теперь копируем эту порядку (1, 2, формула считает только что пустые ячейки высчитать если использовать: А у меня
написал формула внутренние подитоги в же самое - Как их заставить все прокатило.А вот
за март была таблицы. Данные в красному цвету ячейки» задается на основеа затем выберите смотрите в статье формулу вниз по 3, т.д.). Настроить ячейки с числами, не считаются в xlCellTypeVisible Для примера:
на ноль записейFunction КолЦветТст(диапазон As исходном диапазоне. не получалось. Единственное
считать только значения как прописать, чтоб меньше 6000, можно этой строке не или «больше 150». текущего фильтра и
Сравнение, например
«Как связать таблицы столбцу. Как копировать это можно с а с текстом строке состояния. ПолучитсяRange(«a1:a4»).SpecialCells(xlCellTypeVisible).Count и на одну Range, критерий As
Если нужно не суммировать, на что грешу,
после применения фильтра????
считались эти промежуточные применить настраиваемый фильтр: будут фильтроваться.При повторном применении фильтра
далее сокращает подмножество
planetaexcel.ru
между
Суммирование только видимых ячеек
Если у нас имеется таблица, по которой должны считаться итоги, то важную роль играет какой именно функцией они вычисляются, т.к. в таблице могут быть:
- Включены фильтры
- Скрыты некоторые строки
- Свернуты сгруппированные строки
- Промежуточные итоги внутри таблицы
- Ошибки в формулах
Некоторые из приведенных ниже способов чувствительны к этим факторам, некоторые – нет. Это нужно учитывать при выполнении вычислений:
СУММ (SUM) – тупо суммирует все в выделенном диапазоне без разбора, т.е. и скрытые строки в том числе. Если хотя бы в одной ячейке есть любая ошибка – перестает считать и тоже выдает ошибку на выходе.
ПРОМЕЖУТОЧНЫЕ.ИТОГИ (SUBTOTALS) с кодом 9 в первом аргументе – суммирует все видимые после фильтра ячейки. Игнорирует другие подобные функции, которые могут считать внутренние подитоги в исходном диапазоне.
ПРОМЕЖУТОЧНЫЕ.ИТОГИ (SUBTOTALS) с кодом 109 в первом аргументе – суммирует все видимые после фильтра и группировки (или скрытия) ячейки. Игнорирует другие подобные функции, которые могут считать внутренние подитоги в исходном диапазоне.
Если нужно не суммировать, то можно использовать другие значения кода математической операции:
АГРЕГАТ (AGGREGATE) – самая мощная функция, появившаяся в Office 2010. Также как и ПРОМЕЖУТОЧНЫЕ.ИТОГИ может не только суммировать, но и считать среднее, количество, минимум, максимум и т.д. — код операции задается первым аргументом. Плюс к этому имеет множество опций по подсчету, которые можно указать вторым аргументом:
Ссылки по теме
- Выборочные вычисления по одному или нескольким условиям
- Вставка в отфильтрованные строки
- Быстрое скрытие и отображение ненужных строк и столбцов
The easiest way to count the number of cells in a filtered range in Excel is to use the following syntax:
SUBTOTAL(103, A1:A10)
Note that the value 103 is a shortcut for finding the count of a filtered range of rows.
The following example shows how to use this function in practice.
Example: Count Filtered Rows in Excel
Suppose we have the following dataset that shows the number of sales made during various days by a company:
Next, let’s filter the data to only show the dates that are in January or April.
To do so, highlight the cell range A1:B13. Then click the Data tab along the top ribbon and click the Filter button.
Then click the dropdown arrow next to Date and make sure that only the boxes next to January and April are checked, then click OK:
The data will automatically be filtered to only show the rows where the dates are in January or April:
If we attempt to use the COUNT() function to count the number of values in the Date column, it will actually return the count of all of the original values:
Instead, we can use the SUBTOTAL() function:
This function only counts the visible rows.
From the output we can see that there are 5 days that fall in January or April.
Note that in this particular formula we used 103 in the subtotal function, but we could have also used 102:
Here’s the difference between the two:
- 102 uses the COUNT function, which counts only cells containing numbers.
- 103 uses the COUNTA function, which counts all cells that aren’t empty.
Feel free to use the value in your formula that makes sense for your data.
Additional Resources
The following tutorials explain how to perform other common operations in Excel:
How to Delete Filtered Rows in Excel
How to Sum Filtered Rows in Excel
How to Average Filtered Rows in Excel
На чтение 3 мин. Просмотров 12k.
В отфильтрованном списке
= ПРОМЕЖУТОЧНЫЕ.ИТОГИ (3;диапазон)
Если вы хотите подсчитать количество видимых элементов в отфильтрованном списке, вы можете использовать функцию ПРОМЕЖУТОЧНЫЕ.ИТОГИ, которая автоматически игнорирует строки, которые скрыты с помощью фильтра.
Функция ПРОМЕЖУТОЧНЫЕ.ИТОГИ может выполнять вычисления, как СЧЁТ, СУММ, МАКС, МИН, и многие другие.
Что делает ПРОМЕЖУТОЧНЫЕ.ИТОГИ: особенно интересным и полезным является то, что она автоматически игнорирует элементы, которые не видны в отфильтрованном списке или таблице. Это делает ее идеальной для показа того, сколько элементов видно в списке, промежуточных итогов видимых строк и т.д.
Следуя примеру, чтобы подсчитать количество не пустых строк, видимых, когда фильтр активен, используйте:
=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(3; B5: B11)
Если вы скрываете строки вручную (т.е. правой кнопкой мыши, Скрыть), а не с помощью автоматического фильтра используйте эту версию вместо той:
=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(103; B5: B11)
Только с критериями
=СУММПРОИЗВ((диапазон=критерий)*( ПРОМЕЖУТОЧНЫЕ.ИТОГИ (3; СМЕЩ (диапазон; ЧСТРОК;0;1))))
Для подсчета видимых строк только с критериями, вы можете использовать довольно сложную формулу, основанную на СУММПРОИЗВ, ПРОМЕЖУТОЧНЫЕ.ИТОГИ и СМЕЩ.
Проблема
Функция ПРОМЕЖУТОЧНЫЕ.ИТОГИ может легко генерировать суммы и счетчики для скрытых и не скрытых строк. Тем не менее, она не в состоянии справиться с критериями (т.е. как СЧЁТЕСЛИ или СУММЕСЛИ).
Решение
Решение состоит в том, чтобы использовать СУММПРОИЗВ, применив с функцией ПРОМЕЖУТОЧНЫЕ.ИТОГИ (через СМЕЩ) и критерии. В показанном примере формула в С12:
=СУММПРОИЗВ ((C5:C8 = С10) * (ПРОМЕЖУТОЧНЫЕ.ИТОГИ (103;СМЕЩ(C5;СТРОКА(C5:C8) — МИН(СТРОКА(C5:C8));0))))
Суть этой формулы вычисление массива внутри СУММПРОИЗВ. Первый массив применяет критерии, а второй массив обрабатывает «проблему видимости».
=СУММПРОИЗВ(критерии * видимость)
Критерии применяется с частью формулы:
(C5:C8 = С10)
Который генерирует массив следующим образом:
{ЛОЖЬ; ИСТИНА; ЛОЖЬ; ИСТИНА}
Где ИСТИНА означает «отвечает критериям». Обратите внимание, что поскольку мы используем умножение (*) внутри первого (и только) массива, значения ИСТИНА/ЛОЖЬ будут автоматически преобразованы:
{0; 1; 0; 1}
Для учета видимости применяется фильтр с использованием ПРОМЕЖУТОЧНЫЕ.ИТОГИ.
ПРОМЕЖУТОЧНЫЕ.ИТОГИ может исключить скрытые строки в различных вычислениях, поэтому мы можем использовать ее в этом случае, создав «фильтр», чтобы исключить скрытые строки внутри СУММПРОИЗВ. Проблема, однако, в том, что ПРОМЕЖУТОЧНЫЕ.ИТОГИ рассчитывает единственное число, в то время как нам нужен массив, чтобы использовать его успешно внутри СУММПРОИЗВ.
Хитрость заключается в том, чтобы использовать СМЕЩ, подающую ПРОМЕЖУТОЧНЫЕ.ИТОГИ одну ссылку на строку, так что смещение будет рассчитывать один результат для каждой строки.
Конечно, для этого требуется еще один трюк, который должен дать СМЕЩ массив, содержащий один номер для каждой строки, начиная с нуля. Мы делаем это с помощью:
= СТРОКА (C5:C8) — МИН(СТРОКА(C5:C8)
Что будет генерировать массив вроде этого:
{0; 1; 2; 3}
Таким образом, второй массив, который обрабатывает видимость с помощью ПРОМЕЖУТОЧНЫЕ.ИТОГИ, генерируется следующим образом:
= ПРОМЕЖУТОЧНЫЕ.ИТОГИ(103;СМЕЩ (C5;СТРОКА(C5: C8) — МИН(СТРОКА(C5: C8)); 0))
= ПРОМЕЖУТОЧНЫЕ.ИТОГИ(103;СМЕЩ (C5; {0; 1; 2; 3}; 0))
= ПРОМЕЖУТОЧНЫЕ.ИТОГИ(103; { «Свердловская»; «Пермская»; «Московская»; «Пермская»})
= {1; 1; 1; 0}
И, наконец, мы имеем:
= СУММПРОИЗВ({0;1;0;1} * {1; 1; 1; 0})
Который рассчитывает 1.