我目前正在努力做到这一点,所以我可以加载一个单词的模板,并被提示填写数据,然后将填充word文档。该报告有两个主要部分。在视图中的第一个:
摘要将自动计算。
第二部分是附加数据的摘要:
答案 0 :(得分:4)
在Word中有几种报告生成方法,每种方法都有其优点和缺点:
<强> 1。使用VBA模块自动生成MS Word本身(或其他支持VBA的MS Office应用程序)中的报告: 在这种情况下,您需要在机器上安装MS Word,以便生成报告。您还必须允许在Word VBA模块中执行脚本。文档打开后,VBA可以开始执行,你可以做任何事情 - 比如连接到某些外部数据源,将这些数据填充到Word模板中。我一直在Word中使用书签作为数据的占位符。通过这种方式,您还可以填充表格 - 只需将书签放在第一个单元格中,跳转到此书签,然后以编程方式填充当前一个单元格的数据,然后以编程方式移动到相邻单元格,当您在最后一个单元格中时行将打开新行,并且您位于新行的第一个单元格中。 但是,在完成文档生成后,必须小心如何释放WINWORD进程。 Office 2013不再支持VBA,因此这可能不是最佳解决方案。
<强> 2。使用.NET中的Interop程序集以编程方式执行此操作:首先,MSDN上有一篇关于使用Word模板并以编程方式操作它的文章。你可以找到这篇文章here。同样,您将需要在运行代码的计算机上安装Word。您可以非常快速地获得结果,但请注意,它不是设计在服务器上运行的,因为您可能很快就会遇到性能问题和内存泄漏。
第3。使用OperXML SDK以编程方式处理来自托管.NET应用程序的Word文档:这使您可以完全自由地生成文档,但学习曲线很长而且很陡峭。根据您的业务领域的规模,您可以考虑投入时间学习这项技术。
<强> 4。使用一些第三方工具:
就我而言,我并不想使用OpenXML。我已经用如上所述的用于Word模板生成和报告自动化的SDK工具包替换了基于VBA的报告自动化。您可以查看this link以获取示例。到目前为止,这个工具包已经涵盖了我们所有的需求,所以我不再赘述了。大约3年前,我使用此工具包准备了我的第一个模板,他们顺利地从Office 2007迁移到2010年到2013年。现在我有一个大约90种不同Word模板的库,这些模板正由不同的应用程序使用,在后台使用此工具包。它类似于设置并忘记了它,与我们之前使用的VBA文档自动化相比,它节省了我很多时间。