【问题标题】:SUMIF with month criterion带有月份标准的 SUMIF
【发布时间】:2012-05-16 14:50:50
【问题描述】:

我有:

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

“日志”表中的 A 列包含日期。如果月份是一月,我只想对日志表的 M 列中的值求和。

当前表达式一直返回0,我做错了吗?

【问题讨论】:

    标签: excel date excel-formula


    【解决方案1】:

    在第二个参数中,标准必须与第一个参数中的每个单元格相关联。所以,给MONTH() 一个范围不会有任何好处,它只是不断比较 A xMONTH(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))}
      

    (数组公式输入时不使用文字 {},它们是使用 Shift-Enter 输入的,并且在 Excel 中只会出现在它们周围的 {}。)

    【讨论】:

    • 另外,如果您使用的是完整列,您可以像A2:A 这样表达范围。
    【解决方案2】:

    当问到这个 Q 时可能不交,但 SUMIFS 现在可用,并且通过接受多个条件,一个 (>) 可以设置为 12 月底,一个 (<) 可以设置为 2 月初- 因此选择没有辅助列且没有潜在缓慢数组公式的一月。这不会合并不同年份的一月(但可以设置为这样做)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-02-27
      • 1970-01-01
      • 2016-08-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多