我有一个旧的膨胀的Excel工作簿,我试图删除。
在用table
链接到SQL数据库查询替换所有外部和计算内部数据源之后,每次执行Update All
时,Excel始终会抱怨“Cannot open PivotTable source file xxxxxx[yyyy]|zzzz”
我几乎查看了所有工作表,但未找到任何引用相关外部Excel文件的内容。 有没有办法找到哪个单元格,至少在哪个表单中,这个可转向的问题是什么? 德尔>
看起来不再引用缓存数据。 (见PS2) 无论如何在没有手动编辑XML的情况下清除这些缓存的条目?
感谢。
PS1: 我试过VBA方式检查ActiveWB.LinkSource(1) 它没有用,所有它给我的是我已经知道的单元格中引用的工作表。错误警报中提到的工作表未列出。
PS2: 我将文件保存到xlsx unpackd内部XML,一个简单的grep给了我
$ grep '20160229-9' -r .
./xl/pivotCache/_rels/pivotCacheDefinition1.xml.rels:
<Relationships xmlns="http://schemas.../relationships">
<Relationship Id="rId2" Type="http://schemas.../externalLinkPath" Target="OrderList20160229-9.xlsb" TargetMode="External"/>
<Relationship Id="rId1" Type="http://schemas...relationships/pivotCacheRecords" Target="pivotCacheRecords1.xml"/>
</Relationships>
但PivotTable1的数据源已经在同一张纸上并排替换为SQL查询管道表...
检查引用的pivotCacheRecords1.xml,我得到了源表的旧版本(基于新的基于sql查询的表具有不同的格式,我无法在excel中的任何位置找到这些数据中的项目。) 。它已不再有效。嗯,这是一个错误吗?
答案 0 :(得分:1)
删除不再存在的数据透视表中缺少的引用源。
xl\pivotCache\_rels\
&amp;检查xmls查找包含对相关外部源文件的引用的xml。使用DB链接表作为源时。
请考虑停用PivotTableOptions>Data>Save Source data with file
完成