打开APP
userphoto
未登录

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

开通VIP
去重A列再求和【Excel中级用户不看后悔】

 去重A列再求



  1. 解法1:=SUM((MATCH(A1:A6,A1:A6,)=ROW(A1:A6))*A1:A6)

  2. 解法2=SUM((FREQUENCY(A1:A6,A1:A6)>0)*(A1:A7))

  3. 我们现在一起来学习解法1,大家要耐心地看下去,学一个东西要沉下心,你如果看到就怕,那以后你就永远都是怕,首先我们用match函数,由于match函数这个特点,如果重复出现就显示它第一次出现的位置,且第1参数用了区域A1:A6,数组用法,第2参数也是A1:A6,第3参数精确查找,用0,也可以这个0不写,但是0前面那个逗号一定要

    查找值是100,到区域A1:A6中找,显示位置1

    查找值是100,到区域A1:A6中找,显示位置1

    查找值是200,到区域A1:A6中找,显示位置3

    查找值是300,到区域A1:A6中找,显示位置4

    查找值是300,到区域A1:A6中找,显示位置4

    查找值是400,到区域A1:A6中找,显示位置6

    =MATCH(A1:A6,A1:A6,)这个是数组公式,因为第1参数用A1:A6是一个单元格区域引用,所以是数组公式,由于查找是6个值,所以返回的位置也是6个结果,把=MATCH(A1:A6,A1:A6,)抹黑,F9得到:{1;1;3;4;4;6},就是老师刚才上面的分析的结果,我们咬住这一点,如果第一次出现就显示它正常的位置,重复就显示它第1次出现的位置,因此我们把它和Row(A1:A6)对比,row(A1:A6)返回是{1;2;3;4;5;6},如果相等说明它是第一次出现,如果不相等,说明它是重复出现了,得到下面的公式=MATCH(A1:A6,A1:A6,)=ROW(A1:A6)

    把它个公式抹黑,F9得到{TRUE;FALSE;TRUE;TRUE;FALSE;TRUE},大家可以发现A1单元第1个100第1次出现显示True;A2单元格第2个100是显示False重复出现了;A3单元格是200,第1次出现显示True;A4单元格300,第1次出现,显示True;A5单元格300,重复出现了显示False;A6单元格400第一次出现,显示True。这样我们就得到第一次出现的显示True,重复出现的显示False,另在运算时True=1,False=0,1乘以任意数等于任意数本身,0乘以任意数等于0,公式=(MATCH(A1:A6,A1:A6,)=ROW(A1:A6))*(A1:A6),把这个公式抹黑,F9,得到{100;0;200;300;0;400},也就是说,重复显示0,第1次出现的得到它自己本身,最后我们在外面嵌套一个sum函数,得到公式=sum((MATCH(A1:A6,A1:A6,)=ROW(A1:A6))*(A1:A6)),最后得到结果100


  4. 接下来我们一起了学习解法2

    =SUM((FREQUENCY(A1:A6,A1:A6)>0)*(A1:A7))

    解法2我们先温习一下FREQUENCY几个知识要点,前面的分享里有,大家也可以看往期教程里,不过这里我再提一下它要注意的几点

    1. 第1点:它总共2个参数,第1参数,第2参数都可以是单元格引用和数组

    2. 第2点:在第1参数中统计小于等于第2参数的分隔点且还要大于前面那个分隔的个数

    3. 第1参数,第2参数只支持数值型数据,不支持文本和文本型的数字

    4. 第1参数中出现布尔值true,false,0不参入

    5. 统计出来的结果会第比2参数的分隔点会多一个,多出来这个是大于第2参数最大值的那个的个数

    6. 第2参数不排序,但是运算它是按升序排序顺序进行统计的

    7. 显示的结果还是按第2参数显示进行显示

    8. 如果第2参数有重复的分隔点出现,只显示第1次,重复出现的分隔点显示0

      大家可能会说,我的妈呢,怎么多要注意的,是的,你只要弄懂它的知认点,才能灵活运用,看懂别人写的公式

  5. 现在我们一起来学习第2种解法,由于A1:A6刚好是数值型数据,符合我们上面第3条,用公式FREQUENCY(A1:A6,A1:A6),把公式抹黑,F9,得到结果{2;0;1;2;0;1;0},现在老师来解释一下这个是怎么得来的

    第2参数有6个分隔点

    第1个分隔点100,根据上面第2点,统计单元格A1:A6小于等于分隔点100个的个数,结果是2

    第2个分隔点还是100,根据上面最后一点,如果分隔点重复出现就显示0

    第3个分隔点是200,大于100且小于等于200的个数只有1个,返回1

    第4个分隔点300,大于200且小于等于300的个数有2个,返回2

    第5个分隔点是300,重复出现的显示0

    第6个分隔点是400,大于300且小于等于400的个数是1个,返回1

    没有分隔点了,还会多出一个结果出来,根据我们上面的第5点:统计出来的结果会第比2参数的分隔点会多一个,多出来这个是大于第2参数最大值的那个的个数,第2参数最大值是400,大于400的个数没有,所以返回0,大家对照一下,是不是和这个结果吻合的{2;0;1;2;0;1;0},我们仔细观察,发现没有重复的大于0,等于0就是重复的,因此我们得到这个公式FREQUENCY(A1:A6,A1:A6)>0,用它再我们的单元格区域A1:A7相乘,为什么不是A1:A6,因为Frequency会多出现一个结果,多出的这个结果也是0, 因为大于最大没有

    所有不是A1:A6,是A1:A7,这里我们是为了容错得到公式=(FREQUENCY(A1:A6,A1:A6)>0)*(A1:A7)

    把公式=(FREQUENCY(A1:A6,A1:A6)>0)*(A1:A7)抹黑,F9,得到{100;0;200;300;0;400;0}这样第一次出现就留下了,重复出现就显示0,最后我们在外面嵌套一个sum函数,就得到我们想的结果了=SUM((FREQUENCY(A1:A6,A1:A6)>0)*(A1:A7))

    温馨提示:以上是数组公式,大家要测试要按三键,把光标点到编辑栏里,然后三键一齐下Ctrl Shift Enter




本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
【Excel教程】如何用函数统计不重复数据的个数?两种方法教你快速搞定
统计带空白单元格的区域中不重复值的个数
Excel 佛山小老鼠说Excel函数
Excel函数应用篇:逻辑函数的使用技巧
谈谈Excel SUM函数
45有哪些常用函数可以执行条件计数?
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服