excel公式取决于不同列中的动态值
Posted
技术标签:
【中文标题】excel公式取决于不同列中的动态值【英文标题】:excel formula depending on dynamic values in different columns 【发布时间】:2014-10-16 17:44:30 【问题描述】:我正在尝试使用 SUM 和 SUMIF 创建一个 Excel 公式,但找不到方法。
我有第一列 (A),它是一项工作的总时间,然后是每一行每天花费在该任务上的时间(列 B、C、...)。
对于每一天(列 B、C、...),该公式将仅返回列 A 中与当天已完成的任务相关的那些值的总和(对于该特定列):总和一行中所有单元格的时间等于或大于分配任务的时间。
一个 12 小时任务的示例: A B C D E
12 4 6 2 0
使用公式:
A B C D E
12 4 6 2 0
0 0 0 12 0
其中 12 显示在 D 列中,因为 4 + 6 + 2 = 12(A 列)
第二个例子(3 个任务):
A B C D E
10 9 0 1 0
21 8 8 5 0
5 0 0 3 2
使用公式:
A B C D E
10 9 0 1 0
21 8 8 5 0
5 0 0 3 2
0 0 0 31 5
地点:
31(Day D) = 10(Task 1 当天完成) + 21(Task 2 当天也完成)
5(Day E) = 任务 3 当天完成
尝试了这个公式(针对第 B 天):
SUMIF(B1:B3,">=A1:A3",A1:A3)
(如果该行 p 中的单元格到 B 列(在本例中为 B)>= 比那些迭代的单元格,则将列 A 中的那些值相加。
那么对于C列,它会是,
SUMIF(C1:C3 + B1:B3,">=A1:A3",A1:A3)
上面的例子不起作用(第一个返回零,第二个是无效的公式), 有任何想法吗?
谢谢。
【问题讨论】:
D 列的公式是什么?另外,你用这些公式得到了什么结果? 谢谢。在最后一个示例中,第一个公式的结果为零(=SUMIF(B1:B3,">A1:A3",A1:A3)),第二个公式出现语法错误警报。我猜 D 列将是 SUMIF(D1:D3 + C1:C3 + B1:B3,">A1:A3",A1:A3),基本上如果一行中的所有单元格的值都比第一个单元格的值大行将第一个单元格的值添加到公式返回的结果中。 我对你试图用 + 符号做什么感到困惑? 将公式中的“,”替换为“;” 我想不通。我最接近的是这个,它不会做你想做的事,但它可能会让你走上正确的道路:(用于 D 列):IF(SUM(B1:D1)>=SUM(A1) ,SUM(A1),0)+IF(SUM(B2:D2)>=SUM(A2),SUM(A2),0)+IF(SUM(B3:D3)>=SUM(A3),SUM(A3 ),0). 【参考方案1】:用户 ServerS 给出的以下公式可以正常工作:
Col B:
=IF(SUM(B2)=A2,A2,0)+IF(SUM(B3)=A3,A3,0)+IF(SUM(B4)=A4,A4,0)+IF(SUM(B5)=A5,A5,0)
C 列:
=IF(SUM(B2:C2)=A2,A2,0)+IF(SUM(B3:C3)=A3,A3,0)+IF(SUM(B4:C4)=A4,A4,0)+IF(SUM(B5:C5)=A5,A5,0)
Col D
=IF(SUM(B2:D2)=A2,A2,0)+IF(SUM(B3:D3)=A3,A3,0)+IF(SUM(B4:D4)=A4,A4,0)+IF(SUM(B5:D5)=A5,A5,0)
但是有两个不便之处: 如果添加了新行,则需要对其进行调整并包含另一个 IF()。如果 IF 有一个通用的 SUM 会更好 尝试将公式传播到相邻单元格是不可能的,因为它会将公式的一部分(例如“=A2,A2,0”)更改为“=A3,A3,0”,这需要保持不变。
如果可能的话,如果有任何其他可以改进这一点的想法,我们将不胜感激。
【讨论】:
【参考方案2】:您可以避免将 IF 与 sumproduct 一起使用。此方法允许使用插入您想要的任何行。确保范围正确(例如 A2:A5,最后一行使用 5)。我会去的:
在 B 列中:
=SOMMEPROD(($A$2:$A$5)*($A$2:$A$5=(B2:B5)))
在 C 列中:
=SUMPRODUCT(($A$2:$A$5)*($A$2:$A$5=(B2:B5+C2:C5)))-B6
在D列
=SUMPRODUCT(($A$2:$A$5)*($A$2:$A$5=(B2:B5+C2:C5+D2:D5)))-C6-B6
在 E 列中
=SUMPRODUCT(($A$2:$A$5)*($A$2:$A$5=(B2:B5+C2:C5+D2:D5+E2:E5)))-D6-C6-B6
【讨论】:
以上是关于excel公式取决于不同列中的动态值的主要内容,如果未能解决你的问题,请参考以下文章