我有一段代码可以插入数据透视表,当我在excel 2013上运行它时可以正常工作,但是当我在excel 2010中尝试相同时,它会抛出一个错误,指出“ Invalid Procedure Call”,我很困惑,不确定如何继续。这是代码。
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只是替换了对我有用:-)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句