适用于2016版本的代码仅选择工作表名称:
ActiveWorkbook.Worksheets("Summary").PivotTables("PivotTable8").PivotCache.Create(SourceType:=xlDatabase,
SourceData:= _
"Sheet1!R1C1:R29463CFI", Version:=xlPivotTableVersion15).CreatePivotTable TableDestination:="Sheet2!R3C1", TableName:="PivotTable1", DefaultVersion:=6
在下面的代码中,我想要取出sourcedata
的范围,具体取决于工作表的活动单元格。在Excel 2016中,即使选择了整个工作表,但在Excel 2013中,只有在提供活动单元格范围时,代码才会运行。
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Sheet1!R1C1:R29463C165", Version:=xlPivotTableVersion15).CreatePivotTable _
TableDestination:="Sheet2!R3C1", TableName:="PivotTable1", DefaultVersion _
:=xlPivotTableVersion15
答案 0 :(得分:0)
代码就是这样的。我的版本是14。
Sub test()
Dim Ws As Worksheet, toWs As Worksheet
Dim Wb As Workbook
Dim pv As PivotTable, pvCache As PivotCache
Set Wb = ThisWorkbook
Set Ws = Sheets(1)
Set toWs = Sheets(2)
Set pvCache = Wb.PivotCaches.Create(xlDatabase, Ws.Range("a1").CurrentRegion, xlPivotTableVersion14)
Set pv = pvCache.CreatePivotTable(TableDestination:=toWs.Range("f1"))
End Sub