Note: The other languages of the website are Google-translated. Back to English

Как извлечь все частичные совпадения в Excel?

Если вы хотите извлечь все совпадения, которые содержат определенное ключевое слово из столбца, и перечислить их в столбце или в ячейке, разделенной разделителем, как показано на снимке экрана ниже, как вы могли бы решить эту задачу в Excel?

Извлечь все частичные совпадения по вертикали с помощью формулы

Извлеките все частичные совпадения в одну ячейку с помощью пользовательской функции


Извлечь все частичные совпадения по вертикали с помощью формулы

Чтобы извлечь все совпадения по вертикали в столбце на основе частичного текста, вам может помочь следующая формула массива:

Step1: Пожалуйста, скопируйте и вставьте приведенную ниже формулу в пустую ячейку, где вы хотите поместить результат:

=INDEX($A$2:$A$14,SMALL(IF(ISNUMBER((SEARCH($C$2,$A$2:$A$14))),MATCH(ROW($A$2:$A$14),ROW($A$2:$A$14)), ""),ROWS($E$1:E1)),COLUMNS($E$1:E1))

Внимание: В приведенной выше формуле A2: A14 ячейки могут содержать ключевое слово, из которого вы хотите получить совпадения, C2 содержит ключевое слово, E1 - ячейка над формулой.

Step2: Затем нажмите Shift + Ctrl + Enter одновременно, чтобы получить первый результат, а затем перетащите маркер заполнения вниз, чтобы получить все совпадения, пока не появится значение ошибки. Наконец, удалите значения ошибок, см. снимок экрана:


Извлеките все частичные совпадения в одну ячейку с помощью пользовательской функции

Если вам нужно извлечь все совпадения в одну ячейку и разделить их определенным разделителем, возможно, никакая формула не сможет решить эту проблему. Здесь вам нужно применить следующую определяемую пользователем функцию:

Step1: Нажмите Alt + F11 , чтобы открыть Microsoft Visual Basic для приложений окно.

Step2: В Microsoft Visual Basic для приложений окна, нажмите Вставить > Модули, затем скопируйте следующий код в файл Module.

Код VBA: извлечь все частичные совпадения в одну ячейку

Function ExtractPartMatch(rngInput As Range, rngSource As Range, Optional sDelimiter As String)
'Updateby ExtendOffice
Dim rng As Range
If sDelimiter = "" Then sDelimiter = ", "
For Each rng In rngSource
    If InStr(1, rng.Value, rngInput.Value, vbTextCompare) > 0 Then ExtractPartMatch = ExtractPartMatch & sDelimiter & rng.Value
Next
If Len(ExtractPartMatch) > 0 Then ExtractPartMatch = Mid(ExtractPartMatch, 2, Len(ExtractPartMatch))
End Function

Step3: после вставки кода вернитесь на рабочий лист, где вы хотите найти результат, затем введите эту формулу: =ExtractPartMatch(C2,$A$2:$A$14), а затем нажмите Enter ключ, чтобы получить результат, как показано ниже:


Лучшие инструменты для работы в офисе

Kutools for Excel решает большинство ваших проблем и увеличивает вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма ...
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон...
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы... Предотвращение дублирования ячеек; Сравнить диапазоны...
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор ...
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое ...
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии...
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом ...
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF...
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
вкладка kte 201905

Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
офисный дно
Сортировать комментарии по
Комментарии (0)
Оценок пока нет. Оцените первым!
Здесь еще нет комментариев
Оставляйте свои комментарии
Публикация как гость
×
Оценить этот пост:
0   Характеристики
Предлагаемые места

Подписывайтесь на Нас

Copyright © 2009 - www.extendoffice.ком. | Все права защищены. Питаться от ExtendOffice, | Карта сайта
Microsoft и логотип Office являются товарными знаками или зарегистрированными товарными знаками Microsoft Corporation в США и / или других странах.
Защищено Sectigo SSL