我试图在excel中复制一个公式,但它并没有像我期望的那样出现,但我正在寻找一个解决方案 .
我在表中定义了前两行,它有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以及将来可能更多 .
2 回答
如果您在A1中使用:
=CONCATENATE(INDEX(Scores!D:D,11+6*(ROWS($1:1)-1))," (",INDEX(Scores!F:F,11+6*(ROWS($1:1)-1)),")")
然后根据需要复制,这具有避免易失性INDIRECT设置的额外好处 .
问候
您可以使用
Indirect()
来确定公式应该追踪的行 . 基于公式所在的当前行的逻辑:在
A1
:在
B1
:您可以在
B1
示例中更清楚地看到正在发生的事情 . 我们使用该公式11 + (Row()-1)*6
动态确定数字11
. 对于B1
,ROW()
返回0
,因此公式为11+(0-1)*6
或11
. 那个11与Scores!AF
连接,然后Indirect()
返回到公式,这样它就可以从工作簿中查找得分!AF11并返回它的值 .当您将该公式复制到
B2
时,ROW()
返回2
,然后公式计算出17
,这是您的B1
值6 .这是一些跳跃,跳过和跳跃,以获得你需要的东西,但公式将很好地复制下来,为您节省大量的打字 .