Excel2013 "Не удается открыть исходный файл сводной таблицы" во время "Обновить все"
У меня есть старая раздутая книга Excel, которую я пытаюсь урезать. После того, как я заменил весь внешний и вычисленный внутренний источник данных на table
связаны с запросами к базе данных SQL, каждый раз, когда я делаю Update All
Эксель всегда жалуются “Cannot open PivotTable source file xxxxxx[yyyy]|zzzz”
Я просмотрел почти все листы, но ничего не нашел, ссылаясь на рассматриваемый внешний файл Excel. Есть ли способ определить, в какой ячейке, по крайней мере, на каком листе находится этот поворотный элемент?
Похоже, на кешированные данные больше нет ссылок. (см. PS2) Есть ли способ очистить эти кэшированные записи без ручного редактирования XML?
Благодарю.
PS1: я попробовал способ VBA, проверяющий ActiveWB.LinkSource(1). Это не сработало, все, что мне дает, это рабочий лист, на который есть ссылка в ячейке, которую я уже знаю. Рабочий лист, упомянутый в предупреждении об ошибке, не указан.
PS2: я сохранил файл в xlsx, распаковал внутренние 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). Его больше не действует. Хм, это ошибка?
1 ответ
Чтобы избавиться от отсутствующего ссылочного источника в уже не существующей сводной таблице.
- Сохраните его как xlsx. Откройте с помощью 7z или любого другого менеджера архивов.
- Извлеките папку
xl\pivotCache\_rels\
& проверить, xmls ищет xml, содержащий ссылку на рассматриваемый внешний файл. - Удалите xml из менеджера архивов и сохраните полученный xlsx.
- Откройте xlsx в Excel и сохраните снова, Excel будет жаловаться на отсутствующие файлы и исправит файл.
При работе с БД связаны таблицы в качестве источника. Рассмотреть возможность PivotTableOptions>Data>Save Source data with file
Готово