本文使用LAMBDA函数创建一个将文本拆分成数组的自定义函数,如下图1所示。SplitTextToArray函数使用逗号(”,”)作为分隔符拆分单元格B3中的文本。首先,编写Excel公式来完成任务,以确保公式逻辑正确。Excel公式为: =TRANSPOSE(FILTERXML('<x><y>'&SUBSTITUTE(B3,',','</y><y>')&'</y></x>','//y'))这个公式将原始文本转换为初始XML格式,然后使用FILTERXML函数解析XML。确保公式正确运行后,将公式转换为通用的LAMBDA公式。需要两个输入参数:一个是要被拆分的文本,一个是拆分时使用的分隔符。第三个参数则根据前两个参数计算出结果。=LAMBDA(text,delim,TRANSPOSE(FILTERXML('<x><y>'
&
SUBSTITUTE(text,delim,'</y><y>')&'</y></x>','//y')))=LAMBDA(text,delim,TRANSPOSE(FILTERXML('<x><y>'&SUBSTITUTE(text,delim,'</y><y>')&'</y></x>','//y')))(B3,',')引用位置:=LAMBDA(text,delim,TRANSPOSE(FILTERXML('<x><y>'&SUBSTITUTE(text,delim,'</y><y>')&'</y></x>','//y')))这个自定义函数允许拆分其它分隔符联结的文本,例如,拆分由空格分隔的文本:=SplitTextToArray(B3,
“ ”)=SplitTextToArray(B3,
“-”)注:有兴趣的朋友可以到知识星球App完美Excel社群下载本文示例工作簿。
|