Вопрос или проблема
Привет, я пытаюсь использовать функцию фильтра для фильтрации 6 разных столбцов, в которых есть даты, чтобы использовать их с поисковым окном и вычислить значения для месяцев года с выпадающим списком, что я уже сделал. Все работает хорошо с 1 фильтром и 1 столбцом, но у меня возникают проблемы с добавлением других столбцов. (не смежные)
Я использую MS Office 2021
Я потратил часы на то, чтобы правильно составить формулу, но у меня все еще возникают проблемы. Вот формула, с которой я в конечном итоге остался, но я получаю ошибку #VALUE!
=FILTER(Data,(Data!S4:S1002,Data!U4:U1002,Data!W4:W1002,Data!Y4:Y1002,Data!AA4:AA1002,Data!AC4:AC1002>=Sheet1!AB4)*(Data!S4:S1002,Data!U4:U1002,Data!W4:W1002,Data!Y4:Y1002,Data!AA4:AA1002,Data!AC4:AC1002<=Sheet1!AC4),””)
И я попробовал
=FILTER(Data,(Data!S4:S1002,Data!U4:U1002,Data!W4:W1002,Data!Y4:Y1002,Data!AA4:AA1002,Data!AC4:AC1002>=Sheet1!AB4)*(Data!$S$4:$S$1002,Data!$U$4:$U$1002,Data!$W$4:$W$1002,Data!$Y$4:$Y$1002,Data!$AA$4:$AA$1002,Data!$AC$4:$AC$1002<=Sheet1!AC4),””)
Любая помощь будет оценена, пожалуйста, скажите, где я ошибаюсь, или использую неправильную команду
Заранее благодарю вас
Ответ или решение
Чтобы фильтровать несколько несмежных колонок в Excel с использованием функции FILTER, необходимо правильно сформулировать условия фильтрации. Ниже я объясню, как это сделать, основываясь на вашем примере и предоставленных данных.
Понимание проблемы
Вы пытаетесь фильтровать данные из 6 разных колонок, чтобы использовать их с поисковой строкой и для вычисления значений по месяцам года. При этом вы получили ошибку #VALUE!
, что указывает на проблемы с синтаксисом ваших аргументов в функции FILTER.
Структура формулы FILTER
Функция FILTER
синтаксически выглядит следующим образом:
=FILTER(массива, условия, [если_нет_результатов])
- массива — диапазон данных, который вы хотите фильтровать.
- условия — логическое выражение, указывающее, какие строки массива должны быть возвращены.
- если_нет_результатов —Optional (необязательный) параметр, возвращаемый, если фильтрация не дала результатов.
Корректировка вашей формулы
Проблема с вашей текущей формулой заключается в том, что вы неправильно используете массивы в условиях. Функция FILTER не поддерживает множественные диапазоны (несмежные колонки) так, как это у вас указано.
Вы можете сделать это следующим образом, используя массивы:
- Объедините все условия в одно логическое выражение.
- Используйте оператор
+
(что соответствует логическому "ИЛИ") для условий.
Вот пример исправленной формулы:
=FILTER(Data, (Data!S4:S1002 >= Sheet1!AB4) * (Data!S4:S1002 <= Sheet1!AC4) +
(Data!U4:U1002 >= Sheet1!AB4) * (Data!U4:U1002 <= Sheet1!AC4) +
(Data!W4:W1002 >= Sheet1!AB4) * (Data!W4:W1002 <= Sheet1!AC4) +
(Data!Y4:Y1002 >= Sheet1!AB4) * (Data!Y4:Y1002 <= Sheet1!AC4) +
(Data!AA4:AA1002 >= Sheet1!AB4) * (Data!AA4:AA1002 <= Sheet1!AC4) +
(Data!AC4:AC1002 >= Sheet1!AB4) * (Data!AC4:AC1002 <= Sheet1!AC4), "")
Пояснение формулы
-
Фильтрация по условиям: Каждый из диапазонов (S, U, W, Y, AA, AC) проверяется на соответствие заданным датам. Здесь используется логическое "И", когда составляются условия для каждой колонки, чтобы значения попадали в диапазон между
Sheet1!AB4
иSheet1!AC4
. -
Логическое "ИЛИ" для разных колонок: Накапливаются результаты проверки для всех шести колонок, используя оператор
+
. -
Возвращаемое значение: Если нет результатов, будет возвращена пустая строка (""), что позволяет избежать ошибок и улучшить отображение.
Заключение
Теперь ваша формула должна работать корректно и фильтровать данные из 6 несмежных колонок, основываясь на указанных датах. Убедитесь, что все ссылки на ячейки реальны и диапазон данных соответствует вашим данным.
Если у вас возникнут дополнительные вопросы или вам потребуется помощь по другим аспектам работы с Excel, не стесняйтесь обращаться!