我有以下代码:
Dim newWorksheet As Worksheet
Set newWorksheet = ThisWorkbook.Sheets.add()
Set pivotCache = ThisWorkbook.PivotCaches.create(SourceType:=xlExternal, SourceData:=cnSet)
pivotCache.CreatePivotTable newWorksheet.Range("A1"), newWorksheet.Name
99%的时间工作得很好,但是今天客户发给我一个不起作用的文件版本,当我打开文件并尝试编译代码时,我得到了最后一行代码的以下问题:
找不到方法或数据
事实上,您甚至可以看到自动填充功能中缺少该属性:
好像它正在识别"工作表"将对象作为"图表":
奇怪,所以我隐瞒了" newWorksheet"转换到变体,编译,效果很好。现在我把它改回来,编译,然后...... 它可以工作,问题就消失了,代码运行得很好。很奇怪,你甚至可以在自动完成中看到它:
(现在它的对象类型"工作表")
我不明白将来会导致这种情况或如何防止这种情况,这个问题只发生在这个问题上。据我所知,用户没有做任何特别的事情。此问题已记录在案,但通常与other problems有关。我没有在每个文件的基础上看到任何明确的引用。
有没有人对这个有任何见解,这是其中之一"仅在VBA"问题类型?