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