在文章《多条件统计函数COUNTIFS》中,提到在MS office 2007的多条件统计函数countifs()的使用。但是,在MS office 2003中,只有countif()而没有countifs()函数!如果要用到多条件函数,应该怎么办呢?别急,我们可以用sumproduct()函数来做多条件统计,此函数用于在给定的几组数组中,将数组间对应的元素相乘,并返回乘积之和。 

语法:
  SUMPRODUCT(array1, [array2], [array3], ...)
  Array1 必需。其相应元素需要进行相乘并求和的第一个数组参数。
  Array2, array3,... 可选。2 到 255 个数组参数,其相应元素需要进行相乘并求和。
  注意:数组参数必须具有相同的维数,否则,函数 SUMPRODUCT 将返回错误值 #VALUE!。
     函数 SUMPRODUCT 将非数值型的数组元素作为 0 处理。 

  示例:用sumproduct函数做多条件统计示例文档下载
  某公司有三个销售张三,李四,王五,销售手机,电脑,相机三种产品,下表记录为不同月每个销售负责的产品,现需要计算一到四月份,每个销售员销售不同产品的次数,销售张三,李四,王五,分别负责销售手机,电脑,相机的次数,如下表: 

MS office 2003用sumproduct函数做多条件统计

  单元格F3为计算张三在一到四月份负面销售手机的次数(二个条件:张三、手机),公式为:=SUMPRODUCT(($B:$B=$E3)*($C:$C=F$2))。注意公式的写法,其中的$B:$B和$C:$C,选择统计整列,这样写,可以在后续添加每月的数据时,自动更新统计表格中的数据。添加$做单元格的绝对引用,可以直接拖动公式到F3:H5中的计算。 

  另外,openoffie calc同样可以用sumproduct()函数做统计,但公式的写法有点不一样,F3公式为:=SUMPRODUCT($B$1:$B$65536=$E3;$C$1:$C$65536=F$2)。我在实际使用中,就碰到表格数据比较多,添加的统计公式也多时,打开表格就比较费时。简单的解决方法,不统计所有行,例如大概有2000以内的数据行,那么F3公式为:=SUMPRODUCT($B$1:$B$2000=$E3;$C$1:$C$2000=F$2),原C$1:$C$65536是统计C列所有数据。 

openoffie calc用sumproduct函数做多条件统计



© 活着的博客 - 李权辉的个人博客:人,终究是生活在现实之中,是为了活着而生活.