有没有办法为公式中命名范围内的单元格指定偏移量?

Is there any way to specify an offset for a cell in a named range within a formula?

假设我创建了这些命名范围:Apples = "A1:A3", Pears = "B1:B3"

然后将公式“=Apples + Pears”放入单元格 C3 与“=A3 + B3”相同

是否有某种方法可以在“=Apples + Pears”公式中指定偏移量,以便单元格 C3 引用“=A3 + B2”?

换句话说,如何指定 "Pears" 的偏移量,使其指向 B2 而不是 B3?

在此先感谢您的帮助!

编辑:我希望公式是相对的,这样如果我将它复制到单元格 C2,它就会引用“=A3 + B1”

OFFSET 函数 将实现从单元格 B3 向上移动一个单元格的技巧:

对于数字使用以下函数(例如数字 3):

=A3+OFFSET(INDIRECT(ADDRESS(MATCH(3,B:B,0),2)),-1,0)

对于字符串使用这个函数:

=A3&OFFSET(INDIRECT(ADDRESS(MATCH("Pears",B:B,0),2)),-1,0)

使用 INDEX function 指定范围内的单元格,命名或常规。

=index(apples, 3, 1) + index(pears, 2, 1)

您可以使用当前单元格的ROW() 函数获取一个索引,该索引在您复制公式时会自动更新。此公式进入C3,然后向上拖动时,它会自动调整梨的索引。

=INDEX(Apples,3,1)+INDEX(Pears,ROW(C3)-1,1)

请注意,如果您的真实数据不是从第 2 行开始,您需要从行函数中减去额外的数量以允许额外的行。