繁体   English   中英

VBA Excel - 刷新数据透视表/Power Query

[英]VBA Excel - Refresh Pivot Table/Power Query

我正在尝试刷新 Power Query,然后刷新数据透视表(运行该数据),当我使用 F8 单步执行代码时我可以让它工作,但在运行宏时它不会工作

有任何想法吗?

谢谢!!

Sub Test()

Dim WB As Workbook
Dim pt As PivotTable
Set WB = ThisWorkbook
Set pt = ActiveSheet.PivotTables("PivotTable1")

'Refresh Power Queries & Pivot Tables
ThisWorkbook.RefreshAll
WB.Worksheets("By Customer Pivot").Activate
pt.RefreshTable


End Sub

这是刷新所有 Power Queries 的方法。

Sub RefreshAllPQ_Queries()

    Dim Connection As WorkbookConnection
    Dim lTest As Long

    On Error Resume Next

    For Each cn In ThisWorkbook.Connections

        lTest = InStr(1, cn.OLEDBConnection.Connection, _
                "Provider=Microsoft.Mashup.OleDb.1")

        If Err.Number <> 0 Then

            Err.Clear

            Exit For

        End If

    If lTest > 0 Then cn.Refresh

    Next cn


End Sub

这就是刷新数据透视表的方法。

Sub RefreshPivotTable()


    Dim wb As Workbook
    Dim ws As Worksheet
    Dim strWS As String
    Dim strPT As String

    strWS = "Invoice"
    strPT = "pt_Invoice"
    Set wb = ThisWorkbook
    Set ws = wb.Worksheets(strWS)

    ws.PivotTables(strPT).PivotCache.Refresh

    Set ws = Nothing
    Set wb = Nothing
    strWS = vbNullString
    strPT = vbNullString

End Sub

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM