在EXCEL中,如何把数字和文字分开取数

A1内容为 大连市沙河口区0411-84318860,我要在B1中得到 大连市沙河口区 C1中得到0411-84318860,有这样的方法没?谢谢大家

具体操作步骤如下所示:

    先来学习right函数:right函数是从一个文本字符串的最后一个字符开始返回指定个数的字符。

    在学习另一个函数:left,left与right刚好相反,是从一个文本字符串的第一个字符开始返回指定个数的字符。

    细心的人会发现这两个函数是返回指定个数的字符,那么有的是类似“自行车123”和“电脑12”这样没有固定个数的怎么办,我们还需要两个函数:一个是len,返回文本字符串中字符的个数;另一个是lenb,返回文本中所包含的的字符数。熟悉了这几个函数后就可以进行下一步了

    例如下图,汉字和数字在A1至A4单元格,我们想将汉字放在B1,将数字放在C1。

    在B1单元格输入公式:=LEFT(A1,LENB(A1)-LEN(A1));在C1单元格输入公式:=RIGHT(A1,2*LEN(A1)-LENB(A1)),结果见下图

    剩下的就是选中B1、C1然后复制公式,这样汉字就和数字分开了,怎么样是不是很快啊!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-10-24
以你给出的例子。
B1输入
=substitute(a1,c1,"")
C1输入
=right(a1,len(a1)*2-lenb(a1))
这样即可。公式是先C1单元格起作用取出了电话号码,然后B1才起作用
第2个回答  2011-10-24
单元格里是否都是地址+电话的形式?如果格式都和A1的一样,
直接在C1中输入:=right(A1,13),为电话号码
在B1中输入:=left(A1,7),为地址,但地址必须字数为7
如果答案满意,别忘了采取最佳答案!谢谢!
第3个回答  推荐于2016-10-11
1.用MID函数:
B1=MID(A1,1,LENB(A1)-LEN(A1)+1)
C1=MID(A1,LENB(A1)-LEN(A1)+2,LEN(A1))
2.用RIGHT和LEFT函数:
B1=LEFT(A1,LENB(A1)-LEN(A1)+1)
C1=RIGHT(A1,2*LEN(A1)-LENB(A1)-1)
3.还可用自定义函数,这个比较复杂。
打开VBA代码窗口,新插入模块把下面的代码复制其中,关闭代码窗口
在B1中输入=hz(A1)
C1中输入=hm(A1)即可。

Function hz(X)
s= 0
a = Len(X)
For i = 1 To a
c = Mid(X, i, 1)
If Asc(c) < 48 Then
s = s+ 1
End If
Next i
hz = Mid(X, 1, S - 1)
End Function

Function hm(X)
s = 0
a = Len(X)
For i = 1 To a
c = Mid(X, i, 1)
If Asc(c) < 48 Then
s =s+ 1
End If
Next i
hm = Mid(X, S, a - S)
End Function本回答被提问者采纳
第4个回答  2011-10-24
如果A列中的内容最后都是0411-84318860这样的电话号码,可以这样操作:
B1=LEFT(A1,LEN(A1)-13)
C1=RIGHT(A1,13)
后面各行直接鼠标向下拖动就行了
相似回答