“住址如果是以都道府县为开头的文本,现在需要把都道府县与下级地址数据分开”。
这种操作是拆分字符串的基础。从根本上来说,为避免后期进行这样的操作,应该在制作工作表时“就将都道府县放入单独的单元格中”。但是,如果在原工作表中已经是同时出现在一个单元格中的状态的话就必须要拆分单元格了。这时,我们需要掌握如何将都道府县的数据单独提取到其他单元格中。
想要解决这个问题,仅仅熟知 Excel 中的功能和函数是不够的,重点在于以独立思考出多种处理方法。
首先,我们来思考这一问题“日本的47个都道府县名是什么类型的数据呢?”大多为3个或4个文字吧。
其中,4个字的只有“和歌山县”、“神奈川县”、“鹿儿岛县”这3个县。四个字的县名,每个都搭着“县”字,剩余全部都是3个字。
明白这一点,就能按照以下逻辑,从住址单元格中提取出都道府县的数据了。
“如果住址单元格中的第4字为‘县’,只抽选左数4个字符;(第4字不是‘县’)否则,只抽选左数3个字符”。
以上逻辑若转换为 Excel 函数,就是下面的公式。
=IF(MID(A2,4,1)="县",LEFT(A2,4),LEFT(A2,3))
复制粘贴含有这一公式的单元格,就能做到提取所有单元格中的都道府县名。
在单元格 B2中输入=IF(MID(A2,4,1)="县",LEFT(A2,4),LEFT(A2,3)),一直复制到单元格 B12
“第4字符为‘县’”这一条件,就是”从地址单元格的4个字中只提取1个字符的结果即为‘县’”,可以使用 MID 函数实现这一点。根据这一逻辑的判定真伪结果不同,用 LEFT 函数改变提取的字符数,并用 IF 函数指定操作。