PivotCaches.create与SourceData超过65535行

任何人都可以请解释为什么我不能使用PivotCaches.Create方法使用源数据超过65535行的范围?

我正在使用Excel 2013,也使用Version:= xlPivotTableVersion14(如果我没有弄错,它对应于xl 2010)。

我读了我可以使用名称范围来解决问题,但只是想知道为什么当前代码不工作的任何参考? 如果我只用less于65535行设置rng,相同的代码工作。

Set ws = Worksheets("mydata") Set rng = ws.Range("A1:C66000") 'Set rng = ws.Range("A1:C65000") THIS WORKS ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:=DataRange, Version:=xlPivotTableVersion14).CreatePivotTable _ TableDestination:=Worksheets("pvot").Range("A1"), TableName:="mypv", DefaultVersion:=xlPivotTableVersion14 

错误:错误13,types不匹配

我无法解释。 我怀疑它与遗留代码和CountLarge问题有关。 但我可以提供一个解决方法。

一切似乎如预期般运作,而不是

 SourceData:=Rng 

你会用

 SourceData:=Rng.Worksheet.Name & "!" & Rng.Address 

这个expression式实际上评估为string

 "mydata!$A$1:$C$65000" 

这是Excel 2013macros录制器在录制INSERT → Pivot Table命令时使用的内容