Joshua Smailes

asked on

# How to match 2 lists in excel with differences

I am trying to match 2 lists in excel to find unique values. One list has data after the data I am trying to match and I am having an issue trying to add a wildcard "*" to the data. I have tried a conditional formatting approach but the lists are very large over (19000 rows) and excel freezes when I try to filter it.

Any help much appreciated

Any help much appreciated

One list has data after the data I am trying to match and I am having an issue trying to add a wildcard "*" to the data.

I assume you mean you have lists something like:

List 1: "Original text"

List 2: "Original text with some more"

Finding the List 1 value in List 2 should be fairly simple:

=VLOOKUP("Original text"&"*",List2,Offset,Fal

Going the other way will be more difficult unless there is a common point at which the text changes, eg after the first 15 characters. For something like that:

=VLOOKUP(LEFT("Original text with some more",15),List1,Offset,Fal

Thanks

Rob H

Instead of a wildcard, you might be able to simplify the problem by adding another column that strips out the extra data for you. So instead of searching for "abc*" in column A, you create another column that only displays LEFT(<column A>, 3) and search that column for just "abc".

The above can be hidden if required. It could also be rolled into a larger vlookup type of formula, but perhaps this make it easier to get a working formula built.

The above can be hidden if required. It could also be rolled into a larger vlookup type of formula, but perhaps this make it easier to get a working formula built.

ASKER

One list has spaces after the data I am trying to match. There can also be data before the data I am trying to match. The data is chassis VIN numbers i.e XLRTGH4300G239385 and I am only trying to match the G239385 as this is the part that will be common in both lists. After the G239385 there is 12 spaces in list 1

With which value are you trying to do the lookup, the longer or the shorter value?

As I mentioned, finding the shorter value of G239385 in the longer value list is relatively simple:

=VLOOKUP("*"&) replace the italic with cell reference containing short VIN.

If doing the other way round, looking for the longer value in the shorter value list, if the required text is always the last 7 characters then:

=VLOOKUP(RIGHT) replace the italic with cell reference containing long VIN.

If the lookup value has spare spaces use TRIM function to remove. If the list that you are looking at has spare spaces then that is more tricky.

As I mentioned, finding the shorter value of G239385 in the longer value list is relatively simple:

=VLOOKUP("*"&

*"G239385"*&"*",LongValueList,2,FalseIf doing the other way round, looking for the longer value in the shorter value list, if the required text is always the last 7 characters then:

=VLOOKUP(RIGHT

*("XLRTGH4300G239385"*,7),ShortValueList,2,False

If the lookup value has spare spaces use TRIM function to remove. If the list that you are looking at has spare spaces then that is more tricky.

ASKER

This has returned a #REF and I am not sure why

Which one??

Copy and paste the formula here exactly how you have it and I can see if I can spot the error.

Copy and paste the formula here exactly how you have it and I can see if I can spot the error.

ASKER

=VLOOKUP("*"&B2&"*",$A:$A,2,FALSE)

ASKER CERTIFIED SOLUTION

membership

This solution is only available to members.

To access this solution, you must be a member of Experts Exchange.

ASKER

That's great thanks is there a way I can filter out the blanks or make the N/As returns blanks so I can filter

=IFERROR(VLOOKUP("*"&B2&"*",$A:$A,1,FALSE),"")

Best would be if you can post sample excel file (e.g. with 10 rows of original data and new data) so we can look at the content and suggest best approach