Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I have spreadsheets that have multiple pivots tables and am looking for a
way to dynamically reset the source range. I've tried the code below (and some variations) but always end up with 1 error or another. The other idea to minimize the maintenance is to run as many pivots as possible off of a master pivot (would probably help minimize File size etc also). Any suggestions on how to approach this would be appreciated. Thanks in advance. Sub UpdatePivot() Dim ObjPivot as Pivotable Dim sSource as String sSource = inputbox("Enter Pivot Source Range") For each objPivot in ActiveworkBook.Sheets("Pivot").PivotTables ' I've tried the 2 line below separately, not bot in the same sub set objPivot.Sourcedata = sSource Set ActiveworkBook.Sheets("Pivot").PivotTables(objPivo t.Name) = sSource Next End Sub Sincerely, Wayne Huxman |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
You could change your code so you can select the source range, instead
of typing it, then use that range to get the source address: '===================== Sub UpdatePivotSource() Dim ObjPivot As PivotTable Dim rngSource As Range Dim sSource As String Set rngSource = Application.InputBox("Select the Pivot Source Range", Type:=8) sSource = "'" & rngSource.Parent.Name & "'!" & rngSource.Address(ReferenceStyle:=xlR1C1) For Each ObjPivot In ActiveWorkbook.Sheets("Pivot").PivotTables ObjPivot.SourceData = sSource ObjPivot.PivotCache.Refresh Next End Sub '==================== To change the pivot cache, there's sample code he http://www.contextures.com/xlPivot11.html Wayne Huxman wrote: I have spreadsheets that have multiple pivots tables and am looking for a way to dynamically reset the source range. I've tried the code below (and some variations) but always end up with 1 error or another. The other idea to minimize the maintenance is to run as many pivots as possible off of a master pivot (would probably help minimize File size etc also). Any suggestions on how to approach this would be appreciated. Thanks in advance. Sub UpdatePivot() Dim ObjPivot as Pivotable Dim sSource as String sSource = inputbox("Enter Pivot Source Range") For each objPivot in ActiveworkBook.Sheets("Pivot").PivotTables ' I've tried the 2 line below separately, not bot in the same sub set objPivot.Sourcedata = sSource Set ActiveworkBook.Sheets("Pivot").PivotTables(objPivo t.Name) = sSource Next End Sub Sincerely, Wayne Huxman -- Debra Dalgleish Excel FAQ, Tips & Book List http://www.contextures.com/tiptech.html |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Dynamically update label axis *format* without VBA? (03 and 07) | Charts and Charting in Excel | |||
How do I set up formulas to update graphs dynamically | Charts and Charting in Excel | |||
I would like to build macro's to do pivots or part of pivots | Excel Programming | |||
Pivots using other pivots and dynamic query problem | Excel Programming | |||
Enter data into a cell and dynamically update another cell | Excel Programming |