Excel - 拖动并重复公式模式系列

Excel - Drag and repeat formula pattern series

我正在尝试复制 excel 中的公式模式,但它没有按我预期的方式出现,但我正在寻找解决方案。

我定义了 table 中的前 2 行,它有 4 列

公式如下:

A1 =CONCATENATE(Scores!D11," (",Scores!F11,")")
B1 =Scores!AF11
C1 =Scores!AH11
D1 =Scores!AH15

A2 =CONCATENATE(Scores!D17," (",Scores!F17,")") 
B2 =Scores!AF17
C2 =Scores!AH17
D2 =Scores!AH21

我预计当我突出显示单元格并向下拖动时,它会通过将 6 添加到所有值来重复公式,如上所示。

有没有一种简单的方法可以自动填充我需要的行,因为我必须填充超过 80 行,将来可能会更多。

您可以对公式使用 Indirect() 来确定它们应该在哪一行之后。基于公式所在的当前行的逻辑:

A1中:

=Concatenate(Indirect("Scores!D" & (11 + (Row()-1)*6)), " (", Indirect("Scores!F" & (11 + (Row()-1)*6)), ")")

B1中:

=Indirect("Scores!AF" & (11 + (Row()-1)*6))

您可以在 B1 示例中更清楚地看到发生了什么。我们正在使用该公式 11 + (Row()-1)*6 动态确定数字 11。对于B1ROW()returns0,所以公式为11+(0-1)*611。 11 与 Scores!AF 连接,然后 Indirect() return 返回公式,这样它就可以从工作簿中查找 Scores!AF11 和 return 它的值。

当您将该公式向下复制到 B2ROW() return 和 2 时,公式将计算为 17,这是您的B1 价值 + 6.

这是几步、几步、几步来获得您需要的东西,但公式会很好地复制下来并节省您大量的输入。

如果您在 A1 中使用:

=CONCATENATE(INDEX(Scores!D:D,11+6*(ROWS(:1)-1))," (",INDEX(Scores!F:F,11+6*(ROWS(:1)-1)),")")

然后根据需要向下复制,这具有避免不稳定的间接设置的额外好处。

此致