如何创建一个公式,使其在删除行时不失效。
例如,在单元格F12中,我有公式:=F11+D12-E12
这基本上是说从上面的单元格取值,然后加上左边第二个单元格的值并减去左边直接的单元格的值。
但是,由于我正在使用实际的单元格地址,所以一旦我删除一行,所有下面的行都变成无效的。
如何通过相对位置表示公式(即=“上面1个”+“左侧2个”-“左侧1个”)。
谢谢。
您可以使用以下两种公式之一:
=OFFSET(F12,-1,0)+OFFSET(F12,0,-2)-OFFSET(F12,0,-1)
=INDIRECT("F11",true)+INDIRECT("D12",true)-INDIRECT("E12",true)
=INDIRECT("R11C6",false)+INDIRECT("R12C4",false)-INDIRECT("R12C5",false)
=INDIRECT("R[-1]",false)+INDIRECT("C[-2]",false)-INDIRECT("C[-1]",false)
这两种函数也允许指定范围,只需使用您个人偏好的任何一个(请参见Excel帮助)...
=OFFSET(F12;-1;0)
表示上方)=SUM(D$11:D12)-SUM(E$11:E12)
当您复制此单元格时,绝对引用保持不变,而相对引用会自动更新扩展范围。您甚至可以将公式复制到上一行并适用于第一行。
indirect
进行翻译:如果你的目标是offset(this,-1,0)
,你可以使用indirect("R[-1]",false)
,或者如果你真的需要offset
,那么我建议使用offset(indirect("RC",false),-1,0)
。 - mousiothis
语法生效?我在 Excel 中输入=OFFSET(this,-1,0)
,但它报错了。Offset 很好用,但当我不知道单元格地址时,我需要从单元格进行偏移。 - Ian Boydthis
替换为indirect("RC",false)
行不通吗?请参考我的先前评论... - mousio