【问题标题】:excel vba pivot table refresh errorexcel vba数据透视表刷新错误
【发布时间】:2015-02-07 00:10:04
【问题描述】:

早安,

我正在尝试刷新工作表上的表格,然后通过使用 VBA 刷新数据透视表

一切都运行良好,除了我尝试刷新到枢轴的部分,更具体地说是使用“pt.RefreshTable”代码

Sub Refresh()

MSG1 = MsgBox("Are you Connected to (local) Network?", vbYesNo, "?")
If MSG1 = vbYes Then

MsgBox "Refresh in Progress"
Workbooks("Sharepoint Dispute Management Dashboard").Worksheets("Dispute Data").Activate
ActiveSheet.Range("A4").Select
Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False

'====================='
'    Unlock Sheets    '
'====================='
Workbooks("Sharepoint Dispute Management Dashboard").Worksheets("Dash - 1").Activate
Workbooks("Sharepoint Dispute Management Dashboard").Worksheets("Dash - 1").Unprotect Password:="n"
'====================='
'      Initialize     '
'====================='
Dim pt As PivotTable
'====================='
' Refreshing Dash - 1 '
'====================='
Set pt = Workbooks("Sharepoint Dispute Management Dashboard").Worksheets("Dash - 1").PivotTables("Dash1-Resolved")


 pt.RefreshTable

'====================='
'      Lock Sheet     '
'====================='
 Workbooks("Sharepoint Dispute Management Dashboard").Worksheets("Dash - 1").Protect Password:="n", AllowUsingPivotTables:=True


Else
MsgBox "You can still use the dashboard but the numbers will not be updated" & vbNewLine & vbNewLine & vbNewLine & "To get the latest update, do the following:" & vbNewLine & vbNewLine & "1- Please connect to the local network or through VPN " & vbNewLine & "2- Click (REFRESH DATA)"

End If
End Sub

【问题讨论】:

  • 我收到“运行时错误 - 1004”。这与对象相关。但是我确实尝试初始化所有对象但没有用

标签: excel vba refresh pivot


【解决方案1】:

显然,我已锁定其他工作表,其中包含与我要刷新的工作表相关联的其他枢轴。 我所做的只是添加了一个代码来解锁我的工作簿中的所有工作表,刷新枢轴,然后再次锁定它们。像魅力一样工作。

希望这对以后遇到类似问题的人有用

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-30
    • 2021-04-12
    • 2015-09-25
    • 1970-01-01
    相关资源
    最近更新 更多