表中的Excel OFFSET和IFERROR
我在excel中有两列[RunningTotal]和[Change]。
我有这样的公式[RunningTotal]
=IFERROR(OFFSET([@RunningTotal];-1;0);100)+[@Change]
它有一个两列的表格,一个用于运行总量,另一个用于改变。 IFERROR是第一行,因为它之前没有行,所以不能被偏移。
我的表看起来像这样。
3 , #VALUE! 4 , 104 2 , 106 5 , 111 etc...
第一行抛出一个错误,第二行引用第一行产生一个错误,但后来的值为100 + change
。 我做错了什么?
实际上,您正在访问表格数据主体顶部以上的单元格。 它是标题string值(例如RunningTotal ),您将收到#VALUE! 当您尝试使用数字string与@Change号码时出现错误。
但是,一个string的SUM是零,所以可以检查。
=IF(SUM(OFFSET([@RunningTotal], -1, -1, 1, 2)), OFFSET([@RunningTotal], -1, 0), 100)+[@Change]
该公式将检查被检查的行将SUM归零为@Change和@RunningTotal。
在重新读取原来的公式之后,如果您将+[@Change]
带入错误评估中,您也可以使用原始公式。
=IFERROR(OFFSET([@RunningTotal], -1, 0)+[@Change], 100+[@Change])