Csharp/C#教程:生成Open XML Word文档后自动更新公式字段分享


生成Open XML Word文档后自动更新公式字段

我有一个使用OpenXML SDK生成Word文档的库,该库的一个function是生成最后一行包含公式的表(例如SUM(ABOVE) )。

Word具有内置的这些function,但在生成文档时,我必须假设Word未安装在计算机上。

问题是,如果我只生成表和公式字段,则在打开文档时不会自动更新,用户必须打开文档并手动为要计算的函数选择“更新字段”。

有没有办法在代码中执行此操作(无需手动计算function)?

不,这是设计的。 有关详细信息,请参阅打开,重新打印或打印文档时更新的字段 。

对于任何手动输入也是如此(例如,如果您在A1中有10个,在A2中有10个,在A3中插入=SUM(ABOVE) ,则您有20个。但是如果您将A1更改为15,则A3将不会自动更新除非并且直到你手动这样做)。

解决此问题的唯一方法是创建一个加载项(VSTO,VBA等)以在客户端计算机上接收Document_Open事件并运行一些代码来更新所有字段或在打开文档的服务器上创建Interop应用程序,呈现它带有一些代码,然后在进一步发送之前将其保存回来。

你看过这个, UpdateFieldsOnOpen类。 ( https://msdn.microsoft.com/en-us/library/cc861799 )它应该在第一次使用可以更新它的应用程序(例如Word)打开文档时强制更新所有字段。

我猜每个将其Dirty标志设置为true的字段都会得到更新,但不要引用我的内容;)

您可以设置值UpdateFieldsOnOpen ,打开文档Word时会询问您要刷新的内容。 有关更多详细信息,请参阅此文章: http : //www.samuraiprogrammer.com/blog/2010/08/09/OpenXMLHowToRefreshAFieldWhenTheDocumentIsOpened.aspx

上述就是C#学习教程:生成Open XML Word文档后自动更新公式字段分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/954965.html

(0)
上一篇 2021年11月20日
下一篇 2021年11月20日

精彩推荐