Google Sheets如何设置拖动公式每次间隔3跳转引用单元格
Google Sheets 步长递增引用实现方案
你需要的固定引用列、拖动填充时行号每次递增3的效果,不需要复杂配置,两种方案都可以实现:
方案1:可拖动填充的单格公式(推荐日常使用)
在你要放置第一个引用值的单元格输入以下公式,之后直接向下拖动单元格右下角的填充柄,就会自动按顺序生成='TEMMUZ 2022'!O3、='TEMMUZ 2022'!O6、='TEMMUZ 2022'!O9……的引用:
=INDEX('TEMMUZ 2022'!O:O, 3 + (ROW(A1)-1)*3)
公式逻辑说明:
INDEX函数直接引用目标工作表的O列,按指定行号取值,属于非易失性函数,计算性能更好,表格结构调整时引用会自动同步- 初始行号设为3,每向下拖动1行,
ROW(A1)会自动依次变为ROW(A2)、ROW(A3),计算得到的行号就会按3、6、9……的步长递增 - 如果你是横向拖动填充,把公式里的
ROW(A1)替换为COLUMN(A1)即可;如果需要调整起始行、步长,直接修改公式里的两个数字参数:第一个3是起始行号,第二个3是每次递增的步长 - 如果你需要永久锁定O列,不受后续插列、列顺序调整影响,可以替换为INDIRECT版本:
=INDIRECT("'TEMMUZ 2022'!O"&3+(ROW(A1)-1)*3)
方案2:数组公式批量生成(无需手动拖动)
如果需要一次性生成整段序列的引用结果,不需要逐行拖动,可以用数组公式直接输出所有结果,在起始单元格输入以下公式即可:
=ARRAYFORMULA(INDEX('TEMMUZ 2022'!O:O, SEQUENCE(100,1,3,3)))
参数说明:
SEQUENCE(100,1,3,3)表示生成100行1列的数字序列,从3开始,每次递增3,正好对应你需要的3、6、9……行号序列- 外层
ARRAYFORMULA会批量计算所有行的引用值,自动向下填充100行结果,你可以把第一个参数100改成你需要的总行数 - 同样需要锁定固定O列的话,替换为INDIRECT版本即可:
=ARRAYFORMULA(INDIRECT("'TEMMUZ 2022'!O"&SEQUENCE(100,1,3,3)))
扩展场景适配
如果后续你需要实现行固定、列号每次递增3的引用(比如依次引用O3、R3、U3……),只需要把行号计算逻辑换成列号计算即可,示例公式:
=INDEX('TEMMUZ 2022'!3:3, 15 + (COLUMN(A1)-1)*3)
其中15是O列对应的列序号(A=1,O是第15列),横向拖动时就会按步长3跳转列号。
内容的提问来源于stack exchange,提问作者selimimre
相关产品推荐
相关产品推荐

