在正式系统学习Excel之前,罂粟姐姐是有一些Excel基础的,每次遇到难题要么问同事要么百度,使尽洪荒之力依旧有很多问题解决不了,再后来就不了了之……
现在,再回头看,有很多问题其实很简单,只是当时太懒,不愿意去深入探究。
案例:
A列为全国各地区的编码,1-34分别代表全国23个省(包括台湾省)、5个自治区、4个直辖市、2个特别行政区。B列为三级分公司的编码,1-3分别代表一级分公司、二级分公司、三级分公司。
现需要设置各地区各级分公司唯一ID,ID=地区编码+分公司级别编码+同一地区同一分公司第几次出现。
2年前,能够实现的结果是这样的:
使用&连接符,输入公式=A2&B2&1
这样无法解决同一地区同一分公司第几次出现的问题,放弃!
1年前,能够实现的结果是这样的:
使用COUNTIF函数判断该级别分公司是第几次出现,公式=A2&B2&COUNTIF(B$1:B2,B2)
这样只能解决同一级别分公司第几次出现,不能解决同一地区同一解决分公司第几次出现。
例如C5单元格结果应该是211,C6单元格结果应该是212,是判断前两位数21第一次出现,21第二次出现,而不是中间的1第几次出现。
所以这个问题又搁置了。
现在,能够实现的结果是这样的:
使用SUMPRODUCT函数将地区与分公司级别合并考虑,是否是第一次出现,公式=A2&B2&SUMPRODUCT(1*(A2&B2=A$2:A2&B$2:B2))
SUMPRODUCT(1*(A2&B2=A$2:A2&B$2:B2)):
统计A$2:A2&B$2:B2这个区域中符合条件A2&B2的个数,SUMPRODUCT函数,各个参数必须为数值型数据,A2&B2=A$2:A2&B$2:B2判断的结果为逻辑值,所以需要乘1转换为数字。
完全是最开始计划想要得到的结果,利用一个函数完美的解决了困扰了2年的问题。
源文件:链接:http://pan.baidu.com/s/1jIkGF0U 密码:lxgp
2017年,罂粟姐姐将继续走在精进Excel的路上,您,是否愿意与我同行呢?一起加油!