快捷搜索:  汽车  科技

条件统计不重复数据个数(根据一个或多个条件统计非重复值的个数)

条件统计不重复数据个数(根据一个或多个条件统计非重复值的个数)(1)如下图所示,当不考虑条件,统计共有几家客户时,可以在F2单元格输入公式:=SUM(1/COUNTIFS($B$2:$B$11 $B$2:$B$11))公式解析:正确做法是在G2单元格输入以下公式:=SUM(IF($C$2:$C$11=F2 1/COUNTIFS($C$2:$C$11 F2 $B$2:$B$11 $B$2:$B$11) 0))该公式为数组公式,按Ctrl Shift Enter结束公式输入。

本文分享如何根据一个或多个条件统计非重复值的个数。

一、根据一个条件统计非重复值的个数

如下图所示,A1:D11为产品销售明细。要求在G2单元格统计购买产品“品B”的客户共有几家。

条件统计不重复数据个数(根据一个或多个条件统计非重复值的个数)(1)

由于“公司2”购买两次“品B”,因此不能直接使用COUNTIF/COUNTIFS函数,否则会重复统计。如下图所示,COUNTIFS函数统计的结果为“4”,正确的结果应该是“3”(即公司1、公司2、公司4)。COUNTIFS函数返回错误结果的原因是“公司2”被统计了2次。

条件统计不重复数据个数(根据一个或多个条件统计非重复值的个数)(2)

正确做法是在G2单元格输入以下公式:

=SUM(IF($C$2:$C$11=F2 1/COUNTIFS($C$2:$C$11 F2 $B$2:$B$11 $B$2:$B$11) 0))

该公式为数组公式,按Ctrl Shift Enter结束公式输入。

条件统计不重复数据个数(根据一个或多个条件统计非重复值的个数)(3)

公式解析:

(1)如下图所示,当不考虑条件,统计共有几家客户时,可以在F2单元格输入公式:=SUM(1/COUNTIFS($B$2:$B$11 $B$2:$B$11))

条件统计不重复数据个数(根据一个或多个条件统计非重复值的个数)(4)

COUNTIFS($B$2:$B$11 $B$2:$B$11)用于统计B2:B11每个单元格中的客户名称在B2:B11出现的次数,返回的结果为{3;3;3;3;3;2;2;1;3;1}。即B2单元格的“公司1”在B2:B11中出现的次数为3次;B3单元格的“公司2”在B2:B11中出现的次数为3次;……,B11单元格的“公司5”在B2:B11中出现的次数为1次。

SUM(1/COUNTIFS($B$2:$B$11 $B$2:$B$11))则可以统计非重复出现的客户数量。

(2)当考虑条件时,本例条件为购买“品B”的客户,可以在COUNTIFS函数中增加判断客户购买的是否为“品B”的条件。

COUNTIFS($C$2:$C$11 F2 $B$2:$B$11 $B$2:$B$11)返回的结果为{1;2;1;1;2;0;0;1;2;0}。即B2单元格的客户“公司1”购买产品“品B”的记录为1条;B3单元格的客户“公司2”购买产品“品B”的记录为2条;……,B11单元格的客户“公司5”购买产品“品B”的记录为0条。

(3)当COUNTIFS返回0时,1/COUNTIFS返回错误值#DIV/0!。因此使用IF函数,当COUNTIFS返回错误值即不满足统计条件时,返回值0。最后使用SUM函数将IF COUNTIFS返回的数值相加,就是满足条件的非重复之个数。

二、根据两个条件统计非重复值个数

如下图所示,要求统计11月份共有几家客户购买公司产品。

在H2单元格输入以下公式:

=SUM(IF(($A$2:$A$11>=F2)*($A$2:$A$11<=G2) 1/COUNTIFS($A$2:$A$11 ">="&F2 $A$2:$A$11 "<="&G2 $B$2:$B$11 $B$2:$B$11) 0))

按Ctrl Shift Enter结束公式输入。

条件统计不重复数据个数(根据一个或多个条件统计非重复值的个数)(5)

三、根据三个条件统计非重复值个数

如下图所示,要求统计11月份共有几家公司购买产品“品C”。

在I2单元格输入以下公式:

=SUM(IF(($A$2:$A$11>=F2)*($A$2:$A$11<=G2)*($C$2:$C$11=H2) 1/COUNTIFS($A$2:$A$11 ">="&F2

$A$2:$A$11 "<="&G2 $C$2:$C$11 H2 $B$2:$B$11 $B$2:$B$11) 0))

按Ctrl Shift Enter结束公式输入。

条件统计不重复数据个数(根据一个或多个条件统计非重复值的个数)(6)

总结:

从以上三种情形可以总结,根据条件统计非重复值个数的公式为:

=SUM(IF(条件判断1*条件判断2*条件判断3*... 1/COUNTIFS(条件区域1,条件1,条件区域2,条件2,条件区域3,条件3 … 计数区域,计数区域) 0))



猜您喜欢: