Forum Discussion
Юриван
May 13, 2024Copper Contributor
Счётз и Фильтр - Функции Excel
Здравствуйте! Никак не разберусь:
При оборачивании функцией Счётз функции Фильтр выдается (1) вместо (0): если объединить со знаком (*) три условия во втором аргументе функции Фильтр (включение) , и в случае отсутствия значений по указанным условиям.
Что не так?
5 Replies
Sort By
Счётз подсчитывает количество всех значений в диапазоне. Ошибки это тоже значения и они будут считаться. Так как фильтр возначает только одну величину (и это ошибка), то количество возвращаемых величин равно единице.
Лучше обрабатывать возможные ошибки в формулах. Как вариант
= LET( f, ФИЛЬТР(диапазон, условия), ЕСЛИ(ЕОШИБКА(f), 0, СЧЁТЗ(f) ) )
- NikolinoDEGold Contributor
Когда вы используете функцию Фильтр с функцией СЧЁТЗ, чтобы подсчитать количество значений, удовлетворяющих определенным условиям, и если не найдено ни одного значения, функция Фильтр возвращает ошибку #ПРОПУСК!, которая интерпретируется как (1) в функции СЧЁТЗ.
Для исправления этой проблемы, вы можете использовать функцию ПОДСЧЁТЕСЛИ для подсчета количества значений, которые удовлетворяют вашим условиям вместо функции СЧЁТЗ. Вот пример того, как это можно сделать:
=ПОДСЧЁТЕСЛИ(ФИЛЬТР(диапазон_данных, условие), "<>0")
=COUNTIF(FILTER(data_range, condition), "<>0") in English
В этой формуле:
- диапазон_данных - это ваш диапазон данных, в котором вы хотите выполнить фильтрацию.
- условие - это условие, которому должны соответствовать данные для включения их в результаты.
- "<>0" - это условие для функции ПОДСЧЁТЕСЛИ, которое подсчитывает все значения, кроме нулевых.
Эта формула вернет количество значений, удовлетворяющих вашему условию, и если ни одного значения не будет найдено, она вернет (0) вместо (1).
Тексты, шаги и функции были созданы с использованием искусственного интеллекта.
Мои ответы добровольны и без гарантий!
*Текст переведен с помощью программного обеспечения. Могут быть грамматические или фразовые ошибки.
Я надеюсь, это поможет вам.
Был ли ответ полезен? Отметить как лучший ответ и поставить лайк!
Это поможет всем участникам форума.
- ЮриванCopper ContributorЗдравствуйте! Спасибо за ответ!
Функция COUNTIF не отрабатывает, если есть три условия.
Пример: (если дано: _c, _a, _e, _f = каждый свой непересекающийся диапазон, заданный LET-ƒ(х), то не работает:
COUNTIF(ФИЛЬТР(_c;
(_a=A2)*((_e="х")*(_f>0)));
"<>0")Но по большому счёту ту ни то ни другое не нужно, достаточно
=SUM( (rangeA=A2)*(rangeE="x")*(rangeF>0) )