Фон
Я использую Excel 2013.
У меня есть таблица Excel с именем SiteCategories
, с несколькими столбцами категорий, а затем сайты в этих столбцах, например:
Таким образом, мы могли бы получить эти значения, используя =SiteCategories[Category1]
У меня также есть список URL-адресов - подумайте о полных URL-адресах, таких как http://www.sitea.com/page/page.html
Что я хотел бы сделать
Для этого огромного списка URL-адресов я бы хотел, чтобы рядом с ними были столбцы, указывающие, относятся ли они к категории A или категории B, например:
Я бы хотел, чтобы при сопоставлении не учитывался регистр, поскольку URL-адреса не нормализованы. Однако, если это облегчает задачу, я могу обработать поля или обернуть их в lower()
хотя я думаю, что этот процесс тоже сможет это сделать.
Где я застрял
Я могу выполнять сопоставления и поиск по одному фрагменту текста, но у меня возникают проблемы с этим по диапазону текста.
По сути, я хочу сказать, что если какой-либо фрагмент текста в данном столбце категории находится внутри URL (без учета регистра), то URL находится в этой категории.
Тем не менее, большинство функций MATCH
и SEARCH
, похоже, не поддерживают запрос диапазона значений.
Похоже, что я хочу сделать противоположный этому вопросу - хотя это решение использует подстановочный знак для одного термина, чтобы найти его в нескольких ячейках, я хочу использовать текст из нескольких ячеек в качестве подстановочных знаков для одной строки и вернуть true, если любой из них правда.
Как я это делаю сейчас
В настоящее время формула, которую я использую, - это оператор OR
, использующий несколько формул SEARCH
, как показано ниже (где F3
- это ячейка с URL):
=OR(ISNUMBER(SEARCH("sitea.com",F3)), ISNUMBER(SEARCH("siteb.com",F3)),ISNUMBER(SEARCH("sitec.com",F3)), ISNUMBER(SEARCH("sited.com",F3)),ISNUMBER(SEARCH("sitee.com",F3)))
Однако это несколько несостоятельно, так как требования к тому, какие сайты идут в какие категории, меняются со временем. Я хотел бы иметь возможность положить их в таблицу, чтобы сделать их легко редактируемыми, поэтому вопрос.