EXCEL表格中,一串字符串,汉字前后都有英文数字且长度不一样,怎么提取前面的英文数字?

详见下图,怎么由原始数据,直接通过一个公式得到【提取结果】那一列,之前都是用LEFT函数手工改成3或者4,太麻烦了,有没有更好的公式一次性下拉完成的???

B2输入

=LEFT(A2,MATCH(2,LENB(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)),)-1)

数组公式,先按住CTRL+SHIFT,最后回车,使得编辑栏公式两端出现花括号{ }

公式下拉

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-11-14
还是用这个函数,只是增加一个第4个字符的判断,即可实现自动提取了……
在B2单元格输入公式:
=IFERROR(LEFT(A2,3+(CODE(MID(A2,4,1))<130)),"")
复制并下拉,即可
第2个回答  2019-11-14
B2里输入

=LEFT(A2,MATCH(1=1,MID(A2,ROW($1:50),1)>"啊",)-1)
数组公式,输入后按Ctrl+Shift+Enter本回答被提问者采纳
第3个回答  2019-11-14

B2=LEFT(A2,MATCH(,0/(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)>"吖"),)-1)

同时按Ctrl+Shift+Enter三键输入数组公式

相似回答