虚度光阴 发表于 2021-12-6 15:54:00

多工作表汇总,两种数组表达方式的计算结果不同

Excel 2007
有三个工作表,分别是Sheet2、Sheet3和Sheet4。
这三个工作表的的内容完全相同,都是:

需要对多工作表汇总,使用的公式是:
公式1:=SUMPRODUCT(SUMIF(INDIRECT("Sheet"&ROW($2:$4)&"!B:B"),Sheet2!B2,INDIRECT("Sheet"&ROW($2:$4)&"!C:C")))
计算结果为30
公式2:=SUMPRODUCT(SUMIF(INDIRECT("Sheet"&{2,3,4}&"!B:B"),Sheet2!B2,INDIRECT("Sheet"&{2,3,4}&"!C:C")))
计算结果为30
公式3: =SUMPRODUCT(SUMIF(INDIRECT("Sheet"&{2,3,4}&"!B:B"),Sheet2!B2,INDIRECT("Sheet"&ROW($2:$4)&"!C:C")))
计算结果为90
请问各位高人:
一:为何第三个公式算出来的结果为90?
二:若将公式1改成:=SUMPRODUCT(SUMIF(INDIRECT("Sheet"&ROW($2:$4)&"!B:B"),Sheet2!B2,INDIRECT("Sheet"&ROW($2:$3)&"!C:C")))
   计算结果则为10,为什么不是20呢?
谢谢!

陈蕾蕾 发表于 2022-1-2 06:33:07

你用的是 欧米嘎 表吗? 居然能做出
=SUMPRODUCT(SUMIF(INDIRECT("Sheet"&ROW($2:$4)&"!B:B"),Sheet2!B2,INDIRECT("Sheet"&ROW($2:$3)&"!C:C")))这个 ??

重拾信心 发表于 2022-1-11 12:51:19

猜测因为数组不太一样,row(2:4)实际生成的是{2;3;4}的一维纵向数组;而{2,3,4}是一维横向数组,如果你是高版本的excel,带数据自动溢出是很容易分辨出来的

雷灵阳君 发表于 2022-2-26 07:30:20

可以做出来。欧米嘎 表 是什么意思?
我把附件传上来了,麻烦帮我讲解下好吗?

灞柳飞雪 发表于 2022-3-1 17:49:35

类似={1,2}+{1,2}={1;2}+{1;2}与 ={1,2}+{1;2}的区别,用F9体验一下吧
页: [1]
查看完整版本: 多工作表汇总,两种数组表达方式的计算结果不同