如何在VBA中刷新透视表

如何在VBA中刷新透视表,vba,Vba,我尝试用以下脚本刷新VBA中的透视表 Sub Main Application.Workbooks.Open("D:\IT_Routines\PivotTables\SalesAnalysis_AU_TLO.xlsx",,,,"ACASales",,,,,,,,,,) Rem Application.Visible = True Rem Windows("SalesAnalysis_AU_TLO.xlsx").Activate Rem Application.ActiveWorkboo

我尝试用以下脚本刷新VBA中的透视表

Sub Main
Application.Workbooks.Open("D:\IT_Routines\PivotTables\SalesAnalysis_AU_TLO.xlsx",,,,"ACASales",,,,,,,,,,)
 Rem Application.Visible = True
  Rem Windows("SalesAnalysis_AU_TLO.xlsx").Activate
  Rem Application.ActiveWorkbook.Sheets("SalesAnalysis").Select
  Rem  Application.ActiveSheet.PivotTables("SalesAnalysis").PivotCache.Refresh
   Application.ActiveWorkbook.RefreshAll()
   Application.ActiveWorkbook.Save()
End Sub

当我在Automate 11中运行此命令时,将语法错误显示为[Main](步骤1)语法错误,函数调用中可能缺少必需的参数

请设置工作簿,以便您可以直接引用对象,而不是依赖于
ActiveWorkbook
。这还允许您将
块一起使用,从而使代码更清晰、更易于理解

Sub Main ()
Dim MyBook As Workbook
Set MyBook = Workbooks.Open("D:\IT_Routines\PivotTables\SalesAnalysis_AU_TLO.xlsx", Password:="ACASales")

'Application.ScreenUpdating = False
'Application.DisplayAlerts = False

With MyBook
    .RefreshAll
    .Save
End With

'Application.ScreenUpdating = True
'Application.DisplayAlerts = True
End Sub
我还建议在您完成此操作后关闭
屏幕更新
警报
,以帮助加快速度。代码就在这里,只是注释掉了,供您在完成后重新添加



如果要保存并关闭工作簿,请更改
。将
保存到
。关闭True

设置工作簿,以便直接引用对象,而不是依赖
活动工作簿
。这还允许您将
块一起使用,从而使代码更清晰、更易于理解

Sub Main ()
Dim MyBook As Workbook
Set MyBook = Workbooks.Open("D:\IT_Routines\PivotTables\SalesAnalysis_AU_TLO.xlsx", Password:="ACASales")

'Application.ScreenUpdating = False
'Application.DisplayAlerts = False

With MyBook
    .RefreshAll
    .Save
End With

'Application.ScreenUpdating = True
'Application.DisplayAlerts = True
End Sub
我还建议在您完成此操作后关闭
屏幕更新
警报
,以帮助加快速度。代码就在这里,只是注释掉了,供您在完成后重新添加



如果要保存并关闭工作簿,请更改
。将
保存到
。关闭True
我已解决此问题。VBA代码没有问题,“启用后台刷新”属性在我的excel文件中处于启用状态。若要解决此问题,请转到“数据”选项卡,单击“连接”组中的“连接”,单击每个连接并单击“属性”,取消选中“启用后台刷新”框。

我已解决此问题。VBA代码没有问题,“启用后台刷新”属性在我的excel文件中处于启用状态。若要解决此问题,请转到“数据”选项卡,单击“连接”组中的“连接”,单击每个连接,然后单击“属性”,取消选中“启用后台刷新”框。

ACASales是密码,对吗?ACASales是密码,正确吗?当我运行代码时,它显示无法获取工作簿类的open属性,错误代码-1004双重检查/三重检查您是否有正确的路径。当我运行代码时,请确保您有权访问书籍的存储位置(也可以使用桌面上的excel进行测试),代码显示无法获取工作簿类的open属性,错误代码-1004双重检查/三重检查您是否有正确的路径。确保您可以访问书籍的存储位置(也可以使用桌面上的excel进行测试)