EXCEL: 查找符合多个条件,并且不重复的数据的个数的3种方法:公式,数据透视表,数组公式

1 目标问题:想筛选出(在a列月份为5)且不重复的b列数据有几个

有2个条件

  • 查找第1列月份为5月的
  • 并且第2列不重复的
  • 数据个数

方法1:用加辅助列+简单公式的办法

其实逻辑是更清晰的,就是显得步骤繁琐

  • 第1个辅助列1,查找日期中的月份,
  • 具体用month() 等解决
  • 第2个辅助列,查找B列不重复的数据,
  • 具体用=IF(COUNTIF(B$5:B5,B5)=1,1,0) 来解决,如果重复就标记为0,不重复则标准为1,
  • 这个技巧就是主义,让范围是逐步从前1个---变为前2个---变为前3个---等等
  • 记住: 不是从全列查询,这样重复的就1次都无法记了,而是需要锁住列的上限,逐渐扩大列的范围

 

方法2:辅助列+数据透视表(有的版本解决不了重复值的问题)

  • 仍然需要辅助列,月份
  • 汇总值一般默认都是求和,但是这里不能用求和
  • 需要调整汇总值,点击它会弹出菜单,选择计数而不是求和
  • 有的版本有唯一计数,有的版本,数据透视表无法去重

   

方法3 用数组公式来解决

我自己改良的函数

  • =SUMPRODUCT(1/(COUNTIF(B5:B18,B5:B18)*IF(VALUE(MID(A5:A18,6,1))=5,1,99999999)))
  • 用数组公式,这个必须是数组公式
  • 行列数的思想
  • 看待数组
  • 多个条件需要用乘法
  • 月份5的条件要设计为999999,为是为了1/999999 等于极小数约等于0

1 网上大多数答案,都是查找本列的不重复个数

比如这种公式

=SUMPRODUCT(1/COUNTIF(B5:B18,B5:B18))

2 而复杂情况,可能是需要根据其他列的查,比如本文要解决的问题

=SUMPRODUCT(1/COUNTIF(B5:B18,B5:B18))

这个只返回了B列里不重复的数据个数,确实是10个

=SUMPRODUCT(1/(COUNTIF(B5:B18,B5:B18)*IF(VALUE(MID(A5:A18,6,1))=5,1,99999999)))

这个返回了B列里不重复的数据个数 且 月份=5的,个数是5个

不能用这个错误写法

=SUMPRODUCT(1/(COUNTIF(B5:B18,B5:B18)*IF(VALUE(MID(A5:A18,6,1))=5,1,99999999)))

=SUMPRODUCT(1/(COUNTIF(B5:B18,B5:B18)*IF(VALUE(MID(A5:A18,6,1))=5,1,0))) 这样就会报错,因为1/0报错

下面是详细过程,有兴趣的可以看

 

 

 

 

 

3 EXCEL365的公式?

  • subtotal
  • SUMPRODUCT(1/(COUNTIFS(A2:A10000,O2:O10000)))
  • 我查了下我的非365版本里
  • subtotal (参数,范围)
  • 比如subtotal (1,范围) =average
  • 比如subtotal (2,范围)= count
  • 比如subtotal (9,范围) =sum
  • 暂时不知道有什么用处

### 回答1: 您可以使用以下公式来统计一列中不重复的值的数量: =SUM(1/COUNTIF(range,range)) 其中,range是您要统计的范围,例如A2:A100。请注意,此公式必须使用数组公式键入,即按下Ctrl + Shift + Enter。 ### 回答2: 要在Excel中使用多条件统计一列不重复个数公式,可以使用SUMPRODUCT和COUNTIF函数的结合。 假设我们有一个包含数据的列A,我们要统计满足条件的不重复个数条件可以是多个,例如满足某个数值范围或者满足特定文本。 首先,我们可以使用COUNTIF函数和条件来计算满足条件的总个数。例如,如果要统计满足条件">10"的个数,可以使用COUNTIF(A:A, ">10")。 然后,我们可以使用SUMPRODUCT函数来计算满足条件的不重复个数公式如下: =SUMPRODUCT(1/COUNTIF(A:A, A:A&"")) 这个公式使用COUNTIF函数来计算每个单元格的出现次数,然后使用1除以每个出现次数得到权重。最后,使用SUMPRODUCT函数将这些权重相加,得到不重复个数。 需要注意的是,这个公式中的A:A是指数据所在的列。如果数据在其他列,需要根据实际情况进行修改。 将这个公式输入到任意一个单元格中,就可以得到满足条件的不重复个数。 希望以上回答对您有帮助! ### 回答3: 要实现Excel中多条件统计一列不重复个数公式,可以使用IF和COUNTIF函数结合。以下是一个示例公式: =SUM(IF((条件1)*(条件2),1/COUNTIF(范围,条件3&条件4))) 其中,条件1和条件2是要满足的条件,可以是数值、文本或逻辑表达式。范围是要统计的数据所在的单元格区域,条件3和条件4是要筛选的条件。 此公式的原理是先使用COUNTIF(范围,条件3&条件4)函数统计满足条件3和条件4的数据在范围中出现的次数,然后使用1/计数结果得到每个符合条件数据的权重。最后将所有满足条件数据的权重相加,得到不重复个数。 请注意,该公式需要使用CTRL+SHIFT+ENTER键进行数组公式输入,以确保公式正确生效。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值