2017-03-06 30 views
0

我讀過所有關於更新鏈接到Excel數據製作PowerPoint幻燈片。我已經成功完成了這個任務 - 更新底層電子表格和編號緩存。 我假設我目前的問題非常相似 - 只有我無法找到緩存!也許有人可以指出我正確的方向。的OpenXML EmbeddedPackagePart和緩存

代替簡報圖表(其具有嵌入式封裝部件和多個高速緩衝存儲器),我只是有從嵌入Excel中複製的細胞和它們直接嵌入到滑動。 我可以更新基礎數據和往常一樣,如果我選擇「編輯」我的嵌入式細胞,我看到我更新的數據,當我回到我的簡報文檔 - 所有的數據都顯示正確。所以我想這是類似的問題,但我更新的緩存在哪裏?

當前使用PresentationDocument.SlideParts [0] .EmbeddedPackageParts [0]更新底層數據(實際上不使用索引0,但這是要點)。

感謝您的幫助

回答

1

我希望我沒有誤會你了,不過我相信你有類似以下內容:

Presentation with embedded Excel

,你想要什麼是更新的數據是此演示文稿在MS PowerPoint中打開時看到,是否正確?

不幸的是,問題是,這是不是有些緩存值(本身),這實際上是一個圖像。嘗試將您的PPTX文件解壓縮到一個文件夾中並檢查「\ ppt \ media」子文件夾,您應該能夠找到用於表示嵌入內容的圖像(可能是EMF格式)。
在我上面的例子來說,我有「\ PPT \媒體\ image1.emf」:

Screenshot of EMF image

所以你需要更新的圖像表示,不幸的是我不相信的OpenXML SDK會能夠幫助你。您必須搜索能夠將XLSX文件渲染或轉換爲圖像的工具/實用程序。

+0

啊確定。當我將它添加到Powerpoint演示文稿時,我有許多粘貼選項。我選擇嵌入,而不是我想象的那樣,然後我可以更新底層數據,它會顯示..... 那真是一種超級痛苦! 不確定我是如何解壓PPTX文件的?使用Open XML SDK工具,我可以看到一個名爲image18.emf的節點,我假設它是 - 但我無法看到該圖像使用該特定工具。 有更好的方式顯示那些我可以更新數據的單元格嗎? 謝謝 – user2047485

+0

首先關於解壓縮,請注意,所有Office Open XML格式(包括DOCX,XLSX,PPTX)基本上都是ZIP文件,您可以使用任何ZIP工具/程序/實用程序解壓縮它們。例如,嘗試將演示文件的擴展名從「.pptx」重命名爲「.zip」,然後右鍵單擊它並選擇「全部提取...」。其次對於更好的方法,我不知道如果這是你的好,但我會嘗試在演示文稿中重新創建一個表,我相信這是[ShapeTree](https://msdn.microsoft.com/en-us OOXML SDK中的/library/documentformat.openxml.presentation.shapetree(v = office.15).aspx)元素。 –

+0

換句話說,不是將XLSX文件嵌入到PPTX中,而是嘗試讀取XLSX文件並在PPTX中創建一個表格。這個任務應該可以通過使用OOXML SDK來實現。然而,取決於您的確切需求(您想要獲得準確的映射,例如它是值還是應該包括確切的樣式和格式等),這可能變成簡單或複雜的任務編碼。 –