我在A列一个字符串,它是字母和数字的混合。 我想在字符串中的一半显示出来,使得“ABC123”成为在列B“ABC”和“123”在列C中的第一个数字前分割
Answer 1:
如果有任何一种模式,例如总是3个字母.....或者只有3或4个字母,例如,你可以实现更容易但对于任何数量的字母(假设数字始终遵循字母),你可以使用这个公式在B2(这比topcat3的链接建议的公式简单,我想)
=LEFT(A2,MIN(FIND({1,2,3,4,5,6,7,8,9,0},A2&1234567890))-1)
然后在该式中C2
=REPLACE(A2,1,LEN(B2),"")
请注意,这最后的公式返回的数字部分为一个文本值 - 如果你希望它是数字加+ 0式结束(但你将失去任何前导零)
Answer 2:
只是想对作出贡献巴里的公式稍有不同。 稍微容易在我看来理解,但一点点比较难用:
可以使用此数组公式找到的第一个数字的起始位置+ 1:
{=MIN(IFERROR(FIND({1,2,3,4,5,6,7,8,9,0},A2),""))}
使用Ctrl + Alt +输入,使其数组公式输入。
然后你就可以使用该号码拆分的第一部分的字符串的:
=LEFT(A2,B2-1)
然后你就可以使用replace()下车字符串摆脱第一部分(字母)。
=REPLACE(A2,1,LEN(C2),"")
你应该接受巴里的答案,而不是这一个,因为他是更容易使用和更简洁。 但只是想在我的追求,了解巴里的公式是如何工作添加的变化。
文章来源: How do I split/parse a string around the first number in Excel