【问题标题】:Updating multiple pivot tables on another worksheet from another worksheet source从另一个工作表源更新另一个工作表上的多个数据透视表
【发布时间】:2014-03-29 09:24:24
【问题描述】:

我有一个位于另一个工作表而非工作簿中的计划,并且已根据该数据更新了数据透视表。

问题是......当我尝试使用下面的宏时,我得到一个

运行时错误“9”下标超出范围。

附: >>>“日程02-26”每天根据日期变化。

Sub Change_Pivot_Source()

Dim pt As PivotTable

For Each pt In ActiveWorkbook.Worksheets("Schedule 02-26").PivotTables
pt.ChangePivotCache ActiveWorkbook.PivotCaches.Create _
(SourceType:=xlDatabase, SourceData:="Schedule!$A$1:$AK$1200")

Next pt

End Sub

容易修复?

更新:“无法在中断模式下执行代码”???

我将宏代码放在“This Workbook”中

【问题讨论】:

    标签: vba excel runtime-error pivot-table


    【解决方案1】:
    'This might be helpful, starting out on your pivot table sheet
    
     Sub PivotUpdate()
    
     Dim PivotSheet as string
     Dim Data As Range
     Dim lrow As Long
     Dim PivotCount As Long
     Dim i As Long
    
     PivotSheet = activesheet.name
    
     sheets("schedule").select
    
     'get the last row where your data is
     lrow = sheets("schedule").Range("A1").End(xlDown).Row
    
     Set Data = sheets("schedule").Range("A1:AK" & lrow & "")
    
     Sheets(PivotSheet).Select
    
      PivotCount = Sheets(PivotSheet).PivotTables.Count
    
     For i = 1 To PivotCount
    
         Sheets(PivotSheet).PivotTables(i).ChangePivotCache ActiveWorkbook. _
         PivotCaches.Create(SourceType:=xlDatabase, SourceData:=Data, _
         Version:=xlPivotTableVersion12)
    
      'version12 is excel 2007
    
     Next i
    
     End Sub
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-22
      • 1970-01-01
      • 2018-03-11
      相关资源
      最近更新 更多