EXCEL中对电话号码进行处理

来源:百度知道 编辑:UC知道 时间:2024/05/25 02:52:26
如何在EXCEL中对一列电话号码,固定电话增加区号(若原来有则不加),手机号码加拨0(若原来有则不加),并且在安徽的电话不做调整。
原表如下:
北京 683333339
北京 01068333339
安徽 0551345678
安徽 1301234567
是这样的,我想用的公式大致如下:
if (len(A2)=11,"0"&A2,(if (left(A1)='安徽'),A1,区号&A2))
但是总是报错,不知道出在什么地方,另外,这个公式相当于把所有的地方区号都要更改一次,很麻烦,不知道有什么快捷的方法,只用做一个表就可以全部套用一个公式,希望能有完整的答复,多谢!

简单给你提点建议,因为你的数据只有几个,加上我不知道安徽号码的开始数,还有手机都是一些以1××开头的,我就大概说一下思路吧:
1.一般来说固定电话加区号为11位,所以先判断长度(len()函数)是否为11位,并且第一位是否为0(left(单格,1)函数),是0则已经有区号了,不足11位,则应该加区号,还要加上判断是否为安徽的,一般安徽的号以什么加头,就用left取数来判断。
2.手机号的处理,对处手机号也是先判断是否为11位,且第一位是否为1,如果是11位,且是1开头,则加上0。
3.加0或区号的方法:="0"&a2,设a2为原单元格。
希望我说的对你有帮助。

一般电话号码就是8位.带区号可能是11位可能是12位.手机为13位..

假设表是这样的.
--A,,,,B,,,,C,,,,D,,,,
1地名,区号,原号,新号
2北京 ,--,683333339 ,
3安徽 ,--,0551345678 ,
4安徽 ,--,1301234567,

那么在D2中输入
=IF(LEN(C2)=11,C2,IF(LEN(C2)=12,C2,IF(LEN(C2)=13,C2,IF(LEN(C2)=8,B2&C2,C2))))

要注意的是B2和C2的一定要是文本格式.

另外如果你的量很大的话..区号可以做一个引用表..用VLOOKUP引用..减小录入时间.

学习下

用VBA可以