【发布时间】:2018-11-06 18:25:46
【问题描述】:
大家早上好!
我搜索了这个论坛,但没有找到 VBA 和数据透视表问题的答案。
我尝试做的很简单。我有一个包含两张工作表的工作簿,一张包含数据,另一张数据透视表基于第一张工作表中的数据。我想复制这两张表(这里没问题),然后将新数据透视表的数据源从旧数据表移动到新数据表。 当我运行下面的代码时,我得到一个错误 5。关于如何解决这个问题的任何想法? 非常感谢:)
Sub nouvelle_periode()
'Crée un nouveau planning vierge fonctionnel à partir des feuilles types
'Copie les tableau et analyse
ActiveWorkbook.Worksheets("Période type").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = "nouvelle-periode"
ActiveWorkbook.Worksheets("Analyse type").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = "nouvelle-analyse"
'Associer la bonne période comme référence pour les tableaux croisés
dynamiques de la feuille d'analyse
Dim wb As Workbook
Dim ws As Worksheet
Dim pt As PivotTable
Dim datarange As Range
donnees = Worksheets("nouvelle-periode").Range("F10:M500")
Worksheets("nouvelle-analyse").Activate
Set wb = ActiveWorkbook
Set ws = ActiveSheet
For Each pt In ws.PivotTables
pt.ChangePivotCache _
wb.PivotCaches.Create(SourceType:=xlDatabase, _
SourceData:=donnees)
Next pt
End Sub
【问题讨论】:
-
添加 set donnees=Worksheets("nouvelle-periode").Range("F10:M500") 现在它可以正常工作了
标签: vba excel pivot-table