我不是一个程序员,我不能写代码来挽救我的生命!
但是,我有一个Excel表,用于计算为多个资源分配的时间。目前,我编写的公式无法直接找到相关行,因此,如果“可用性”行是而不是,则公式不能像我所希望的那样工作。
我目前使用的公式是:
=IF(A8=A9, IF( B8 = "Availability", IF(D8=D9,0, IF(D8<0, -D8+D9, D9-D8)), ""), "")我希望公式能够查找资源名称,并计算每个月“可用性”行和“容量”行之间的分配小时数。这个公式需要对每个资源名称执行此操作,而不是重复结果,因此每个资源名称只有一个值。

谢谢你抽出时间来阅读这篇文章,即使你不能帮忙。
发布于 2015-12-11 15:52:26
试试这个:
=IF(B2 = "Availability",INDEX(D:D,MATCH(A2 & "Capacity",A:A&B:B,0))-D2,"")问题是,容量并不总是直接处于可用状态。这是一个数组公式,必须由Ctrl-Shift-Enter确认.把它放在H2公式盒里。按Ctrl-Shift-Enter。那就抄下来。
一个注意事项:如果不是整个列引用;D:D : B:B和A:A,你把数据的实际绝对范围;$D$2:$D$300.
发布于 2015-12-11 15:57:32
SUMPRODUCT公式对此非常有用。我通常会命名范围,但为此目的,我包括了前1000行。这将为您提供第一个月的总时数,其中资源名称=名称1和类别是可用的,而不管每个月出现的顺序或次数.
=SUMPRODUCT(($A$2:$A$1000="Name 1")*($B$2:$B$1000="Availability")*($D$2:$D$1000))
你可以做同样的能力或者如果你需要一个不同的..。
=SUMPRODUCT(($A$2:$A$1000="Name 1")*($B$2:$B$1000="Availability")*($D$2:$D$1000))-
SUMPRODUCT(($A$2:$A$1000="Name 1")*($B$2:$B$1000="Capacity")*($D$2:$D$1000))https://stackoverflow.com/questions/34227125
复制相似问题