VBA to change Pivot Table Source Data Range

ExcelNoob222

Board Regular
Joined
Jun 17, 2020
Messages
77
Office Version
  1. 365
Platform
  1. Windows
Hi all,

I get the following error: "Run-Time error '438': Object doesnt support this property or method" with the below code. The code is setting the pivot table source data range.

VBA Code:
'   Changes pivot table ranges
    
    Dim sht As Worksheet
    Dim SrcData As String
    Dim pvtCache As PivotCache

'   Determine the data range you want to pivot
    Set sht = ThisWorkbook.Worksheets("Item List")
    LastRow = Worksheets("Item List").Range("J" & Rows.Count).End(xlUp).Row
    SrcData = sht.Name & "!" & Range("A3:BT" & LastRow).Address(ReferenceStyle:=xlR1C1)
  
'   Create New Pivot Cache from Source Data
    Set pvtCache = ActiveWorkbook.PivotCaches.Create( _
        SourceType:=xlDatabase, _
        SourceData:=SrcData)

'   Change which Pivot Cache the Pivot Table is referring to
    Worksheets("Hierarchy_Pivot").Select
    ActiveSheet.PivotTables("PivotTable1").ChangePivotCache (pvtCache)
 

Excel Facts

Workdays for a market open Mon, Wed, Friday?
Yes! Use "0101011" for the weekend argument in NETWORKDAYS.INTL or WORKDAY.INTL. The 7 digits start on Monday. 1 means it is a weekend.

Forum statistics

Threads
1,223,231
Messages
6,170,884
Members
452,364
Latest member
springate

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top