Excel不会自动计算公式,它是通过VBA插入的

我正在通过vba和.FormulaR1C1创build一个公式,但Excel似乎并没有意识到这是一个公式。 它显示公式栏中的正确公式以及单元格本身中的参考错误。

我尝试了一个简单的公式testing表

  .Cells(i, recalcCol).FormulaR1C1 = "=RC(-1)" 

单元格格式一般设置。 在之前或之后的任何点插入.NumberFormat = "general"不会改变行为。 这绝对不是一个文本单元格。

我可以通过双击或F2 Enter进入单元格,然后Enter ,Excel将删除错误并显示正确的结果。 但是为所有更改的单元做这件事是不可能的。

我也尝试重新计算表,但是没有改变。

任何提示?

Thx Kaz

正如在评论中提到的, =RC[-1]是正确的公式。

但是,要自己查看RC格式的公式,请执行以下操作:

  • select具有公式的单元格
  • 运行下面的代码
  • 检查即时窗口

 Option Explicit Public Sub TestMe() Debug.Print Selection.FormulaR1C1 Debug.Print Selection.Formula Debug.Print Selection.FormulaLocal End Sub 

关于德语到英语,而您正在使用.FormulaR1C1.Formula您不应该担心,Excel会照顾它。 只有通过.FormulaLocal传递公式作为string时,才应该担心。


这是从上面的Sub的立即窗口中的结果,使用一个简单的SUM()公式:

 =RC[-1]+SUM(5,5) =M10+SUM(5,5) =M10+SUMME(5;5)