Excel Sumproduct在单独的封闭工作表中创建子阵列

Excel Sumproduct在单独的封闭工作表中创建子阵列,excel,Excel,我有两张工作表;我需要将每天的“装运磅数”放入工作表2中,这是我从工作表1中获得的。该数字是每天发生的所有订单的所有装运英镑的总和。我用这个公式得到了正确的答案: =SUMIF(“[工作表一]”!$C:$C,A2,“[工作表一]”!$AA$AA) 但因为它是sumif而不是sumproduct,所以当工作表1关闭时它不会更新。 C列是日期,A2列是工作表2上的日期,AA列是装运的磅数 我曾尝试使用SUMPRODUCT(INDEX(SMALL(IF(ROW()-ROW(),ROWS()))公式)公

我有两张工作表;我需要将每天的“装运磅数”放入工作表2中,这是我从工作表1中获得的。该数字是每天发生的所有订单的所有装运英镑的总和。我用这个公式得到了正确的答案:

=SUMIF(“[工作表一]”!$C:$C,A2,“[工作表一]”!$AA$AA)

但因为它是sumif而不是sumproduct,所以当工作表1关闭时它不会更新。 C列是日期,A2列是工作表2上的日期,AA列是装运的磅数

我曾尝试使用SUMPRODUCT(INDEX(SMALL(IF(ROW()-ROW(),ROWS()))公式)公式,但要么无效,要么无法获得正确的格式


有什么想法吗?感谢要将
SUMIF
SUMIFS
转换为
SUMPRODUCT
公式,您必须在比较测试中使用
-()
。将TRUE转换为1,将FALSE转换为0

那么,根据你的公式

=SUMIF('[Worksheet One]'!$C:$C, A2, '[Worksheet One]'!$AA$AA)
我们会以

=SUMPRODUCT(--('[Worksheet One]'!$C:$C = A2), '[Worksheet One]'!$AA$AA)

另一个例子是SUMIFS

=SUMIFS('[Wrksht1]'!$AA$AA,'[Wrksht1]'!$C:$C, A2,'[Wrksht1]'!$Q:$Q, B2)
将成为

=SUMIFS('[Wrksht1]'!$AA$AA,--('[Wrksht1]'!$C:$C=A2),--('[Wrksht1]'!$Q:$Q=B2))

旁注,-用于将任何东西转换为数字,例如--“15”,因为它接受数字的双负数。第一次它也会尝试转换,所以得到-(“15”)=-(-15)=15。这类似于添加+0,因为它们都保持数字不变,但需要excel进行转换。出于某种原因,它给了我一个空值。请注意,比较将从2个参数(
“[Worksheet One]”!$C:$C,A2
)转换为1,将逗号替换为等号(
-([Worksheet One]”!$C:$C=A2)
)=SUMPRODUCT(-(“[Q SHIP LIST III.xlsx]Sheet1”!$C:$C=A2),“[Q SHIP LIST III.xlsx]Sheet1”!$AA:$AA)它是否与范围的长度有关?sumproducts是否必须定义长度?