VBA:更新后无法自动重新计算Excel公式 – 需要手动交互

在VBA中,我正在更新单元格中的公式(工作正常),但自动重新计算不起作用:

updated_formula = "=COUNT(Sheet1!A3:A" & nr_points & ")" Cells(x, y).Formula = updated_formula ActiveWorkbook.Save Cells(x, y).Calculate 

该公式只需计算另一个工作表中现有行的数量。 当我运行macros时,函数文本字段中的单元格的值是正确的,但在单元格本身中,我有"#NAME?" 我需要在函数中按ENTER来重新计算公式。

我期待太多的Excel? 还是我做错了什么?

编辑:情况的屏幕截图 – 这是我看到后运行macros。 (对黑色审查对不起,必须保持对客户公司的一致)

在这里输入图像描述

看完你的截图之后,就变得清晰了。

更改

Cells(x, y).Formula = updated_formula

Cells(x, y).FormulaLocal = updated_formula

您的代码在我的工作表上正常工作,并在macros运行后立即更新计算值。 请确保“ 计算选项 ”设置为“自动”:function区数据选项卡>计算选项>自动。

我知道这是一个很晚的post,但我有一个类似的问题,什么对我的工作是改变

 Cells(x, y).Calculate 

 Cells(x, y).Dirty