2011-06-22 94 views
2

我想使用openxml sdk 2更新openxml Powerpoint文件中的各种图表。 我设法更新了提供图表和图表本身的Excel表格上的数据。但效率不高,因为我最终做了两次相同的事情(用相同的数据更新嵌入式Excel和图表对象),也因为图表对象的xml结构对于不同的图表类型是不同的,所以更多应该是不必要的代码和可能更多的错误。 我想知道是否有办法告诉Chart使用Excel中的新数据更新自己。 我也尝试使用图表的自动更新属性,但没有任何结果。这是一个后续问题。第一个是这一个:How to make a powerpoint chart reflect changes to its data source?如何使用openxml更新Powerpoint上的不同embebbed图表?

回答

1

据我所知,你正在寻找(令人沮丧,因为它)是不可能的。 我一直处于与word文档完全相同的位置,并最终为每种类型的图表做了一个方法,我知道我的代码会遇到。

我不相信有一个触发器让你在打开单词时强制更新。

但我很想被证明是错误的。

编辑澄清。 是的,您可以更新图表,只更新xml中的数据缓存而不是嵌入的部分,然而,您最终会得到一个word文档,如果您双击图表来浏览数据源,会得到比文档中显示的数据源更多的数据源。此外,关闭数据源(嵌入式Excel)时,图表将更新为嵌入值。

总之。除非你打算PDF文档或类似的东西,这是可以更新嵌入和XML图表。

+1

可以在不更新嵌入式Excel数据表的情况下更新图表数据。至少在VBA中。因此,如果您可以强制数据刷新,则可以将其绑定到“Open”事件并在文档中的ChartObjects上循环。由于每种图表类型都有不同的参数,因此这需要每种图表类型的方法(例如,条,线,散点图等)。但它是可行的。如果你很好奇,发布一个问题(这个问题有点陈旧),我会给你提供基础知识。 –

相关问题