我正在尝试使用宏来创建数据透视表。我已使用记录宏并按照步骤操作,但出现错误并且不太熟悉 VBA。它一直挂在下面的最后一行...不知道为什么...任何人都可以帮忙吗?
Sheets.Add.Name = "Inventory Summary"
Worksheets("Inventory Summary").Move _
after:=Worksheets("Info")
Sheets("Inventory").Select
Application.CutCopyMode = False
Application.CutCopyMode = False
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Table2", Version:=8).CreatePivotTable TableDestination:= _
"Inventory Summary!R2C1", TableName:="PivotTable1", DefaultVersion:=8
我已将这一步记录在宏中,效果很好。我将其添加到更大的宏(多个“步骤”)中。当我运行完整的宏时,我收到一个调试错误,它使我想到了上面提到的问题。但我看不出出了什么问题...
将创建数据透视缓存和数据透视表的两个命令分开(并使用一些变量)通常会更清晰:
Sub Tester()
Dim wb As Workbook, ws As Worksheet, pc As PivotCache, pt As PivotTable
Set wb = ThisWorkbook 'or eg ActiveWorkbook
Set ws = wb.Worksheets.Add(after:=wb.Worksheets("Info"))
ws.Name = "Inventory Summary"
Set pc = wb.PivotCaches.Create(SourceType:=xlDatabase, _
SourceData:="Table2", Version:=8)
Set pt = pc.CreatePivotTable(TableDestination:=ws.Range("A2"), _
TableName:="PivotTable1", DefaultVersion:=8)
End Sub
如果仍然不起作用,那么您需要准确地告诉我们您遇到的错误。