Excel教程:一个复杂的序号生成问题,手把手教你!
作者:老菜鸟来源:部落窝教育发布时间:2022-05-17 14:01:44点击:2314
编按:
哈喽,大家好,今天来分享一个有点复杂的序号问题,即连贯的序号之中穿插了文字,你知道该如何写公式吗?赶紧来看一下吧!
原始数据如图所示:
领导要求在A列增加一列序号,要实现的效果是这样的:部门所在的行显示“序号”两个字,具体明细按顺序排号即可。
要得到正确的结果,有两个问题要考虑清楚:
① B列出现“部”字的时候,返回“序号”两个字,这个可以用IF函数来实现;
② B列没有“部”字的时候,要返回一个数字序号,并且不会因为中间出现的“序号”出现数字不连续的情况。
例如使用公式=IF(COUNTIF(B1,"*部")=1,"序号",ROW(A1)),可以解决第一个问题,但是第二个问题就没法避免。
结果,如图所示。
公式中的COUNTIF(B1,"*部")=1,是利用了COUNTIF函数支持通配符的特性,来判断B列对应的单元格是否有“部”字。
下面重点分析一下如何替换ROW(A1)这部分来解决序号不连续的问题。
用ROW(A1)得到的结果减去B列累计出现“部”字的个数,是不是就可以呢?赶紧动手试试。
B列累计出现“部”字的个数还是可以用COUNTIF函数加通配符来解决,公式为COUNTIF($B$1:B1,"*部"),得到的结果是这样的:
如果将这部分加到之前的公式里,完整的公式就是=IF(COUNTIF(B1,"*部")=1,"序号",ROW(A1)- COUNTIF($B$1:B1,"*部")),验证结果如图所示:
完全正确!
看着平平无奇的一个问题,不仅仅考察了函数的基本功,还需要我们厘清解决问题的思路。
怎么样,你学会了吗?
最后给大家留给思考题,假如每个部门都重新编号,又该怎么解决?
结果如图所示。
好啦,以上就是今天的所有内容,感谢你的观看。
本文配套的练习课件请加入QQ群:902294808下载。
做Excel高手,快速提升工作效率,部落窝教育《一周Excel直通车》视频和《Excel极速贯通班》直播课全心为你!
扫下方二维码关注公众号,可随时随地学习Excel:
相关推荐:
版权申明:
本文作者老菜鸟;同时部落窝教育享有专有使用权。若需转载请联系部落窝教育。