2014-12-15 2 views
1

Поэтому у меня есть два диапазона:Excel - поиск различных слов в предложении, и если слово существует в предложении, а затем напечатать слово или печать другого

Sentences

 
I am tom 
I am Matt 
I am John 
Johhny is my name 
Molly is cool 

Имена

 
Polly 
Molly 
John 
Matt 
Tom 
Ronnie 

Так я хочу, чтобы сравнить имена с предложениями, и если слово из имен существует в S Я хочу напечатать это имя в Result. Если ни одно из слов не существует в предложении, я бы хотел, чтобы формула печатала «другое».

Любая помощь здесь. Я сделал это через несколько фильтров и действительно большую формулу. Но я хотел бы передать это.

Вот формула я использовал до сих пор без каких-либо результатов

=(IF(ISNUMBER(SEARCH(K:K,G19)),K:K)) 

Tweaking формула получает меня ограниченные результаты. Некоторая помощь была бы замечательной! Еще раз спасибо

+0

Уже ответил: http://stackoverflow.com/questions/12915215/excel-check-if-cell-value-exists-in-column-and-then-get-the-value-of-the- next Использовать ifexists или vlookup –

+0

Вы против использования VBA? – peege

+0

, поэтому для каждого предложения, если присутствует хотя бы 1 имя из списка имен, вы хотите напечатать первое имя? или все имена? первая должна быть (едва ли) возможной с формулами, письмо может потребовать VBA. – Aprillion

ответ

0

Чтобы найти 1-е имя, вы можете использовать следующие array formula (введенную Ctrl + Сдвиг + Enter):

=IFERROR(
    INDEX(names, MIN(MATCH(TRUE, ISNUMBER(SEARCH(names, [@Sentences])), 0))), 
    "other") 

Объяснение:

  1. SEARCH(names, [@Sentences]) сравнивает каждое имя в диапазоне «имена» с текущим предложением

  2. MIN(MATCH(TRUE, ISNUMBER(...), 0)) будет найти 1-совпадающее имя

  3. INDEX(names, ...) будет получить имя

  4. IFERROR(..., "other") будет заботиться о нет матча обретенной ситуация

Пожалуйста используются конечные диапазоны, как K$2:K$999 вместо K:K для names формулы массива не очень хорошо оптимизированы для диапазонов целых столбцов (или -row).

Обратите внимание, что [@Sentences] является Excel Table обозначение, оно должно быть эквивалентно G19 из вашего вопроса, если ячейка G19 содержит одно предложение.

Смежные вопросы