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

wil*_*lvv 6 c# ms-word openxml formulas

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

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

问题是,如果我只是生成表格和公式字段,它将不会在打开文档时自动更新,用户必须打开文档并手动选择"更新字段"才能计算函数.

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

Tod*_*ain 6

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

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

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