这个Excel公式是做什么的?

有人可以用英文跆拳道说明这个公式在做什么? 我正在看别人的工作,不知道。

=SUM(OFFSET(INDIRECT((ADDRESS(ROW(),21)),0,0,1)CurrentActualPeriod)) 

与jeffreymb同意,您还可以使用Excel中的“评估公式”函数逐步执行嵌套函数(如果您有Excel 2007)。 这里是关于如何工作的文档和屏幕截图:

http://office.microsoft.com/en-us/excel-help/evaluate-a-nested-formula-one-step-at-a-time-HP010066254.aspx

对不起,没有数据我没有比你更好。 我build议把每一个function分解到他们自己的单元中,这样你就可以看到他们正在返回的东西。 这将允许你使自己某种调用堆栈,所以你可以看到发生了什么。

只要看着这个,我很确定它可以大大简化。 在我多年的Excel开发中,我不记得使用Address函数。 如果使用正确,偏移function非常强大且令人困惑。 🙂

我经常使用ADDRESSINDIRECT函数。

这个公式是否有效? 如果是的话,你使用的是哪个版本的Excel? 我不能让它在Excel 2003中工作。

对我来说, ADDRESS函数的参数太less了,而那些错误的是…; 它应该是(类似) ADDRESS(ROW(),21,1,1,1)

CurrentActualPeriod可能指的是一个命名的范围,并且可能在它之前有一个逗号。

我不能做更多的事情。

假设这个公式出现在D4中,那么:

 = SUM( OFFSET( INDIRECT( ( ADDRESS( ROW(),21 ) ),0,0,1 ) CurrentActualPeriod ) ) ROW() = 4 ADDRESS(4,21) = $U$4 INDIRECT($U$4) = take contents of $U$4, use as address, and get that cell's value OFFSET(..., 0, 0, 1) = ? 

其余的似乎是一个语法错误,除非在CurrentActualPeriod之前缺less一个逗号。

双重间接肯定是混乱。 build立一个地址,从那里得到一个单元地址,使用它作为间接的另一个级别… Ouch