打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
excel提取不重复数据,简单才是硬道理

近日,在群里有人提出个问题,在众多重复项目中,提取日期最后的那行数据。如下图:

左侧AB列为原数据,右侧DE列为整理后的效果

A列数据涂黄色的为重复的项目,后面日期不重复,需要将重复项只保留日期最大的那条项目,其余均删除,得到右侧DE列的效果。没多想,直接上手数组函数搞定,但因公式较复杂,提问者看不懂,虽然得到了结果,但解答效果不圆满。其实,若将功能分解成判定重复和按日期提取两个方面,实现起来就简单得多。不用担心小白学不会,一起来看看:

提取不重复项目

方法1(辅助列函数法):上图中C列为辅助列,1代表对应A列的数据是第一次出现,空格代表非第一次出现。

C2单元格公式:=IF(SUMPRODUCT(($A$2:A2=A2)*1)=1,1,"")

这里需要注意的是:COUNTIF函数对应判定出现次数也很方便,但用在此处却不行。比如若D2单元格公式为:=IF(COUNTIF($A$2:A2,A2)=1,1,"")两者结果对比为:

原因为:COUNTIF函数只能辨别15位一下的数据,而表中A列数据超过15位,该函数只针对前15位进行判断,所以得出了上面的结果。

再根据C列结果,将C列为1的对应AB列数据重新提取填写到D列,公式为:

D2单元格:=IFERROR(INDEX($A$2:$A$1700,SMALL(IF($C$2:$C$1700=1,ROW($C$2:$C$1700)-1,4^9),ROW(A1))),"")

数组公式,SHIFT、CTRL、ENTER三键同时按生效。

方法2(高级筛选法):若AB列数据不会变,不考虑结果随原数据变化而自动变化的话,可用简单的高级筛选法。

选中A列所有项目复制,打开高级筛选对话框,按图设置后点击确定。

高级筛选提取不重复数据

这样,在I列得到不重复的A列数据。

提取最大日期项

有了不重复项目名称后,根据名称用MAX函数提取最大日期项。

E2单元格:=MAX(IF($A$2:$A$1700=D2,$B$2:$B$1700,0)*1)

数组公式,SHIFT、CTRL、ENTER三键同时按生效。

总结

能实现的方法应该还有很多,比如数据透视和VBA,都可以解决。但对于大多数人来说,关注点是哪个方法最简单,最好掌握,无所谓方法的多少。毕竟,工作不是竞赛,解决问题是最重要的,没人会关注方法优劣。记录本文,主要是为了提醒自己,简单才是硬道理,化繁为简才是真功夫。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
怎么用Excel筛选重复数据?
【Excel分享】找出两列不相同的数据
Excel常用电子表格公式大全(含案例、Excel源文件)
统计函数技巧-统计不重复值的数量
如何用excel统计调查问卷
Excel用函数公式提取唯一值
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服