运行时错误 5:无效过程 - 更改数据透视表源



我得到了"Run-time error '5': Invalid Procedure call or argument at the line below in blue: PT1.ChangePivotCache ThisWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:=PTSourceRngFcst, Version:=6)

这些是代码中列出的单元格的值:

    G24 = \hguwarps03WarrenDataFinanceMANAGEMENT_REPORTSReforecast 2019P06_19-Jun Reforecast
    G25 = fncl-analysis-data_May-29.xlsx
    G26 = L:FinanceMANAGEMENT_REPORTSReforecast 2019P06_19-Jun Reforecast[fncl-analysis-data_May-29.xlsx]fncl-analysis-data
Sub Update_Sources()
'
Dim wb As Workbook, wbFromFcst As Workbook, wbFromReFcst As Workbook
Dim wkshtSourceFcst As Worksheet, wkshtSourceReFcst As Worksheet
Dim fromPathFcst As String
Dim SourceNameFcst As String
Dim PTSourcePathFcst As String
Dim rng As Range
Dim StartPointFcst As Range
Dim PTSourceRngFcst As String
Dim PT1 As PivotTable

Set wb = ThisWorkbook

fromPathFcst = Sheets("CONTROLS").Range("G24")
SourceNameFcst = Sheets("CONTROLS").Range("G25")
PTSourcePathFcst = Sheets("CONTROLS").Range("G26")

Set wbFromFcst = Workbooks.Open(fromPathFcst & SourceNameFcst)
Set wkshtSourceFcst = wbFromFcst.Sheets("fncl-analysis-data")
Set StartPointFcst = wkshtSourceFcst.Range("A1")
Set rng = wkshtSourceFcst.Range(StartPointFcst, 
StartPointFcst.SpecialCells(xlLastCell))
PTSourceRngFcst = PTSourcePathFcst & "!" & 
rng.Address(ReferenceStyle:=xlR1C1)

Set PT1 = 
ThisWorkbook.Sheets("Pivots").PivotTables("Customer_Cat_LocnType")

PT1.ChangePivotCache 
ThisWorkbook.PivotCaches.Create(SourceType:=xlDatabase, 
SourceData:=PTSourceRngFcst, Version:=6)
'This is where I get the error



End Sub

尝试下面的代码来设置PivotCache,然后使用更新的PivotCache更新数据透视表

Dim PT1 As PivotTable
Dim PTCache As PivotCache '<-- define new Pivot-Cahce Object
' set the Range Address as String
PTSourceRngFcst = Rng.Address(False, False, xlA1, xlExternal)
' set the Pivot Cache
Set PTCache = ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:=PTSourceRngFcst)
' set The Pivot Table object
Set PT1 = ThisWorkbook.Sheets("Pivots").PivotTables("Customer_Cat_LocnType")
' refresh the Pivot Cache
PT1.ChangePivotCache PTCache
PT1.RefreshTable

最新更新