У меня есть две (сокращенные) таблицы ниже:
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()).