2015-11-03 85 views
0

我正尝试使用下面的代码创建使用VBA的数据透视表。如果我省略了最后一行(缺省版本行),它很好用,但不幸的是创建了数据透视表的旧/经典视图,而这对于我们的用户(谁想要更新/更新的数据透视表格式)不起作用。当我添加DefaultVersion:=xlPivotTableVersion14行时,出现“无效过程调用或参数”错误。从我所有的研究中,似乎都应该起作用,所以我不知道为什么它会给我这个错误。尝试将版本应用于数据透视表时出错

Set wksh_pivot = wkbk_to.Worksheets.Add 
    wkbk_to.PivotCaches.Add(SourceType:=xlDatabase, SourceData:=wksh_to.Range("A1").CurrentRegion).CreatePivotTable _ 
     TableDestination:=wksh_pivot.Range("A3"), TableName:="PivotTableName" _ 
     , DefaultVersion:=xlPivotTableVersion14 
+1

使用'PivotCaches.Create'不是'.Add',那么你可以指定缓存的版本。 – Rory

回答

1

更详细的版本比我的评论:

如果使用PivotCaches.Add,得到的缓存总是会有xlPivotTableVersion10一个.Version值,所以你不能再尝试,并创建一个新版本的数据透视表从中。

如果你使用PivotCaches.Create你可以指定你想要的版本(在没有其他信息的情况下它会默认为xlPivotTableVersion12我相信)。

+0

@ Rory - 谢谢!这工作完美。 – rryanp