我在excel 2007中录制了一个宏,我在其中创建了一个数据透视表。当我试着 运行宏,我得到“无效的过程调用或参数”。
我查看调试窗口的“问题代码”是: -
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Data!R1C6:R15874C11", Version:=xlPivotTableVersion12).CreatePivotTable _
TableDestination:="Table!R1C1", TableName:="PivotTable7", _
DefaultVersion:=xlPivotTableVersion12
如何录制的宏不再有效? (我已经清除,删除并重新创建了目标表和所有种类)以及宏本身有什么问题?
答案 0 :(得分:1)
您是否尝试过破解代码以更具体地查看问题所在?
例如,
Dim pvc As PivotCache
Set pvc = ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Data!R1C6:R15874C11", _
Version:=xlPivotTableVersion12)
pvc.CreatePivotTable TableDestination:=Worksheets("Table").Range("A1"), _
TableName:="PivotTable7", DefaultVersion:=xlPivotTableVersion12
另外,也许试试
Worksheets("Table").Range("A1")
而不是
"Table!R1C1"
不确定这是否会有所不同......
您是否也检查过:
在您尝试创建此帐户的位置下方没有透视表?
第1行第6至11列的枢轴字段名称有合适的标题吗?
我知道你说你已经重新创建了工作表等,但总是值得检查一下,没有一个数据透视表浮动......试试:
Dim pvt As PivotTable
For Each pvt In Worksheets("Table").PivotTables
Debug.Print pvt.Name
Debug.Print pvt.TableRange2.Address
pvt.ClearTable
pvt.TableRange2.Clear
Next pvt
除此之外,恐怕我很难过。
编辑:
Sub ChangeSourceData()
Worksheets("Table").PivotTables("PivotTable7").SourceData = "Data!R1C1:R25C6"
End Sub
答案 1 :(得分:0)
确保您拥有:
名为Data
的工作表名为Table
的工作表没有名为PivotTable7的其他数据透视表