Excel131 | 一个公式,从地址中取省级行政区

有位快递公司的朋友给我一根数据,让我帮忙取出省份。韩老师简化整理数据如下:

Excel131 | 一个公式,从地址中取省级行政区_第1张图片


取省级行政区,最大的问题是:

1、行政区名称长短不一;

2、34个省级行政区,有的叫**省、有的叫**区,有的叫**市。

所以,写公式的时候,一定要把上述情况概括进来。

韩老师给大家一个公式。

公式解析

公式:

在B2单元格输入公式:

=LEFT(A2,MIN(FIND({"省","市","区"},A2&"省市区")))

Excel131 | 一个公式,从地址中取省级行政区_第2张图片


公式详解

A2&"省市区":

把A2单元格内容加上“省市区”三个字,形成新的字符串。

本公式中,A2&"省市区"的结果是“浙江省绍兴市越城区省市区”;

FIND({"省","市","区"},A2&"省市区"):

在A2&"省市区"形成的字符串中分别找"省","市","区"三个字的首次出现的位置。

比如,在“浙江省绍兴市越城区省市区”中"省","市","区"三个字出现的位置是第3、6、9个字节,所以,本部分返回的结果是一组数{3,6,9};

MIN(FIND({"省","市","区"},A2&"省市区")):

在{3,6,9}中找最小值,即最早出现过的"省","市","区"的位置;

=LEFT(A2,MIN(FIND({"省","市","区"},A2&"省市区"))):

用LEFT函数,从A2单元格字符串的左边开始提取字符,提取字符的个数等于"省"或"市"或"区"最早出现的位置数字。

本公式中提取的个数是3,即“浙江省”。

补充解释

在B3单元格中的公式是

=LEFT(A3,MIN(FIND({"省","市","区"},A3&"省市区")))

在字符串“新疆维吾尔自治区乌鲁木齐市新市区”中最先出现的是字符“区”,所以自左边提取字符的个数是第一个“区”字出现的位置数字,恰是新疆维吾尔自治区。

你可能感兴趣的:(Excel131 | 一个公式,从地址中取省级行政区)