PHP编程在线学习平台, 提供PHP教程、PHP入门教程、PHP视频教程及源码下载

网站首页 > 文章精选 正文

关于身份证(>15位数字的计算方法)

xinche 2024-12-04 14:35:20 文章精选 4 ℃ 0 评论


身份证在Excel中能讲很多案例,什么地区识别,生日提醒,计算年龄,分辨男女等等,可能这方面做人事和行政的小伙伴用得比较多,不过凡事都可以举一反三,假如不是身份证号,而是一长串文本数字呢?

今天收到一个童鞋的求助,需要将表格中第二次出现的身份证号提取出来放到一张单独的工作表之中。

解题思路立马上头:
1、计数
2、排序
3、筛选

案例数据:(由于身份证号比较特殊,而且数据量太大,特手动胡编了10个数据)

说到计数,而且这个明显是按照顺序往下排序,所以首选的函数就是Countif,带条件的计数了。输入公式看看:

=COUNTIF($A$2:A2,A2)

这个公式需要注意的是第一个单元格一定要用绝对引用的方式,对绝对引用和相对引用不熟悉的小伙伴可以借这个题好好的理解一下。

但是很奇怪,公式没有问题,结果却有误!

这是因为对于SUMIF,COUNTIF这种函数,在Excel中只能识别前15位,而后面的数字就不管了,因此出现了上述的问题。

解决方法:

利用统配符*来帮忙,将公式进行修改:

公式为:

=COUNTIF($A$2:A2,A2&"*")

利用数据透视表验证一下结果:

最后既然是将第二次出现的身份证号放在单独的工作表中,直接通过筛选的方式剪切粘贴就可以轻松实现了。

其实在这个之前,有位财务的小伙伴曾经问过我一个类似的问题,当时也是因为流水单号太长,导致在使用根据不同单号求和汇总的时候出了问题,下面也也一起回顾一下吧。

案例如下:

需要计算的结果:

很明显,有条件的求和是函数SUMIF.

根据刚才上面讲过的,直接用正常的sumif函数肯定不会得到正确的结果(下方图片中已经给出了结果),这里同样需要进行变通。

最终正确的公式为:

=SUMIF($A$2:$B$22,D2&"*",$B$2:$B$22)

大家以后碰到类似的问题,就知道问题在哪里和解决方法了。顺便提一句,对于身份证的查询,比如说运用VLOOKUP函数,就不用这么麻烦了,VLOOKUP是可以直接识别的。

如果你想学习更多的关于Excel的办公技巧,可以点击:Excel -从起步到起飞

感谢支持。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

请填写验证码
最近发表
标签列表
最新留言