=(1 + A $ 2)* B2和=(1 + $ A $ 2)* B2之间的差异

时间:2016-12-11 11:36:43

标签: excel excel-formula

我必须弄清楚这两个公式是否会给出不同的结果,并解释原因。我已经对它们进行了测试,我认为结果是一样的,但我不知道为什么会这样。谁能给我一个解释?

1 个答案:

答案 0 :(得分:3)

如果您将单元格复制或移动到其他位置,它们会给出不同的结果。在第一个中,A(没有$前缀)是 relative 列,这意味着复制或移动单元格内容到不同的列会影响它。

由此,我的意思是将内容从(例如)X42移动到Y42将导致更改的公式(1+B$2)*C2。注意两个无前缀列都已增加。

在第二个中,$A绝对列,无论您将单元格内容复制/移动到何处,都不会更改。上一段中提到的相同移动/副本将导致公式(1+$A$2)*C2(带前缀的$A保持不变,未加前缀的B转到C)。

如果你想知道为什么就是这种情况,请看看乔尔·斯波尔斯基(Joel Spolsky)的精彩You suck at Excel(略微光彩但至少幽默,绝对有教育意义)。在观看了这段视频之后不久,我放弃了$A式的单元格寻址格式并使用了更明智的R1C1式寻址(请参阅大约8-1 / 2分钟,但请确保观看整个事情。)