Excel Match с обратными подстановочными знаками

342
jacopo3001

это мой стол:

 A B c 1 foo.com/page1 foo.com/page1?xyz 2 foo.com/page2 foo.com/page1?abc 3 foo.com/page3 foo.com/page8?xyz 

для каждого элемента в columnB я хочу знать, есть ли соответствующий элемент в ColumnA (результат должен быть: B1> TRUE, B2> TRUE, B3> FALSE)

Я пробовал это:

 =match(B1, A:A&"*") 

но это не работает

Любая идея?

0

1 ответ на вопрос

-1
Tisconie

Это решение относится к вашему примеру.

Используя приблизительное совпадение VLOOKUP вместо точного совпадения, у вас есть возможность сделать что-то «нечеткое» совпадение, как вы описываете.

=IFERROR(IF(LEFT(B1,LEN(VLOOKUP(B1,A:A,1,TRUE)))=VLOOKUP(B1,A:A,1,TRUE),TRUE,FALSE),FALSE) 

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

  • Идентифицирует первое близкое совпадение

  • Проверяет, что все символы в вашем совпадении столбца A представлены в строке B столбца, начиная с самого левого символа

  • Возвращает TRUE, если все символы в совпадении A представлены в вашей строке B

  • Возвращает FALSE, если не все символы в совпадении A представлены в вашей строке B

Слабость (почему это может не сработать с достоверными данными):

Пример содержит номера страниц 1, 2, 3. Если строка столбца B - это страница 11, эта формула вернет TRUE, когда она будет соответствовать 1 (она не будет искать 11).

Похожие вопросы