2016-08-16 70 views
0

單行比方說,Excel公式增加細胞中基於標準

Sheet1:A1 = x 

Sheet2的內容看起來像

x 3 3 4 
y 0 2 1 

是否有一個Excel公式,可以匹配工作表Sheet1:與Sheet2的A1: A1(基本上是值'x')並添加該行中的其他單元格(3,3​​,4)。結果(Sum = '10')應該在Sheet1中更新:C4可以說。

我試過SUMIF,但由於限制它只能處理可匹配的數組大小,所以只顯示一列的內容。我知道這可以通過VBA來實現,但只是想知道一個公式是否可用。

TIA!

回答

0

這個公式會做你想要什麼:

=SUM(SUMIF(Sheet2!A:A,A1,INDIRECT("Sheet2!" & {"B:B","C:C","D:D"}))) 

它會遍歷做個體SUMIF()上的每個,然後加入結果列。

如果您想要更多列或不同地址,請將數組中的地址更改爲所需的列。

enter image description here

+0

如果有比'Sheet2'列屈指可數這可能會變得醜陋。 –

+0

@AlexisOlson我同意,只是給出一個非數組答案。 –

0

嘗試使用以下

=SUM(IF(Sheet2!A1:A99=A1,Sheet2!B1:D99,0)) 

注意,這是一個數組式,所以它必須使用Ctrl鍵 + + 輸入輸入。

該公式的作用是將Sheet2上的所有行轉換爲列A中的xB:D中的零,然後對剩下的內容進行求和。

同樣,你可以使用

=SUMPRODUCT((Sheet2!A1:A99=A1)*Sheet2!B1:D99) 

,你就不必輸入它作爲數組公式。

-1

對於非揮發性,非數組公式,試試這個

=SUM(INDEX(Sheet2!B:D,MATCH(Sheet1!A1,Sheet2!A:A,0),))