Solved

Find words from a list in text of another column and return matching word if found

Posted on 2013-12-31
4
365 Views
Last Modified: 2013-12-31
Experts,

I have a list of words in a column e.g. names of fruit in A2:A8

Fruits
Oranges
Apples
Pears
Bananas
Kiwi
Cherries
Strawberries

And I have a column of rows of text that may or may not contain one of the words in the list. e.g. Comments in Col. C

Comments
My favorite fruit is apples.
Oranges are a good source of vitamin C.
Ripe pears taste good but so do bananas.
My favorite pet is a dog.


If one of the words in Fruits is found in the text, I want to enter the matching word in a cell in Col B, else leave it blank.

I'll take the first occurrence of a match.

What is a good way to do this?

Thanks in advance!
0
Comment
Question by:bobinorlando
  • 2
  • 2
4 Comments
 
LVL 50

Accepted Solution

by:
barry houdini earned 500 total points
ID: 39748705
Hello bobinorlando,

One way to do that is with this formula in B2 copied down

=IFERROR(LOOKUP(2^15,SEARCH(A$2:A$8,C2),A$2:A$8),"")

It actually matches in reverse order of the fruit in A2:A8 so for the text with "Pears" and "Bananas" it returns "Bananas" because that's lower down the list......is that a problem?

If so you can use this alternative (in Excel 2010 or later versions)

=IFERROR(INDEX(A$2:A$8,AGGREGATE(15,6,(SEARCH(A$2:A$8,C2)>0)*(ROW(A$2:A$8)-ROW(A$2)+1),1)),"")

that will match with the first fruit in the text so will give you "Pears" for the text "Ripe pears taste good but so do bananas"

see examples of both approaches attached

regards, barry
List-lookup.xlsx
0
 
LVL 1

Author Comment

by:bobinorlando
ID: 39749000
I see this works in your example file.
However, I'm having trouble applying it to my actual data (which is not the sample data I provided).

Can you plug some pseudo code into the formula to document what data goes where from my sample? e.g.

=IFERROR(LOOKUP(really big number,SEARCH(wordstofind,CellwithText),wordstofind),"iferrorprintthis")
0
 
LVL 1

Author Comment

by:bobinorlando
ID: 39749016
Never mind. I've got it now. Thanks!
0
 
LVL 50

Expert Comment

by:barry houdini
ID: 39749149
Hello bobinorlando,

Excellent! -yes, this is a perfect generic version

=IFERROR(LOOKUP(really big number,SEARCH(wordstofind,CellwithText),wordstofind),"iferrorprintthis")

regards, barry
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Freeze panes is an option within all variants of Excel to enable parts of a sheet to remain stationary when the cursor is in another part of the sheet. This is a very useful feature which is overlooked or under used.
When you see single cell contains number and text, and you have to get any date out of it seems like cracking our heads.
This Micro Tutorial demonstrates how to create Excel charts: column, area, line, bar, and scatter charts. Formatting tips are provided as well.
This Micro Tutorial will demonstrate how to use longer labels with horizontal bar charts instead of the vertical column chart.

828 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question