EXCEL 常用函数应用实例:[4]拆分单元格内容1

2025-10-23 16:37:13

1、拆分地址需要考虑以下问题:

① 省名、市名、县名及详细地址的长度不一。

② 地址中可能不存在县的情况。

③ 省可能为直辖市、自治区,如果是市区可能无县。

EXCEL 常用函数应用实例:[4]拆分单元格内容1

2、不但要计算出省名长度、市名长度、县名长度,还需要把各种特殊情况一起考虑进来。才能成功分离的地址信息。

EXCEL 常用函数应用实例:[4]拆分单元格内容1

3、虽然地址有一定的不规则性,但是我们不难发现,省/自治区、市、县/区会包含关键字“省”、“自治区”、“市”、“县”、“区”作划分,好比裁剪线一样。可以依次来计算出相应省/自治区、市、县/区的長度。

一些特殊的情況,采用判断是否计算错误来改变计算方式。如在查找关键字“省”时出现找不到的错误,就认为这个地址是直辖市,其它也用相同的办法处理。如果你的数据信息不全,会造成判断错误。

EXCEL 常用函数应用实例:[4]拆分单元格内容1

1、先介绍需要用到的两个新的函数

FIND(find_text,within_text,rt_n[start_num])函数用查询字符串在某个字符串的位置,如“省”字在某个地址中是第几个字的意思。它包含三个参数,“find_text”为需要查找的值,“within_text”为要被查找的文本,可选参数“start_num”为开始查找的位置,这个位置并不是开始计数的位置,“within_text”的第一个字符才是开始计数的位置。

IFERROR(value,value_if_error)函数用于判断运算式是否正确,当为错误时,传回“value_if_error”的值,正确则为“value”。这里我们用于判断是否能够找到关键字,来应付地址的特殊性。

EXCEL 常用函数应用实例:[4]拆分单元格内容1

EXCEL 常用函数应用实例:[4]拆分单元格内容1

2、在地址中提取国籍是最简单的,没有特殊情况。这里我还是使用“FIND”函数来提取,以便熟悉这一函数的用法。使用“MID”截取字符串函数(也可以用LEFT),从第一位开始,一共截取FIND("国",B2,1)位字符。

其中FIND("国",B2,1)会自动计算出从B2单元格的左边第一个字符开始到(第一个)关键字“国”的字符数,计算结果是 2.所以共截取两个字符。

向下填充即可得到需要的结果。

EXCEL 常用函数应用实例:[4]拆分单元格内容1

3、提取省/自治区/直辖市時,需要让计算机去判断是否为直辖市或自治区。不要看到下面一大串内容就觉得复杂,在EXCEL中可以看出,每一个函数的括号都不一样,这有利于我们确定函数到哪里结束。这里说明第一步如何分解,下一步类似。

完整的函数如下:

=IFERROR(MID(B2,FIND("国",B2,1)+1,IFERROR(FIND("省",B2,1),FIND("自治区",B2,1)+2)-FIND("国",B2,1)),

MID(B2,FIND("国",B2,1)+1,FIND("市",B2,1)-FIND("国",B2,1)))

EXCEL 常用函数应用实例:[4]拆分单元格内容1

EXCEL 常用函数应用实例:[4]拆分单元格内容1

EXCEL 常用函数应用实例:[4]拆分单元格内容1

4、提取市,完整函数如下:

=MID(B2,LEN(C2&D2)+1,FIND("市",B2,1)-LEN(C2&D2))

提取市也较为简单,找出市的位置,然后减去前面省的结果即可。

EXCEL 常用函数应用实例:[4]拆分单元格内容1

5、同样的方法提取县/区

=IFERROR(MID(B2,FIND("市",B2,1)+1,IFERROR(FIND("区",B2,FIND("市",B2,1))-FIND("市",B2,1),FIND("县",B2,FIND("市",B2,1))-FIND("市",B2,1))),"")

EXCEL 常用函数应用实例:[4]拆分单元格内容1

6、最后提取详细地址,就用减法。最后得到下面的结果。

EXCEL 常用函数应用实例:[4]拆分单元格内容1

EXCEL 常用函数应用实例:[4]拆分单元格内容1

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢