Функцията FILTER ви позволява да филтрирате диапазон от данни на базата на дефинирани от вас критерии.
В следващия пример използвахме формулата =FILTER(A5:D20;C5:C20=H2;""), за да се върнат всички записи за Apple, както е избрано в клетка H2, и ако няма ябълки, да се върне празен низ ("").
Функцията FILTER филтрира масив въз основа на масив от булеви стойности (True/False).
=FILTER(масив;включи;[ако_празно])
Аргумент |
Описание |
масив Задължителен |
Масивът или диапазонът за филтриране |
включи Задължителен |
Масив от булеви стойности, чиято височина или ширина е същата като масива |
[ако_празно] По желание |
Стойността, която да се върне, ако всички стойности във включения масив са празни (филтърът не връща нищо) |
Забележки:
-
Масивът може да бъде ред със стойности, колона със стойности или комбинация от редове и колони със стойности. В примера по-горе масивът източник за нашата формула с FILTER е диапазонът A5:D20.
-
Функцията FILTER ще върне масив, който ще прелее, ако е крайният резултат от формула. Това означава, че Excel ще създаде динамично диапазона на масива с подходящия размер, когато натиснете ENTER. Ако поддържащите ви данни са в таблица на Excel, масивът автоматично ще се преоразмерява, като добавяте или премахвате данни от диапазона за вашия масив, ако използвате структурирани препратки. За повече подробности вижте поведение на прелелите масиви в тази статия.
-
Ако има вероятност вашият набор от данни, да върне празна стойност, използвайте третия аргумент ([if_empty]). В противен случай грешка #CALC! ще възникне, тъй като Excel засега не поддържа празни масиви.
-
Ако някоя стойност на аргумента include е грешка (#N/A, #VALUE и т.н.) или не може да бъде преобразувана в булева стойност, функцията FILTER ще върне грешка.
-
Excel има ограничена поддръжка за динамични масиви между работни книги и този сценарий се поддържа само когато и двете работни книги са отворени. Ако затворите работната книга източник, всички свързани формули за динамични масиви ще връщат #REF! грешка , когато бъдат обновени.
Примери
Функцията FILTER, използвана за връщане на няколко критерия
В този случай използваме FILTER с оператора за умножение (*), за да се върнат всички стойности в диапазона на нашия масив (A5:D20), които имат "Ябълки" И са в източния регион: =FILTER(A5:D20;(C5:C20=H1)*(A5:A20=H2);"").
Функцията FILTER, използвана за връщане на няколко критерия и сортиране
В този случай използваме предишната функция FILTER с функцията SORT, за да се върнат всички стойности в диапазона на нашия масив (A5:D20), които имат "Ябълки" И са в източния регион, и след това да се сортират мерните единици в низходящ ред: =SORT(FILTER(A5:D20;(C5:C20=H1)*(A5:A20=H2);"");4;-1)
В този случай използваме функцията FILTER с оператора за събиране (+), за да се върнат всички стойности в диапазона на нашия масив (A5:D20), които имат "Ябълки" ИЛИ са в източния регион, и след това да се сортират мерните единици в низходящ ред: =SORT(FILTER(A5:D20;(C5:C20=H1)+(A5:A20=H2);"");4;-1)
Обърнете внимание, че нито една от функциите не изисква абсолютни препратки, тъй като всички те съществуват само в една клетка и преливат резултатите си в съседните клетки.
Имате нужда от още помощ?
Винаги можете да попитате експерт в техническата общност на Excel или да получите поддръжка в Общността за отговори от.