我有三个公式,相对相同,但每个公式都有不同的列。
=OFFSET('War Layouts'!$B$2,(ROW(B1)-1)*7,0)
=OFFSET('War Layouts'!$F$2,(ROW(F1)-1)*7,0)
=OFFSET('War Layouts'!$J$2,(ROW(J1)-1)*7,0)
公式完全按照我的意愿执行,但我想将它们复制到我的列中以重复功能。
当我向下复制它们时,行号会变为(B4(、(F4(、(J4(等。其他内容都不会增加,这就是我想要的。
当我向下复制公式时,我希望行值为(B2(、(F2(、(J2(,但我无法思考如何实现这一点。
编辑:为了获得更多信息,我提供了一个我正在使用的电子表格示例。
https://docs.google.com/spreadsheets/d/1Fxc4KcAYlh7vfg7UV0oestKdyuf0LrpvzJmyt0JbAzg/edit?usp=sharing
从本质上讲,我想提取"名称"字段,每周3次,每7行。因此,第1天是B列,第2天是F,第3天是J。
在"统计表"上,我有上面的公式。前3行是正确的,但接下来的三行有B4、F4、J4,而不是B2、F2、J2等。
这可以做你想做的事情,类似于WONDEDSTEVENJones所描述的。由于向下拖动通常会使方程中的行号增加1,因此使用INDIRECT
根据当前行号除以3来计算新的行号。唯一的诀窍是考虑你的起跑线。以下是三个新的公式来取代您现有的公式:
=OFFSET($B$2, ROW( INDIRECT("B" & INT((row()+2)/3))) *7 , 0)
=OFFSET($F$2, ROW( INDIRECT("F" & INT((row()+2)/3))) *7 , 0)
=OFFSET($J$2, ROW( INDIRECT("J" & INT((row()+2)/3))) *7 , 0)
如果你把它们放在第1行、第2行和第3行的任何位置(一个在另一个上面(,它们可以作为一组三个向下拖动。您可以通过只取一个部件=ROW( INDIRECT("B" & INT((row()+2)/3)))
并将其向下拖动来测试它。您会看到它每三行将行号增加一。
唯一的诀窍是正确地设定起始值。如果你不想把第一个公式放在第1行,你需要调整"+2〃;数量向下1,每向下移动一行。因此,+1如果从第2行开始,+0如果在第3行,-1如果在第4行,等等
如果这有帮助,或者你需要更多的解释,请告诉我。