SUMIF与月标准

时间:2012-05-08 05:49:29

标签: excel spreadsheet

这个问题似乎很受欢迎,但不知怎的,我无法做到。

我有这个

=SUMIF('Log'!A2:A139,MONTH('Log'!A2:A139)=1,'Log'!M2:M139)

“日志”表中的列号A包含日期,我只想将月份为1月份的日志表的M列中的值相加。

当前表达式继续返回0,我做错了吗?

谢谢,

2 个答案:

答案 0 :(得分:4)

在第二个参数中,标准必须与第一个参数中的每个单元格相关联。因此,给MONTH()一个范围在那里不会有任何好处,它只是将A x MONTH(A2)进行比较并获得FALSE。

有两种简单的解决方案:

  1. 使用MONTH(A2)创建一个临时列,例如N,然后使用那个列:

    =SUMIF('Log'!N2:N139,1,'Log'!M2:M139)
    
  2. 使用数组公式:

    {=SUM('Log'!M2:M139 * IF(MONTH('Log'!A2:A139)=1,1,0))}
    
  3. (数组公式不是用文字{}输入的,它们是使用Shift-Enter输入的,只是在Excel中显示{}周围。)

答案 1 :(得分:0)

当问到这个Q时也许不会交出,但是SUMIFS现在可用,并且通过接受多个条件,可以将一个(>)设置为12月底,一个(< )作为2月的开始-因此选择1月时没有帮助者列,也没有潜在的慢数组公式。这不会合并来自不同年份的Januaries(但可以设置成这样做)。