Excel 数组中的SUMIFS和多个查找

Excel 数组中的SUMIFS和多个查找,excel,excel-2007,Excel,Excel 2007,我试图使用SUMPRODUCT公式来获得组织者使用的特定周(C-date)和房间(E-text)的总金额(O-number)(A-text) 这在一次查找一个组织者时效果很好 如何修改此公式以同时查找多个组织者?S2:S10中列出了组织者 我的想法如下: =SUMPRODUCT(--(A2:A3000=S2 OR S3 etc.);--(E2:E3000=R2);--(WEEKNUM(C2:C3000)=3);O2:O3000) 还有-使用更快的SUMIFS可以轻松、整洁地完成这项工作吗?您可

我试图使用SUMPRODUCT公式来获得组织者使用的特定周(C-date)和房间(E-text)的总金额(O-number)(A-text)

这在一次查找一个组织者时效果很好

如何修改此公式以同时查找多个组织者?S2:S10中列出了组织者

我的想法如下:

=SUMPRODUCT(--(A2:A3000=S2 OR S3 etc.);--(E2:E3000=R2);--(WEEKNUM(C2:C3000)=3);O2:O3000)

还有-使用更快的SUMIFS可以轻松、整洁地完成这项工作吗?

您可以像这样使用MATCH

=SUMPRODUCT(--ISNUMBER(匹配(A2:A3000;S2:S10;0));--(E2:E3000=R2);--(周数(C2:C3000+0)=3);O2:O3000)

对于SUMIFS,您需要一个周数的帮助器列

如果周数在Z列中,请尝试

=SUMPRODUCT(SUMIFS(O:O;A:A;S2:S10;E:E;R2;Z:Z;3))

假设S2:S10中没有重复,否则将重复计数。请注意,SUMPRODUCT只对SUMIFS创建的数组求和(由于S2:S10,数组中有九个值)——后者的功能很难实现,因此应该更快


顺便说一句,我不确定您的原始公式是否有效,因为WEEKNUM通常不接受范围…但它接受数组,因此我的版本中的+0…

非常有效。我在+0上的错误。您能解释一下为什么+0允许它被接受为数组吗?没问题-C2:C3000显然是一个范围,但当您对它执行某种计算时,可以使用函数或运算符将其转换为数组,例如年(C2:C3000)或我上面使用的C2:C3000+0。显然,您希望该操作保持值不变,因此添加0或乘以1即可。在Excel 2003 WEEKNUM中不接受数组或范围,但在更高版本中,它只接受数组,因此需要转换为数组(注意:如果范围包含任何文本,这可能会有问题,因为使用+0会给您一个#值!错误和公式将失败)
=SUMPRODUCT(--(A2:A3000=S2 OR S3 etc.);--(E2:E3000=R2);--(WEEKNUM(C2:C3000)=3);O2:O3000)