INDEX-MATCH для частичного совпадения ссылочной строки с несколькими значениями поиска

INDEX-MATCH для частичного совпадения ссылочной строки с несколькими значениями поиска

У меня есть две (сокращенные) таблицы ниже:

A1:A5 - Таблица данных

URL
shop.samsung.com/au/accessories/mobile-accessories
samsung.com/us/amp/us/smartphones/galaxy-s9
samsung.com/us/appliances/electric-ranges
samsung.com/global/business/semiconductor/minisite/SSD/notice.html

E1:F5 - Справочная таблица

If Folder Contains          Value
mobile-accessories          Mobile Accessories
smartphones                 Mobile Phone
appliances/electric-ranges  Cooking Appliance
appliances/refrigerators    Semiconductor

Я пытаюсь создать формулу, которая будет просматривать таблицу URL, проверять, есть ли у строки частичное совпадение в столбце «Если папка содержит» таблицы ссылок, и возвращать значение. Например, если я выберу первую ссылку (A2), я ожидаю, что формула вернет «Мобильные аксессуары», поскольку A2 содержит «mobile-accessories» в URL.

Обратное я знаю, как сделать (просто сделать vlookup с подстановочным знаком до/после), но я не могу придумать, как это сделать. Любые указания будут оценены

решение1

Просто интересно, еслибытовая техника/холодильникиследует сопоставить сПолупроводниккак вы показали в вашем примере. Я думал, что может бытьбизнес/полупроводникможет сопоставляться сПолупроводник. Но это не проблема.

В этом примере данные URL-адреса находятся в A1:A5, таблица сопоставления находится в E1:F5. Теперь в B2 поместите следующую формулу и нажмите CTRL+ SHIFT+ ENTERв строке формул, чтобы создать формулу массива. Теперь формула должна быть заключена в фигурные скобки, чтобы указать, что это формула массива.

Перетащите его вниз до нужных строк.

=IFERROR(INDEX($F$2:$F$5,MAX(IF(ISERROR(SEARCH($E$2:$E$5,A2)),0,ROW($E$2:$E$5))-ROW($F$1))),"No Category")

введите описание изображения здесь

Внешний IFERROR добавлен только в косметических целях, просто чтобы показать текст «Нет категории», если совпадений не найдено. Если ваша версия EXCEL до 2007 года, вы можете его удалить. Вместо сообщения «Нет категории» формула будет просто возвращать ошибку для таких случаев или, в качестве альтернативы, вы также можете использовать смесь конструкции IF(ISERROR()).

решение2

Для решения этой проблемы вам понадобится вспомогательный столбец для хранения строк частичного совпадения.

введите описание изображения здесь

Запишите эту формулу в ячейку N41и заполните ее.

=VLOOKUP($N36,$O36:$O36,1,TRUE)

При необходимости измените ссылки на ячейки в формуле.

Связанный контент