我有一段代码可以插入一个数据透视表,当我在 excel 2013 上运行它时,它工作正常,但是当我在 excel 2010 中尝试相同的操作时,它会抛出一个错误,指出"无效的过程调用",我被难住了,不知道如何进行。这是代码。
Sub piviot()
Workbooks("TimeSheet_Aggregator.xlsm").Activate
Sheets("Splice-M").Activate
Set Data_sht = ThisWorkbook.Worksheets("Splice-M")
Set Pivot_sht = ThisWorkbook.Worksheets("Pivot")
PivotName = "PivotTable1"
Call PickedActualUsedRange
Set StartPoint = Data_sht.Range("A1")
Set DataRange = Selection
'DataRange.Interior.Color = vbGreen
NewRange = Data_sht.Name & "!" & _
DataRange.Address(ReferenceStyle:=xlR1C1)
If WorksheetFunction.CountBlank(DataRange.Rows(1)) > 0 Then
MsgBox "One of your data columns has a blank heading." & vbNewLine _
& "Please fix and re-run!.", vbCritical, "Column Heading Missing!"
Exit Sub
End If
Sheets("Pivot").Activate
Cells(1, 1).Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
NewRange, Version:=xlPivotTableVersion15).CreatePivotTable _
TableDestination:=Worksheets("Pivot").`enter code here`Range("A1") _
, TableName:=PivotName, DefaultVersion _
:=xlPivotTableVersion15**
好的.. 我想通了..希望这对其他有类似问题的其他人有所帮助。
我使用 Excel 2010 录制了一个宏,并在
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
NewRange, Version:=**xlPivotTableVersion15**).CreatePivotTable _
TableDestination:=Worksheets("Pivot").Range("A1") _
, TableName:=PivotName, DefaultVersion _
:=**xlPivotTableVersion15**
2013 年的 xlPivotTableVersion15 和 2010 年的 xlPivotTableVersion14,
S 只是更换为我做了:-)