Зміст
Сьогодні я покажу вам, як в Excel фільтрувати за кількома критеріями деякі дані, що збігаються, використовуючи функція ФІЛЬТР Перш ніж перейти до основної дискусії, я хотів би нагадати про одну річ. ФІЛЬТР функція доступна тільки в Office 365 .
Завантажити Практичний посібник
Фільтр декількох значень.xlsxВступ до функції ФІЛЬТР
Давайте познайомимося з Excel ФІЛЬТР спочатку відфільтрувати декілька критеріїв.
Подивіться на набір даних нижче. У нас є роки, коли приймаючі країни "Про те, що в Україні не існує жодного закону, який би країни-чемпіони , а також "Про захист прав людини і основоположних свобод країни, що посіли другі місця з усіх Чемпіонати світу з футболу у стовпчиках B, C, D, і E відповідно.
Тепер, якщо я запитаю вас, які роки, коли Бразилія став чемпіоном?
Що ви будете робити?
Ви, ймовірно, пройдете через колонку D (Чемпіон), і подивитися, чи є клітинка, що містить Бразилія в ньому чи ні.
Потім, коли ви знайдете таку клітинку, ви переміститеся на два кроки вліво від цієї клітинки до стовпчика B (Рік), а також зазначити відповідний рік.
А потім ви знову спуститеся вниз по стовпчику D і виконати те ж саме для всіх комірок, що містять Бразилія в ньому.
Таким чином, ви занотуєте всі роки, коли Бразилія був чемпіоном.
Для невеликого набору даних це ГАРАЗД. Але чи можете ви повторити ту саму процедуру для великого набору даних, скажімо, про 10000 ряди?
Читати далі: Як відфільтрувати кілька рядків в Excel (11 підходів)
Відповідь - ні, велике "ні".
Так що ж робити?
Microsoft Excel має вбудовану функцію під назвою ФІЛЬТР виконати точно таке ж завдання для вас.
На сьогоднішній день, на жаль, це не так. ФІЛЬТР функція отримує три аргументи, діапазон комірок, який називається an масив критерій, який називається в тому числі, і значення, яке називається if_empty який повертається у разі невиконання критерію для жодної комірки.
Таким чином, синтаксис ФІЛЬТР функція в тому:
=FILTER(array,include,[if_empty])
Для кращого розуміння звернемося до Бразилія Ми повинні відфільтрувати ті роки, коли Бразилія став чемпіоном.
Формула для цього буде такою:
=FILTER(B5:B25,D5:D25="Brazil","")
Розумієте, у нас є всі роки, коли Бразилія став чемпіоном, 1958, 1962,1970, 1994, і 2002 (На зображенні зафарбовано).
Тепер для розуміння давайте розберемо формулу.
D5:D25="Бразилія" проходить через всі комірки від D5 до D25 і повертає ПРАВДА якщо він знайде Бразилія в іншому випадку НЕПРАВДА .
Формула FILTER(B5:B25,D5:D25="Бразилія","") потім стає
=FILTER({B5,B6,B7,...,B25},{FALSE,FALSE,...,TRUE,...,FALSE},"")
За кожну ПРАВДА повертає сусідню комірку з масиву {B5,B6,B7,...,B25}
А за НЕПРАВДА не дає жодного результату, "" (Це необов'язково. За замовчуванням результат відсутній, "" )
Існує ПРАВДА тільки для клітин B9 , B10 , B12 , B18, і B20 .
Тому він повертає тільки вміст цих комірок: 1958, 1962, 1970, 1994 і 2002.
Це роки, коли чемпіоном ставала Бразилія.
Сподіваємося, ви зрозуміли, як саме відбувається ФІЛЬТР функція працює.
Тепер, якщо ви це розумієте, чи можете ви сказати мені формулу, за якою можна дізнатися, в які роки країна-господар ставала чемпіоном?
Так. Ви маєте рацію. Формула така:
=FILTER(B5:B25,C5:C25=D5:D25,””)
Так, країна-господар стала чемпіоном у 1930, 1934, 1966, 1974, 1978, і 1998.
4 Способи фільтрації за кількома критеріями в Excel
Тепер ми зрозуміли, як саме відбувається ФІЛЬТР Спробуємо цього разу застосувати декілька критеріїв всередині функції. Ось огляд набору даних для сьогоднішньої задачі.
1. відфільтрувати декілька значень типу АБО
Перш за все, зупинимося на декількох критеріях АБО Тип - це критерії, які задовольняються при виконанні будь-якого одного або декількох критеріїв.
Наприклад, з наведеного вище набору даних, якщо я попрошу Вас назвати рік, коли Аргентина став чемпіон або Західна Німеччина став призери .
Ви можете сказати або 1978 або 1982 або 1986 .
Тепер спробуємо відфільтрувати всі роки, коли Італія був або хост або чемпіон або обидва Це проблема АБО введіть декілька критеріїв, це легко, просто додайте два критерії з плюсом (+) Давайте дотримуватися інструкцій нижче, щоб відфільтрувати кілька критеріїв в Excel!
Сходинки:
- Перш за все, виділяємо комірку G5 і записати функція ФІЛЬТР в тій камері. Функція буде такою:
=FILTER(B5:B25,(C5:C25="Italy")+(D5:D25="Italy"))
- Для цього достатньо натиснути Увійдіть В результаті ви отримаєте роки, коли Італія була наймогутнішою державою світу. хост або чемпіон або обидва що є поверненням функція ФІЛЬТР .
Бачиш, Італія була або господарем, або чемпіоном, або і тим, і іншим у роки 1934, 1938, 1982, 1990, і 2006.
Розбивка по формулам
Тепер, для розуміння, давайте розберемо формулу.
- C5:C25="Італія" повертає масив ПРАВДА або НЕПРАВДА. ПРАВДА коли приймаючою стороною була Італія, НЕПРАВДА інакше.
- D5:D25="Італія" також повертає масив ПРАВДА або НЕПРАВДА . ПРАВДА коли Італія була чемпіоном, НЕПРАВДА інакше.
- (C5:C25="Італія")+(D5:D25="Італія") додає два масиви булевих значень, ПРАВДА і НЕПРАВДА Але він розглядає кожну з них. ПРАВДА в якості 1 і кожен НЕПРАВДА в якості 0 .
- Отже, він повертає 2 при виконанні обох критеріїв, a 1 коли задовольняється лише один критерій, а 0 коли не виконується жоден з критеріїв.
Формула тепер стає такою:
=FILTER({B5,B6,B7,...,B25},{0,2,1,...,0})
Числа, більші за нуль (тут і далі 0 і 1), розглядаються як ПРАВДА і нулі як НЕПРАВДА.
Тобто повертає роки з колонки B коли він стикається з числом, більшим за 0 і не повертає жодного результату в іншому випадку.
Тепер, якщо ви розумієте, як працює ФІЛЬТР функція працює з декількома критеріями типу АБО, чи можна дати відповідь на одне питання?
Якою буде формула, за якою відфільтровуватимуться роки, коли чемпіоном ставала Бразилія чи Італія? призери або і те, і інше?
Так. Ви маєте рацію. Формула буде:
=FILTER(B5:B25,(D5:D25="Brazil")+(E5:E25="Italy"))
2. застосувати функцію ФІЛЬТР для критерію І
Зараз ми зосередимося на численні критерії з І Це означає, що ми повинні відповідати всім критеріям, щоб отримати ПРАВДА результат, в іншому випадку НЕПРАВДА .
Відомо, що до року 1970 "Про те, що в Україні не існує жодного закону, який би Чемпіонат світу з футболу отримав назву "Жюль Ріме" трофей. Після того, як 1970 з початку свого існування вона почала носити назву Чемпіонат світу з футболу Отже, моє перше запитання: в які роки, коли Бразилія перемогу в конкурсі "Жюль Ріме" трофей?
Існують два критерію тут.
- По-перше, рік повинен бути меншим або дорівнювати 1970 .
- По-друге, це чемпіон країна повинна бути Бразилія .
І обидва критерії мають бути дотримані. Як виконати це завдання?
Все дуже просто: перемножте два критерії всередині ФІЛЬТР функцію з функцією (*) Цього разу підпишіться. Давайте дотримуватися інструкцій нижче, щоб відфільтрувати кілька критеріїв в Excel!
Сходинки:
- Перш за все, виділяємо комірку G5 і записати функція ФІЛЬТР в тій камері. Функція буде такою:
=FILTER(B5:B25,(B5:B25<=1970)*(D5:D25="Brazil"))
Розбивка по формулам
(B5:B25<=1970
повертає значення ПРАВДА якщо рік менше або дорівнює 1970, в іншому випадку НЕПРАВДА .(D5:D25="Бразилія")
повертає значення ПРАВДА якщо країною-чемпіоном є Бразилія, в іншому випадку НЕПРАВДА.(B5:B25<=1970)*(D5:D25="Brazil")
перемножує два масиви ПРАВДА і НЕПРАВДА , але розглядає кожну з них ПРАВДА як 1 і кожен НЕПРАВДА як 0 .- Отже, він повертає 1 якщо обидва критерії виконуються, в іншому випадку повертає 0.
- Тепер формула стає:
=FILTER({B4,B5,B6,...,B24},{0,0,...,1,1,...,0})
- Повертає рік у колонці B коли він стикається з 1 і не повертає результату, коли стикається з 0 .
- Для цього достатньо натиснути Увійдіть В результаті ви отримаєте роки, коли Бразилія був чемпіон про "Жюль Ріме" трофей, який є поверненням функція ФІЛЬТР Бачите, до 1970 перемогу здобула Бразилія тричі в 1958, 1962, і 1970 .
Таким чином, ми можемо відфільтрувати будь-які дані, що задовольняють декільком критеріям І тип.
А тепер скажіть, будь ласка, формулу, за якою можна дізнатися, за скільки років до того 2000 коли Бразилія стала чемпіоном, а Італія посіла друге місце?
Формула буде такою:
=FILTER(B5:B25,(B5:B25<2000)*(D5:D25="Brazil")*(E5:E25="Italy"))
Схожі читання:
- Застосування декількох фільтрів в Excel [Методика + VBA]
- Як відфільтрувати дані в Excel за допомогою формули
- Фільтрація даних в Excel на основі значення комірки (6 ефективних способів)
3. Фільтрація декількох критеріїв за допомогою комбінації типів "І" та "АБО" в Excel
Випадок 1: операція в операційній
Тепер, якщо я задам вам питання, в які роки, коли Південноамериканський країна ( Бразилія, Аргентина або Уругвай ) був або чемпіон або призери ?
Ви можете дати відповідь на моє запитання?
Зверніть увагу, тут країна-чемпіон повинна бути Бразилія, Аргентина, або Уругвай Або країна, що посіла друге місце, має бути Бразилія, Аргентина або Уругвай Це проблема типу АБО в межах типу АБО. Не хвилюйтеся, просто дотримуйтесь наведених нижче інструкцій, щоб відфільтрувати кілька критеріїв у Excel!
Сходинки:
- Перш за все, виділяємо комірку G5 і записати функції в цій камері. Функції будуть такими:
=FILTER(B5:B25,(ISNUMBER(MATCH(D5:D25,{"Бразилія", "Аргентина", "Уругвай"},0)))+ (ISNUMBER(MATCH(E5:E25,{"Бразилія", "Аргентина", "Уругвай"},0))))
Розбивка по формулам
MATCH(D4:D24,{"Бразилія", "Аргентина", "Уругвай"},0)
прибутки 1 якщо команда-чемпіон - Бразилія, 2 якщо команда-чемпіон - Аргентина, 3 якщо команда-чемпіон - Уругвай, а помилка (N/A) якщо команда-чемпіон не є жодною з них.ISNUMBER(MATCH(D4:D24,{"Бразилія", "Аргентина", "Уругвай"},0))
конвертує числа в ПРАВДА і помилки в НЕПРАВДА .- Так само,
ISNUMBER(MATCH(E4:E24,{"Бразилія", "Аргентина", "Уругвай"},0))
повертає значення ПРАВДА якщо країною, яка посіла друге місце, є або Бразилія, або Аргентина, або Уругвай. І НЕПРАВДА - Отже,
(ISNUMBER(MATCH(D4:D24,{"Бразилія", "Аргентина", "Уругвай"},0)))+(ISNUMBER(MATCH(E4:E24,{"Бразилія", "Аргентина", "Уругвай"},0)))
повертає значення 1 або 2 якщо південноамериканська країна є чемпіоном, або посідає друге місце, або і те, і інше. - І повертає нуль в іншому випадку.
- Формула стає:
=FILTER({B4,B5,...,B24},{2,0,0,2,...,1,0})
- Повертає рік з колонки B якщо знаходить число більше нуля, і не повертає результату в протилежному випадку.
- Для цього достатньо натиснути Увійдіть В результаті ви отримаєте роки, коли була створена Південноамериканський країна ( Бразилія, Аргентина або Уругвай ) був або чемпіон або друге місце. Бачите, ми знайшли всі роки, коли південноамериканська країна була або чемпіоном, або посідала друге місце.
Випадок 2: АБО в межах І
Якщо ви розумієте наведену вище формулу, чи можете ви сказати формулу для визначення років, коли обидва чемпіон та призери були з Південна Америка (Бразилія, Аргентина, або Уругвай) ?
Досить легко. Просто замініть (+) знак попередньої формули зі знаком (*) Знак. Функції такі:
=FILTER(B4:B24,(ISNUMBER(MATCH(D4:D24,{"Бразилія", "Аргентина", "Уругвай"},0)))*(ISNUMBER(MATCH(E4:E24,{"Бразилія", "Аргентина", "Уругвай"},0))))
Бачите, таке траплялося лише двічі - у 1930 і 1950 роках.
4. використання функції ФІЛЬТР у декількох стовпчиках
Тепер, якщо придивитися уважніше, то можна виявити, що до року 1990 жила-була країна, яка називалася Західна Німеччина А після того, як 1990 не існує Західна Німеччина Що є Німеччина Вони фактично з однієї країни. 1990 "Про те, що в Україні не існує жодного закону, який би дві Німеччини (Східна і Захід) об'єдналися і утворили нинішню Німеччину.
Чи можете ви визначити роки, коли Німеччина був чемпіон Неважливо Схід або Захід .
Ви повинні використовувати функцію ФІЛЬТР у декількох стовпчиках.
Формула буде такою:
=FILTER(B5:B25,ISNUMBER(SEARCH("*Germany",D5:D25)))
Розбивка по формулам
SEARCH("*Німеччина",D5:D25)
шукає в масиві все, що в кінці має Німеччину D5 до D25 Якщо вам потрібна Німеччина посередині, скористайтеся "*Німеччина*".- Він повертає 1 якщо він знаходить збіг (Західна Німеччина і ФРН) і повертає Помилка
ISNUMBER(SEARCH("*Німеччина",D5:D25))
перетворює одиниці в ПРАВДА , а помилки в НЕПРАВДА .- Нарешті,
FILTER(B5:B25,ISNUMBER(SEARCH("*Germany",D5:D25)))
повертає роки зі стовпця B коли він стикається з ПРАВДА інакше не повертає результату.
- Дивіться, Німеччина стала чемпіоном 4 рази . 3 разів на Західна Німеччина і 1 час до теперішнього часу Німеччина .
Тепер, якщо ви розумієте цю формулу, чи можете ви дізнатися роки, коли Чемпіонат світу з футболу відбулася під егідою дві країни ?
Я даю тобі підказку. Має бути " і " у назві країни перебування ( "і" між двома пробілами)
Так. Ви маєте рацію. Формула буде:
=FILTER(B5:B25,ISNUMBER(SEARCH("* та *",C5:C25)))
Зараз ми бачимо, що це сталося лише один раз в 2002 в якому взяли участь Південна Корея і Японія .
Альтернативні варіанти фільтрації за кількома критеріями в Excel
Згадані вище методи фільтрації за кількома критеріями є досить корисними. Але з один недолік "Про те, що в Україні не існує жодного закону, який би ФІЛЬТР функція доступна тільки в Office 365 .
Ті, хто не має Office 365 підписки, можуть використовувати ці альтернативні методи для фільтрації деяких даних за кількома критеріями.
З'ясувати роки, коли Італія був приймаюча країна або чемпіон використовуйте наведену нижче формулу:
=IF((C5:C25="Italy")+(D5:D25="Italy"),B4:B24,"")
І з'ясувати роки, коли Бразилія був чемпіоном до 1970 використовуйте цю формулу:
=IF((B5:B25<=1970)*(D5:D25="Brazil"),B5:B25,"")
Зауважте: Ви не можете видалити порожні клітинки, як у випадку з ФІЛЬТР функціонують таким чином. І натисніть Ctrl + Shift + Enter для введення формул.
Як використовувати розширений фільтр в Excel
Ми подамо заявку численні критерії на одна колонка використовуючи розрахункові дані Ось, ми збираємося знахідка поставлена продукція з кількість більше 50 але менше 100 Для цього нам потрібно подавати заявку наступне формула "У нас тут є формула це...
=IF(AND(E550),E5,FALSE)
Вихідні дані в комірці C16 це 55 в якості обсяг поставок падає в діапазон .
Таким чином, виберіть пункт Просунутий під командуванням Сортування та фільтрація опції від Дані рахунок.
Після цього ми поставили весь набір даних в якості Діапазон списку і клітини C15:C16 в якості Діапазон критеріїв .
Нарешті, влучили ГАРАЗД. щоб побачити результат, Тобто, перелік поставлена продукція маючи кількість в діапазоні від 50 до 100.
Висновок
Використовуючи ці методи, ви можете відфільтрувати будь-які дані, зберігаючи кілька критеріїв в Excel. Якщо ви знаєте інший метод, повідомте нам про це в розділі коментарів.