超高难度★excel提取县市区

来源:百度知道 编辑:UC知道 时间:2024/06/22 21:53:48
上海 上海市 闵行区 万源路399号复旦大学附属儿科医院 住院部
浙江省 舟山市 普陀区 东港海珠路418号
浙江省 杭州市 拱墅区 舟山东路
浙江省 杭州市 西湖区 古墩路铭雅苑45-1-408
香港特别行政区 新界 屯门青杨街12号鸿昌工业中心一期十楼A室
江苏省 苏州市 相城区 苏州市相城区元和镇 华路10号 医院门诊 耳鼻喉科
浙江省 湖州市 吴兴区 美欣家园38幢
贵州省 黔西南布依族苗族自治州 兴义市 体育场1号

A列为以上数据,要求在B列作一函数:当A列中地址为上海时提取区名,为外地时提取省名,如果没有省名则提取市名.
有没有这种函数,或者需要多个函数.
没有市名则提取区名,如香港那个.

真的好难,下面这个试试:

=IF(ISERROR(FIND("上海",A1)),IF(ISERR(FIND("省",A1)),MID(A1,1,FIND("区",A1)),MID(A1,1,FIND("省",A1))),MID(A1,FIND("上海市 ",A1)+4,FIND("区 ",A1)-FIND("市 ",A1)-1))

还可以搞得更完善,即将MID(A1,1,FIND("区",A1))也做一个判断以容纳既不是上海,又没有省,又不是自治区或特别行政区的情况——你提的问题里没有直辖市

注意,由于原文有空格,公式中有的地方也用到了空格,不知道复制过程中会不会出差错,如果有个别取舍出现位置不对,请检查一下空格或者干脆加减一个数字进行调整

后边的做不到,因为excel是老外弄出来的,它是不知道浙江省就是杭州市的
除非你自己手工把所有的省份输入和市也输入
然后用VLOOKUP()查找

=if(FIND("上海",A1),……,find("省",A1)……)