【问题标题】:EXCEL Sum range based on row and column criteriaEXCEL 基于行和列条件的求和范围
【发布时间】:2021-03-15 15:21:15
【问题描述】:

鉴于下面的类别表:

...如何在日期标题为

例如,在单元格 B2 中,我想要一个与“Internet Bill”行相对应的值的运行总计,并且只需要今天 (3/15) 为 >= 列标题中日期的列。为了示例,我用红色突出显示了这些值。

这是我目前在 B2 中所拥有的:

=SUM(INDEX($F$2:$J$4,MATCH($A2,$E2,0),MATCH(TODAY(),$F$1:$J$1,1)))

但它只给了我“45 美元”,据我了解,这与小于 3/15 的最大日期值相关。我只是无法让 INDEX 公式返回由比较运算符过滤的 column_num 范围...

【问题讨论】:

    标签: excel excel-formula


    【解决方案1】:

    B2 G$1:J$1 需要日期格式,请将 J1 更改为您的实际范围。

    =SUM(OFFSET(F$1,MATCH(A2,E:E,)-1,,,COUNTIF(G$1:J$1,"<="&TODAY())))
    

    【讨论】:

    • 请注意,左边的表格并不总是与右边的表格对齐(在两个表格中,第 2 行并不总是“互联网账单”)。另外,我希望能够向两个表中添加新类别,并让 INDEX 函数适应新数据。
    • 非常感谢,这正是我所需要的!
    【解决方案2】:

    假设你有office 365,你可以使用下面的公式

    =IFERROR(SUM(FILTER(FILTER($B$3:$N$4,$A$3:$A$4=B7),$B$2:$N$2<=$A$1)),"Not Found")
    

    假设未找到数据,该公式还解释了错误

    假设您的数据表在另一个工作表(工作表 1)中,您可以使用下面的公式

    =IFERROR(SUM(FILTER(FILTER(Sheet1!$B$3:$N$4,Sheet1!$A$3:$A$4=B2),Sheet1!$B$2:$N$2<=$A$1)),"Not Found")
    

    【讨论】:

    • 你能告诉我如何修改你的公式,这样如果表格在不同的工作表上它就可以工作吗?
    • 我已经修改了答案,再次检查
    猜你喜欢
    • 1970-01-01
    • 2012-09-10
    • 2020-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多