使用公式时,错误值excel错误

时间:2015-08-03 12:28:56

标签: excel excel-vba excel-formula excel-2010 excel-2007 vba

我想使用excel公式在下表中找到死黑猫的数量

Column B   Column C    Column D      Column E
(Animal)   (Color)      (DOB)      (DateOfDeath)
  Cat       Black     03/08/2010    03/08/2015
  Cat       White     03/08/2010
  Cat       Black     03/08/2010    03/08/2015
  Dog       White     03/08/2015    03/08/2015
  Dog       White     03/08/2015    03/08/2015
  Cow       Black     03/08/2015    
  Cat       Black     03/08/2015    
  Cat       White     03/08/2016    

我使用的公式是:

=AGGREGATE(2, 6, (B3:B10="Cat")*(C3:C10="Black")*(NOT(ISBLANK(E3:E10))))

出于某种原因,它不起作用,我不知道自己犯了什么错误。

4 个答案:

答案 0 :(得分:1)

由于参数(B3:B10 =" Cat")*(C3:C10 ="黑")*(NOT(ISBLANK(E3:E10)))相当于一个0和1的数组,你可以把它加起来。

{=SUM((B3:B10="Cat")*(C3:C10="Black")*(NOT(ISBLANK(E3:E10))))}

ctrl + shift + enter将SUM计算为数组公式(添加{}括号)

答案 1 :(得分:0)

您可以Total Number of Black Cats - Total No of Black Cats with empty DateofDeath

推导出来

=COUNTIFS(B2:B9,"Black",A2:A9,"Cat") - COUNTIFS(B2:B9,"Black",A2:A9,"Cat",D2:D9,"")

替代直接方法将是 =COUNTIFS(B:B,"Cat",C:C,"Black",E:E,"<>")

答案 2 :(得分:0)

我还没有使用Aggregate功能,看着它虽然看起来不一定适合你想要做的事情。我建议改用countifs函数。

            =COUNTIFS($B$2:$B$9,AnimalType,$C$2:$C$9,AnimalColor,$E$2:$E$9,">0")

此函数根据AnimalType,AnimalColor以及日期是否大于零来评估B,C和D列中的每个条件。我复制了数据集并输入了生成正确结果的公式。

答案 3 :(得分:0)

请记住,并非所有聚合函数都处理数组(只有函数编号14及以上处理数组)。

第二 - 你不能纠结于真实和愚蠢。您需要首先通过添加 - 在前面将它们转换为数字值。

如果您想使用数组进行此计算,我建议使用此

=SUMPRODUCT(--(B3:B10="Cat")*--(C3:C10="Black")*--(NOT(ISBLANK(E3:E10))))

否则按照上述海报的建议使用COUNTIFS。