
Originally Posted by
FlameRetired
.........The idea you ask about is a good one.....if I only knew how to implement it. I don't.

I looked for other patterns but found none...........
I have now. The reworked WB is attached. I had to build a reference range using your idea.......it works. The reference range (26 columns x 38 rows) includes the characters preceding the first letter of city names. As you add to that update the reference range (it's a concatenating formula) and the parsing formula.
The formula array-entered into C1 and filled across and down column D is
Formula:
=TRIM(MID(REPLACE($A1,MAX(IFERROR(FIND($I$2:$AH$39,$A1),0))+1,0,REPT(" ",256)),(COLUMNS($A:A)-1)*256+1,256))
Array enter means the formula must be committed by simultaneously pressing and holding down Ctrl and Shift while hitting Enter.
I duplicated your sample data enough times to make more than 7K rows. It took about 4 seconds to calculate. If you need to update the lookup reference range that formula took my machine about 10 seconds to calculate.
I was pleasantly surprised to find that this works and much better than the cities lookup approach.
Bookmarks