【问题标题】:Excel SUMIF using text and date ranges defined by cell valueExcel SUMIF 使用由单元格值定义的文本和日期范围
【发布时间】:2014-07-05 13:51:42
【问题描述】:

我有什么:

  1. 我在一个名为“Ledger”和“Budget”的工作簿中有两个电子表格。
  2. “预算”使用“分类帐”上的 SUMIF 来查找“每周租金”总额。

“分类帐”电子表格:

“预算”电子表格:

我需要什么:

我需要 SUMIF 函数同时处理日期范围。例如在“预算”电子表格中,所需的 SUMIF 值(单元格 O8)应受“周开始”(单元格 B8)和“周末”(单元格 C8)的约束。目前,如屏幕截图所示,SUMIF 不应用日期范围标准。

我的代码:

对于单元格 O8:

=SUMIF(Ledger!M:M, "Weekly rent", Ledger!P:P)

我的问题:

如何使用“周开始”(单元格 B8)和“周末”(单元格 C8)包含日期条件?

【问题讨论】:

  • 如果您使用 Excel 2007 或更高版本,请使用SUMIFS,它可以使用多个条件。否则使用SUMPRODUCT。 SO上有很多这两个例子
  • @chrisneilsen - 谢谢。 Ì 根据您的建议找到了解决方案。答案概述如下。

标签: excel date excel-formula


【解决方案1】:

代码:

=SUMIFS(Ledger!P:P, Ledger!M:M, "=Weekly rent", Ledger!J:J, ">="&B8, Ledger!J:J, "<="&C8)

根据用户 chris neilsen 的建议,我使用 SUMIFS 函数来应用多个条件。

细分:

Ledger!P:P, = 包含要相加(相加)在一起的值的列。

Ledger!M:M, = 搜索“周租”迭代的列。

"=Weekly rent", = 条件 #1:单元格值等于“每周租金”。

Ledger!J:J, "&gt;="&amp;B8, = 条件 #2:日期的值(即 J 列中与 M 列相应单元格在同一行的单元格)的值大于或等于 B8 中的开始日期。

Ledger!J:J, "&gt;="&amp;C8, = 条件 #3:日期的值(即 J 列中与 M 列相应单元格位于同一行的单元格)的值小于或等于 C8 中的结束日期。

【讨论】:

    【解决方案2】:

    假设您在 Ledger 中的日期在 J 列中,从 J39 开始。试试这个:

    =SUMPRODUCT((Ledger!J:J>=Budget!B8)*(Ledger!J:J>=Budget!C8)*(Ledger!M:M="Weekly Rent")*(WeeklyRent))
    

    【讨论】:

    • 感谢您的宝贵时间,但我很难理解您的回答。小错字:见“Weekly”。该代码被应用于预算电子表格的单元格 O8。此外,您的代码中提到的“WeeklyRent”假定存在这样的名称。它没有。
    猜你喜欢
    • 1970-01-01
    • 2018-04-13
    • 1970-01-01
    • 2023-03-10
    • 1970-01-01
    • 2014-11-17
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    相关资源
    最近更新 更多