服从状态的特定日期的总和
Sum on a specific day obeying a status
我有一个应用以下格式的 table:
Date Value Situation
01/01/2015 0 Expected
01/01/2015 0 Paid - Cash
01/02/2015 0 Expected
01/06/2015 0 Paid - Credit card
当值变为真实值时,我通过下拉菜单更新状态。
而且我还有一个包含日期和值单元格的数据库。我在这里找到了一种对每天的值求和的方法(顺便说一句,thank you logan and chuff)。但是我很头疼要对遵守日期和状态的值求和。
在有表示日期和值的单元格的数据库中,我有以下公式:
{=SUM(IF(AND((DAY(IncomeJan[Date])=DAY(A1));IncomeJan[Status]<>"Expected");IncomeJan[Value];0))}
它 returns 值为 0。
我只需要对实际值求和。并且为了避免创建多个 IF 来指定付款方式,我只想对特定日期之后的值求和,并在状态中包含单词 'Paid'.
提前致谢!
如果将 sumproducts 用作数组 forumla,则可以基于多个 If 语句求和。
=sumproducts(IF(x1:x10=y,1,0),z1:z10)
所以如果IF不满足则z值按0计时,因此等于0,否则按1计算Z值;您可以添加额外的 IF。所以可以有一个日期的 If 和 "paid".
的 if
希望:
=SUMIFS(B:B,A:A,A2,C:C,"=*Paid*")
满足"I want to get all entries for a specific day that meet the status "已支付的要求并求和”。
适用于 Excel 2007 及更高版本,SUMIFS 语法为:
SUMIFS(sum_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)
sum_range,切换为第一个参数而不是 SUMIF 的最后一个参数,是 Value
列(此处假定为 ColumnB) , 一个标准范围 (criteria_range1) 是 Date
(因此假定为 ColumnA) 和 A2
(criteria1) 作为所需特定日期的示例(假设为 01/01/2015
= 部分原因是从问题中不清楚日期示例是美国风格还是英国风格,尽管可能是美国),一个额外的标准范围(可能还有更多)是 (criteria_range2) Situation
列(假定为 ColumnC)包含 Paid
。最后一个标准 (criteria2) 将 Paid
包裹在通配符 (*
) 中,以便在任何 [=15] 中可以找到 Paid
的地方触发=] 单元格,即使周围有其他文本。
根据示例,上面的公式 returns $150 因为那是唯一在 01/01/2015 显示为 Paid
的条目,但 return $350 是日期示例中的最后一个条目更改为 01/01/2015
。
Dates
不必是 date/time 索引(数字),但可以是字符串。
我有一个应用以下格式的 table:
Date Value Situation
01/01/2015 0 Expected
01/01/2015 0 Paid - Cash
01/02/2015 0 Expected
01/06/2015 0 Paid - Credit card
当值变为真实值时,我通过下拉菜单更新状态。
而且我还有一个包含日期和值单元格的数据库。我在这里找到了一种对每天的值求和的方法(顺便说一句,thank you logan and chuff)。但是我很头疼要对遵守日期和状态的值求和。
在有表示日期和值的单元格的数据库中,我有以下公式:
{=SUM(IF(AND((DAY(IncomeJan[Date])=DAY(A1));IncomeJan[Status]<>"Expected");IncomeJan[Value];0))}
它 returns 值为 0。
我只需要对实际值求和。并且为了避免创建多个 IF 来指定付款方式,我只想对特定日期之后的值求和,并在状态中包含单词 'Paid'.
提前致谢!
如果将 sumproducts 用作数组 forumla,则可以基于多个 If 语句求和。
=sumproducts(IF(x1:x10=y,1,0),z1:z10)
所以如果IF不满足则z值按0计时,因此等于0,否则按1计算Z值;您可以添加额外的 IF。所以可以有一个日期的 If 和 "paid".
的 if希望:
=SUMIFS(B:B,A:A,A2,C:C,"=*Paid*")
满足"I want to get all entries for a specific day that meet the status "已支付的要求并求和”。
适用于 Excel 2007 及更高版本,SUMIFS 语法为:
SUMIFS(sum_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)
sum_range,切换为第一个参数而不是 SUMIF 的最后一个参数,是 Value
列(此处假定为 ColumnB) , 一个标准范围 (criteria_range1) 是 Date
(因此假定为 ColumnA) 和 A2
(criteria1) 作为所需特定日期的示例(假设为 01/01/2015
= 部分原因是从问题中不清楚日期示例是美国风格还是英国风格,尽管可能是美国),一个额外的标准范围(可能还有更多)是 (criteria_range2) Situation
列(假定为 ColumnC)包含 Paid
。最后一个标准 (criteria2) 将 Paid
包裹在通配符 (*
) 中,以便在任何 [=15] 中可以找到 Paid
的地方触发=] 单元格,即使周围有其他文本。
根据示例,上面的公式 returns $150 因为那是唯一在 01/01/2015 显示为 Paid
的条目,但 return $350 是日期示例中的最后一个条目更改为 01/01/2015
。
Dates
不必是 date/time 索引(数字),但可以是字符串。