Возвращение нескольких совпадающих значений на основе множественных критериев в Excel (Полное руководство)
Пользователи Excel часто сталкиваются с ситуациями, когда необходимо извлечь несколько значений, удовлетворяющих нескольким условиям одновременно, и представить все совпадающие результаты в столбце, строке или объединить их в одной ячейке. Это руководство исследует методы для всех версий Excel, а также новую функцию FILTER, доступную в Excel 365 и 2021.

Возвращение нескольких совпадающих значений на основе множественных критериев в одной ячейке
В Excel извлечение нескольких совпадающих значений на основе множественных критериев в одной ячейке является распространенной задачей. Здесь представлены два эффективных метода.
Метод 1: Использование функции Textjoin (Excel365 / 2021, 2019)
Чтобы получить все совпадающие значения в одну ячейку с разделителями, функция TEXTJOIN может помочь.
Введите или скопируйте следующую формулу в пустую ячейку, затем нажмите клавишу Enter (Excel 2021 и Excel 365) или комбинацию клавиш Ctrl + Shift + Enter в Excel 2019, чтобы получить результат:
=TEXTJOIN(", ", TRUE, IF(($A$2:$A$18=E2)*($B$2:$B$18=F2), $C$2:$C$18, ""))
- ($A$2:$A$21=E2)*($B$2:$B$21=F2) проверяет, соответствует ли каждая строка обоим условиям: «Продавец равен E2» и «Месяц равен F2». Если оба условия выполнены, результат равен 1; в противном случае — 0. Звездочка * означает, что оба условия должны быть истинными.
- IF(..., $C$2:$C$21, "") возвращает название продукта, если строка соответствует; в противном случае возвращает пустое значение.
- TEXTJOIN(", ", TRUE, ...) объединяет все непустые названия продуктов в одну ячейку, разделяя их запятой ", ".
Метод 2: Использование Kutools для Excel
Kutools для Excel предлагает мощное и простое решение, позволяющее быстро извлекать и объединять несколько совпадений в одну ячейку на основе множественных критериев без сложных формул.
После установки Kutools для Excel сделайте следующее:
- Выберите диапазон данных, из которого вы хотите получить все соответствующие значения на основе критериев.
- Затем нажмите Kutools > Объединить и Разделить > Расширенное объединение строк, см. скриншот:
- В диалоговом окне Расширенное объединение строк настройте следующие параметры:
- Выберите заголовки столбцов, содержащих ваши критерии совпадения (например, Продавец и Месяц). Для каждого выбранного столбца нажмите Основной ключ, чтобы определить их как условия поиска.
- Нажмите заголовок столбца, где вы хотите видеть объединенные результаты (например, Продукт). В разделе Объединить выберите предпочитаемый разделитель (например, запятую, пробел или пользовательский разделитель).
- В конце нажмите кнопку OK.
Результат: Kutools мгновенно объединит все совпадающие значения в одну ячейку для каждой уникальной комбинации критериев.
Возвращение нескольких совпадающих значений на основе множественных критериев в столбце
Когда вам нужно извлечь и отобразить несколько совпадающих записей из набора данных на основе нескольких условий, возвращая результаты в вертикальном формате столбца, Excel предлагает несколько мощных решений.
Метод 1: Использование формулы массива (для всех версий)
Вы можете использовать следующую формулу массива для возврата результатов вертикально в столбце:
1. Скопируйте или введите следующую формулу в пустую ячейку:
=IFERROR(INDEX($C$2:$C$18, SMALL(IF(($A$2:$A$18=$E$2)*($B$2:$B$18=$F$2), ROW($C$2:$C$18)-ROW($C$2)+1), ROW(1:1))), "")
2. Нажмите комбинацию клавиш Ctrl + Shift + Enter, чтобы получить первое совпадающее значение, затем выберите первую ячейку с формулой и перетащите маркер заполнения вниз до тех пор, пока не появится пустая ячейка. Теперь все совпадающие значения будут возвращены, как показано на скриншоте ниже:
- $A$2:$A$18=$E$2: Проверяет, соответствует ли Продавец значению в ячейке E2.
- $B$2:$B$18=$F$2: Проверяет, соответствует ли Месяц значению в ячейке F2.
- * — это логический оператор И (оба условия должны быть истинными).
- ROW($C$2:$C$18)-ROW($C$2)+1: Генерирует относительный номер строки для каждого продукта.
- SMALL(..., ROW(1:1)): Получает n-е наименьшее совпадающее значение строки (по мере того, как формула тянется вниз).
- INDEX(...): Возвращает продукт из совпадающей строки.
- IFERROR(..., ""): Возвращает пустую ячейку, если больше нет совпадений.
Метод 2: Использование функции Filter (Excel365 / 2021)
Если вы используете Excel 365 или Excel 2021, функция FILTER является отличным выбором для возврата нескольких результатов на основе множественных критериев благодаря своей простоте, ясности и способности динамически расширять результаты без сложных формул массива.
Скопируйте или введите следующую формулу в пустую ячейку, затем нажмите клавишу Enter, и все совпадающие записи будут возвращены на основе множественных критериев.
=FILTER(C2:C18, (A2:A18=E2)*(B2:B18=F2), "No match")
- FILTER(...) возвращает все значения из C2:C18, где выполнены оба условия.
- (A2:A18=E2)*(B2:B18=F2): Логический массив, который проверяет совпадение продавца и месяца.
- "No match": Необязательное сообщение, если значения не найдены.
Возвращение нескольких совпадающих значений на основе множественных критериев в строке
Пользователи Excel часто нуждаются в извлечении нескольких значений из набора данных, которые соответствуют нескольким условиям, и отображении их горизонтально (в строке). Это полезно для создания динамических отчетов, информационных панелей или сводных таблиц, где вертикальное пространство ограничено. В этом разделе мы рассмотрим два мощных метода.
Метод 1: Использование формулы массива (для всех версий)
Традиционные формулы массива позволяют извлекать несколько совпадающих значений с использованием функций INDEX, SMALL, IF и COLUMN. В отличие от вертикального извлечения (основанного на столбцах), мы адаптируем формулу для возврата результатов в строке.
1. Скопируйте или введите следующую формулу в пустую ячейку:
=IFERROR(INDEX($C$2:$C$18, SMALL(IF(($A$2:$A$18=$E$2)*($B$2:$B$18=$F$2), ROW($C$2:$C$18)-ROW($C$2)+1), COLUMN(A1))), "")
2. Нажмите комбинацию клавиш Ctrl + Shift + Enter, чтобы получить первое совпадающее значение, затем выберите первую ячейку с формулой и перетащите формулу вправо по столбцам, чтобы получить все результаты.
- $A$2:$A$18=$E$2: Проверяет, соответствует ли Продавец.
- $B$2:$B$18=$F$2: Проверяет, соответствует ли Месяц.
- *: Логическое И — оба условия должны быть истинными.
- ROW($C$2:$C$18)-ROW($C$2)+1: Создает относительные номера строк.
- COLUMN(A1): Настройка, какой совпадающий элемент возвращать, в зависимости от того, насколько далеко формула была перетянута вправо.
- IFERROR(...): Предотвращает ошибки, когда совпадения исчерпаны.
Метод 2: Использование функции Filter (Excel365 / 2021)
Скопируйте или введите следующую формулу в пустую ячейку, затем нажмите клавишу Enter, и все совпадающие значения будут извлечены и расположены в строке. См. скриншот:
=TRANSPOSE(FILTER(C2:C18, (A2:A18=E2)*(B2:B18=F2), "No match"))
- FILTER(...): Извлекает совпадающие значения из столбца C на основе двух условий.
- (A2:A18=E2)*(B2:B18=F2): Оба условия должны быть истинными.
- TRANSPOSE(...): Преобразует вертикальный массив, возвращаемый FILTER, в горизонтальный массив.
🔚 Заключение
Извлечение нескольких совпадающих значений на основе множественных критериев в Excel можно выполнить несколькими способами, в зависимости от того, как вы хотите отобразить результаты — будь то в столбце, строке или внутри одной ячейки.
- Для пользователей с Excel 365 или Excel 2021 функция FILTER предлагает современное, динамичное и элегантное решение, которое минимизирует сложность.
- Для тех, кто использует более старые версии, формулы массива остаются мощным инструментом, хотя они требуют немного больше настроек и внимания.
- Кроме того, если вы хотите объединить результаты в одну ячейку или предпочитаете решение без кода, функция TEXTJOIN или сторонние инструменты, такие как Kutools для Excel, могут значительно упростить процесс.
Выберите метод, который лучше всего подходит для вашей версии Excel и предпочтительного макета, и вы будете хорошо подготовлены для эффективного и точного выполнения многокритериальных поисков. Если вас интересует изучение дополнительных советов и приемов Excel, наш веб-сайт предлагает тысячи учебных материалов, которые помогут вам освоить Excel.
Больше связанных статей:
- Возврат нескольких значений поиска в одной ячейке, разделенных запятыми
- В Excel мы можем применить функцию VLOOKUP для возврата первого совпадающего значения из таблицы, но иногда нам нужно извлечь все совпадающие значения, а затем разделить их определенным разделителем, например запятой, тире и т.д., в одну ячейку, как показано на следующем скриншоте. Как получить и вернуть несколько значений поиска в одной ячейке, разделенных запятыми, в Excel?
- Vlookup и возврат нескольких совпадающих значений одновременно в Google Sheets
- Обычная функция Vlookup в Google Sheets может помочь вам найти и вернуть первое совпадающее значение на основе заданных данных. Но иногда вам может понадобиться выполнить vlookup и вернуть все совпадающие значения, как показано на следующем скриншоте. Есть ли у вас какие-либо хорошие и простые способы решения этой задачи в Google Sheets?
- Vlookup и возврат нескольких значений из выпадающего списка
- В Excel, как можно выполнить vlookup и вернуть несколько соответствующих значений из выпадающего списка, что означает, что при выборе одного элемента из выпадающего списка все его относительные значения отображаются сразу, как показано на следующем скриншоте. В этой статье я представлю решение пошагово.
- Vlookup и возврат нескольких значений вертикально в Excel
- Обычно вы можете использовать функцию Vlookup для получения первого соответствующего значения, но иногда вы хотите вернуть все совпадающие записи на основе определенного критерия. В этой статье я расскажу, как выполнить vlookup и вернуть все совпадающие значения вертикально, горизонтально или в одну ячейку.
- Vlookup и возврат совпадающих данных между двумя значениями в Excel
- В Excel мы можем применить обычную функцию Vlookup для получения соответствующего значения на основе заданных данных. Но иногда мы хотим выполнить vlookup и вернуть значение, находящееся между двумя значениями, как показано на следующем скриншоте. Как справиться с этой задачей в Excel?
Лучшие инструменты для повышения продуктивности работы с Office
Ускорьте работу в Excel с Kutools для Excel и ощутите новую степень эффективности. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени. Нажмите здесь, чтобы выбрать нужную вам функцию...
Office Tab добавляет вкладки в Office и делает вашу работу намного проще
- Включите редактирование и чтение с вкладками в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна, а не в отдельных окнах.
- Увеличьте свою продуктивность на50% и сократите сотни лишних кликов мышью каждый день!