Excel拖拽公式异常求助:需Sheet2行逐增1而非跳4行
解决Excel隔行应用公式时引用行递增异常的问题
要实现每隔4行应用公式时,Sheet2的引用行每次仅递增1而非4,你可以通过ROW函数结合INDEX手动控制引用行号,替代默认的自动递增逻辑。
修正后的公式(推荐使用,非易失性)
假设第一个公式放在目标列的第2行(如B2单元格),使用以下公式:
=SUMPRODUCT('Sheet1'!C$2:C$25;TRANSPOSE(INDEX('Sheet2'!$E:$AB, 2 + INT((ROW()-2)/4), 0)))
公式逻辑说明
ROW():获取当前单元格的行号(ROW()-2)/4:计算当前行与起始行(第2行)的间隔,转换成每隔4行对应1次递增的系数INT():对系数取整,得到0、1、2……的序列2 + INT(...):生成Sheet2需要引用的行号(2、3、4……)INDEX('Sheet2'!$E:$AB, 行号, 0):精准引用Sheet2中$E:$AB区域的对应整行
另一种实现方式(易失性函数,慎用)
如果更习惯用文本拼接引用,可使用INDIRECT函数,但该函数属于易失性函数,大量使用会影响表格性能:
=SUMPRODUCT('Sheet1'!C$2:C$25;TRANSPOSE(INDIRECT("'Sheet2'!$E"&2+INT((ROW()-2)/4)&":$AB"&2+INT((ROW()-2)/4))))
使用方法
- 将上述任一公式输入到目标列的第一个位置(如B2)
- 选中该单元格,直接向下拖拽填充,公式会自动为每隔4行的单元格生成Sheet2的下一行引用,完全符合需求
内容的提问来源于stack exchange,提问作者xToshin
相关产品推荐
相关产品推荐

