I am using the following long formula for extracting specific fields from a delimited string. The formula works fine, but is there a more efficient way, noting that it must support very large strings with 100s of delimited fields?
=IFERROR(MID($A1,FIND("®",SUBSTITUTE(A1,char(187),B1))+1,FIND("®",SUBSTITUTE(A1,CHAR(187),"®",B1+1))-(FIND("®",SUBSTITUTE(A1,CHAR(187),"®",B1))+1)),"")
A1
contains the string;
char(187)
is the delimiter;
B1
contains the number of the field that I would like to extract
Any help would be greatly appreciated
a1 = »44130»Yes»44105»»Design & implement a workflow system for the end-to-end medical assessment process to improve customer experience, data accuracy & operational efficiency»
B1 = 3
Answer = 44105 (as text )
Data in the string could include anything able to be typed on a standard keyboard "®" has been selected in the substitute formula as it is not a standard character
Windows Excel 2016 (but would like it to be as broadly compatible as possible)