seemingly, the percentages, division, rounding et al are playing mischief. i can't seem to attribute it to anything else.
i found an ugly way around it. in the worksheet that you uploaded in post #1, place this in G2 and drag-fill down:
=VLOOKUP(B2*1000/10,$P$2:$Q$27,2,FALSE)
or
=VLOOKUP(B2*1000/10,$P$2:$Q$27,2,TRUE)
ostensibly, results are spot on (except for 118, which appears twice in the table_array with different corresponding alphabets - FALSE gets H, TRUE gets I).
Bookmarks