上虞第一城市门户欢迎您!   手机上虞广播网

数据核对的那些坑!接下来给你看我的血泪史

来源:上虞门户网  2020-06-30 12:25

大家好,我是好好学习,天天向上,不想老掉坑的秋小 E。

日常工作中,小 E 经常需要对数据进行核对,并且也积累了一些核对数据的方法。

比如说条件格式、行内容差异、高级筛选和函数公式法等等。

可是,即使是一名老司机,也会偶尔栽倒坑里。

不信,接下来给你看我的血泪史。

01

第一坑之高级筛选

下图,上半部分是已经报名参加活动的人员清单,下部分是全部人员清单。

现在,小 E 想知道还有哪些人没有报名。

解决这个问题的方法有很多,如果使用高级筛选的话,方法如下:

在【数据】选项卡下选择【高级】,在弹出的对话框中,设置 A6:C16 为列表区域,A1:A4 为条件区域。

点击【确认】后,选中筛选出的结果,填充颜色,然后取消筛选。

这时,没有底色填充的,就是还没有报名的人员。

最后,结果如下:

可是奇怪,「刘文浩」没有报名,怎么也填充了底色?

哪一步操作错了?

在看答案之前,建议你先思考一分钟。

好吧,假装已经过去了一分钟。

此例中,结果出错的原因,是高级筛选条件区域,默认是模糊匹配的,只要是包含条件中的关键字,就会被筛选出来。

当高级筛选「刘文」的时候,「刘文」和「刘文浩」都会被筛选出来。

所以,这个例子,使用高级筛选并不合适,建议使用函数公式COUNTIF 来操作。

添加辅助列,在 D7 单元格输入公式:

=COUNTIF($A$2:$A$4,A7)

然后,向下填充,筛选结果为 0 的,就是还没有报名的人员。

02

第二坑之 COUNTIF

刚刚,我们用 COUNTIF 函数,填了一个高级筛选的坑,那么,COUNTIF 本身就没有坑了吗?

我们接下来就继续看。

上图中,是某公司员工的身份证号信息,想知道是否有重复录入。

如果选择使用 COUNTIF 函数,统计出现的次数,来判断是否重复的话,理论上也是可行的。

在 B2 单元格输入公式:

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

然后,向下填充,当结果为 2 的时候,即重复录入。

可是,怎么又错了?

上图中标黄的单元格,明明是两个不同的身份证号!

这是因为,Excel 只识别前15 位数字,当位数大于 15 的时候,后面的位数会默认为 0。

可是,这里的身份证号是文本格式,怎么也出错了?

这里只能说,Excel 聪明过头了,有时候会将文本型数字,当做数值来计算。

那么怎么解决呢?

只需要,让身份证号连接通配符「*」就可以强制告诉 Excel,我是文本,你不要转换我。

通配符只能对文本型数据进行统计,其他类型的数据,使用通配符无效。

「*」星号在 Excel 中是通配符,表示任意的数量字符。

比如说「刘*」,就表示任意刘开头的人员姓名。

(PS:COUNTIF 与 COUNTIFS、SUMIF、SUMIFS 都有这种问题,并且解决方法也和 COUNTIFS 一样)

以上,就是我曾经的血泪史,你中招了木有?

另外,再写这篇文章的时候,我还发现:

当使用【条件格式】中的【重复值】,来查找是否有重复的时候,对 15 位以上数字也是无效的。

写这篇文章的主要目的,不是告诉大家数据核对有哪些方法,而是希望,能避免大家掉坑。

或者,当出现错误的时候,知道错在哪里。

好了,今天的文章到这里就结束啦,我们下次见!

大家「在使用Excel过程中,都遇到过什么坑?」,快在留言区说出来吧!

Copyright 2012-2013 上虞第一城市门户网站 版权所有

郑重声明:网站资源摘自互联网,如有侵权,麻烦通知删除,谢谢!