2

给定一个邮寄地址列表,我需要打开一个现有的 Word 文档,该文档的格式可以打印标签,然后将每个地址插入表格的不同单元格中。当前解决方案打开 Word 应用程序并移动光标以插入文本。但是,在阅读了与从 Web 应用程序打开较新版本 Word 相关的安全问题和问题后,我决定需要使用另一种方法。

我已经研究过使用 Office Open XML,但我还没有找到任何好的资源来提供关于如何使用它的具体信息。另外,有人建议我使用 SQL 报告服务,但搜索有关如何使用它们的信息,却一无所获。

您认为哪种方法最适合我的问题?

代码示例和优秀教程的链接将非常有帮助。

4

6 回答 6

4

感谢所有答案,但我真的不想为插件付费,而且使用 Word 自动化是不可能的。所以我一直在寻找,最终通过反复试验,找到了一些答案。

在彻底搜索了微软的网站后,我发现了一些关于 Office Open XML SDK 的更新文章。我下载了新工具并开始浏览它们。

然后我找到了 Document Reflector,它创建了一个类来基于现有的 Word 文档 (.docx) 生成 XML 代码。使用我的标签模板文档和该工具生成的代码,我完成并添加了一个循环,为每个地址附加表格单元格。事实证明,它比使用 Word 自动化相当简单且速度更快。

因此,如果您仍在使用 Word 自动化,请查看 Office Open XML 工具。它们令人惊讶地广泛,可从 Microsoft 免费下载。

Office Open XML SDK 2.0 下载

于 2009-06-02T22:39:56.393 回答
2

我使用Aspose.com的 Words 插件进行邮件合并(编程指南)。

于 2009-05-31T16:44:58.127 回答
2

您可以在 dnrTV ( www.dnrtv.com ) 上观看 137 和 138 节目。在这些视频中,Beth Massi 展示了如何使用 OpenXML 进行一些编辑和邮件合并。她通过在 VB 中使用 Open XML SDK 和 xml 文字来做到这一点。它不需要第三方组件。它也不需要在机器上安装 MS Office。

这个视频启发了我作为一个 C# 开发人员(并且没有 VB 经验)在 VB 中的一个单独的 dll 中进行一些 XML 操作。我从我的 C# 应用程序调用这个 dll。

值得一试。

于 2009-05-31T19:07:31.177 回答
1

我们有 tvanfosson 提到的产品 Aspose。我们购买的版本与 SQL Reporting Services 一起使用,因此可以与调度程序一起使用以创建输出。它真的是一个很棒的产品,我们在一个需要在最终文档中支持韩文字符的系统中使用它。它工作得很好,在支持下不到 1000 美元。不错。

使用这样的产品的优点是您可以继续管理您的数据,并且生成文档所需的技能集处于各种开发人员可以支持其使用的水平。

于 2009-05-31T16:57:49.360 回答
0

范斯蒂,

如果您真的想在代码中执行此操作,请查看我刚刚在 Google 上找到的这篇文章

http://kellychronicles.spaces.live.com/blog/cns!A0D71E1614E8DBF8!1364.entry

于 2009-05-31T16:49:04.080 回答
0

如果您正在使用报告服务,您不能将单词 doc 中的信息移动到数据库表中并从那里读取,从而将单词排除在等式之外?

于 2009-06-01T12:09:04.153 回答