I have some names from g6 to g9 on "Sheet 1" of my excel:
- Z Purton
- H Bowman
- C L Chau(-2)
- M F Poon(-7)
I have these names in column B of another sheet called "Names" but in a different order, and also without the "(-2)":
- M F Poon
- H Bowman
- Z Purton
- C L Chau
In column L of the same sheet, I have a bunch of numbers which are the points corresponding to the names.
Back to sheet1 of my excel, i did
=VLOOKUP(I6, Names!$B$5:$L$55, 11, FALSE)
This worked for the first two names, printing their scores, 0.75 and 0.5, but then it said #N/A for the last two names as they had a number next to them, making them not match the names from Sheet 1.
I then tried to do
=VLOOKUP(I6, TrainerRanking!$B$5:$L$55, 11, TRUE)
Now, there were no more #N/A's. However, for the first name - Z Purton, it should have printed 0.75 but it printed 0
is there a way to fix this?

Try using TEXTBEFORE( )
Or,
The TEXTBEFORE( ) function has
2mandatory parameters and4optional parameters, the parameters which shows within square brackets are called optional.So that said, the TEXTBEFORE( ) Function syntax is
therefore in the above formula I have used the function as
hope you can relate it now. Where
I6:I9is my text,(is my delimiter, instance_num and match_mode is nothing here taken, while the match_end is1& if not found is sameI6:I9.You can also read the MS Documentation here
Alternative approach for all users, as mentioned in comments by P.b Sir.