如何使用VBA刷新单元格?

0x9*_*x90 5 excel vba

我尝试了 Stack Overflow 中的各种解决方案(如何通过 VBA 刷新所有单元格让 Excel 从 VBA 内刷新工作表上的数据)来刷新 Excel VBA 中的单元格,但在 Excel 2010 中没有成功。

这些方法包括切换活动工作表的计算状态(ActiveSheet.EnableCalculation = False后跟ActiveSheet.EnableCalculation = True)以及使用Application.CalculateApplication.CalculateFull

不幸的是,没有一个奏效。有趣的是,通过右键单击手动刷新单元格效果很好。但是,尝试以编程方式刷新单元Sheets("Name_of_sheet").Range("D424").Refresh格会触发异常 438。

问题:

  1. 如何调整 VBA 脚本以使其在 Excel 2003、2007 和 2010 中工作?
  2. 如何以编程方式选择源文件来刷新数据?

编辑:

  • 我的主要目标是复制右键单击“工作表 3”中的单元格以刷新它的手动过程,特别是自动选择 .txt 文件作为源。
  • 我正在使用的 Excel 文件是十年前创建的。在 Excel 2010 中,通过右键单击并选择 .txt 文件来手动刷新单元格。我希望在 VBA 中自动执行此操作。

Ani*_*han 2

你可以尝试使用Application.Calculation

Application.Calculation = xlCalculationManual
Application.Calculation = xlCalculationAutomatic
Run Code Online (Sandbox Code Playgroud)