让我们说,
Sheet1:A1 = x
Sheet2内容看起来像
x 3 3 4
y 0 2 1
是否有一个excel公式可以匹配Sheet1:A1和Sheet2:A1(基本上是值'x')并添加该行中的其他单元格(3,3,4)。结果(Sum = '10')应该在Sheet1更新:C4说。
我尝试过SUMIF,但由于限制只能处理匹配的数组大小,因此只显示了一列的内容。我知道这可以通过VBA实现,但只是想知道一个公式是否可用。
TIA!
答案 0 :(得分:1)
这个公式会做你想要的:
=SUM(SUMIF(Sheet2!A:A,A1,INDIRECT("Sheet2!" & {"B:B","C:C","D:D"})))
它将迭代遍历每个列上的单个SUMIF(),然后添加结果。
如果您想要更多列或不同的数组,请将数组中的地址更改为所需的列。
答案 1 :(得分:1)
尝试以下
=SUM(IF(Sheet2!A1:A99=A1,Sheet2!B1:D99,0))
请注意,这是一个数组公式,因此必须使用 Ctrl + Shift + Enter 输入。
此公式的作用是将{A}栏中Sheet2
的所有行转换为x
中的B:D
中的零,然后将剩余的内容相加。
同样,您可以使用
=SUMPRODUCT((Sheet2!A1:A99=A1)*Sheet2!B1:D99)
并且您不必将其作为数组公式输入。
答案 2 :(得分:0)
对于非易失性非数组公式,请尝试使用
=SUM(INDEX(Sheet2!B:D,MATCH(Sheet1!A1,Sheet2!A:A,0),))