Excel:如何在基于多个列的单元格之间复制公式

问题描述

我用了一个公式 = SUM(A3:A16)* 0.7 + SUM(B3:B16)* 0.25 + SUM(C3:C16)* 0.05

当我将此公式拖到列上时,我希望下一个列是

= SUM(D3:D16)* 0.7 + SUM(E3:E16)* 0.25 + SUM(F3:F16)* 0.05

相反,它显示: = SUM(B3:B16)* 0.7 + SUM(C3:C16)* 0.25 + SUM(D3:D16)* 0.05

我该如何实现?

解决方法

一种选择是将SUMPRODUCTINDEX函数合并到一个数组公式中:

=SUMPRODUCT(INDEX($A$1:$ZZ$16,N(IF(1,ROW($A$1:$A$16))),COLUMN($A$1:$C$1)+3*(COLUMN()-1))))*{0.7;0.25;0.05})

根据需要调整范围$A$1:$ZZ$16

ctrl + shift + enter确认编辑后的数组公式

enter image description here

第12行包含您的公式。

,

由于范围是连续的,您也可以这样做:

=SUMPRODUCT(INDEX($A$3:$I$16,1,(COLUMN()-COLUMN($A:$A))*3+1):
INDEX($A$3:$I$16,ROWS($A$3:$I$16),(COLUMN()-COLUMN($A:$A))*3+3)*{0.7,0.25,0.05})

enter image description here