excel中获得第一个文字或是英文字母的位置?

目前的问题是有一串字符串在一个单元格里,中文英文和数字全有,没有标点符号。
我想要获取这个字符串里的第一个数字的位置(这一步已经完成,网上资料。)和第一个非数字字符的位置。通过循环序列将字符串拆分。
abc123你我他234bcd423你我他898(位数不固定)
想按照顺序提取出第一个数字1的位置,第一个非数字a的位置。
或者大神有更厉害的,直接拆分成abc, 123, 234, bcd, 423几个单元格的方法也可以

Excel怎样快速把文本中产品数量单位分列

.Pattern = "[^一-龥]+|[一-龥]+"

改为

.Pattern = "[0-9]+|[a-zA-Z]+"

可以

温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-01-26
假设数据在A1
第一个数字
=SMALL(IF(ISNUMBER(FIND(MID(A1,ROW($A$1:$A$50),1),"1234567890")),ROW($A$1:$A$50),999),1)
第一个英文字母
=SMALL(IF((MID(A1,ROW($A$1:$A$50),1)>="a")*(MID(A1,ROW($A$1:$A$50),1)<="z")+(MID(A1,ROW($A$1:$A$50),1)>="A")*(MID(A1,ROW($A$1:$A$50),1)<="Z"),ROW($A$1:$A$50),999),1)
数组函数,按ctrl+shift+enter结束输入
如果字符数超过50,把公式里的50改大。英文字母的公式也可以仿照数字的,把所有字母列出来,逻辑更简单。
第2个回答  2021-01-26
建立能传送文件的共同渠道。