Excel 单表单列、单表多列、多表单列数据的条件去重罗列


前言

日常工作中需要度娘很多知识点或者方法,但每次用了就忘,下次遇到就需要继续度娘,故在此记录能解决相关问题的文章并做简单的个人理解,以此达到加深印象,分享知识的目的。


一、应用场景

工作中有时需要将某些条件下的数据去重罗列出来,而需要去重罗列的区域可能是一列,也可能是多列,也可能是多个表的一列数据,也可能是多个表的多列数据,而使用手动去重的方式,需要每次都进行筛选,然后手动复制粘贴出来,再进行去重后合并,太过于繁琐,不够高效。
因此考虑使用公式来制作一个模板,根据不同的需求使用不同的模板,以此来实现快速去重的目的。
读者可自行创建相应数据来匹配公式的使用,依次理解和应用本文内容,使用数据如下:
1.单表去重罗列数据

在这里插入图片描述
2.多表去重罗列数据

在这里插入图片描述

二、核心内容

2.1.if()

if()函数是通过某些条件得到一个数组的常用的一种函数,博主在之前的一片博文中有大概讲了下个人的一些理解,它其实跟高数里学的矩阵很像,将矩阵的思维代入数组函数中就很好理解了。

链接:https://blog.csdn.net/xiao_chuai/article/details/121922944
在其中的“一、EXCEL 公式实现多个条件值匹配”,有介绍

2.2.countif()

众所周知,countif()是一个条件统计函数,返回区域内符合条件的值的个数的和,因此大多数使用形式都是例如countif(A1:A10,B1),也就是统计A1:A10这个区域里,等于B1的值的个数。
这是较为普遍的一个应用,那有没有一种可能:把值填入区域,把区域填入值,那会是什么效果呢?
我对于countif()的运算原理的推断是:将条件和区域都看成一个矩阵,然后按照先左后右,先上后下的顺序,将条件矩阵中的值一个个拎出来,去统计在区域矩阵中的个数,然后令其对应位置等于其统计的结果。既然是矩阵,那就可能存在条件矩阵大于区域矩阵的情况和条件矩阵小于区域矩阵的情况。
这里以两个数据为例:
在这里插入图片描述结论:由上图可见,countif()的运算原理,从结果出发,跟我的推断是一致的,即“若条件矩阵中的值存在于区域矩阵,则统计其数量并代替对应其对应位置,否则为0”,那么就会返回一个跟条件矩阵相同大小的结果矩阵。
注:
1.concat()合并矩阵内元素的原理是先左后右,先上后下,且要使用数组三键。
2.若条件是个区域,也就是条

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值