C# · 12月 25, 2021

如何使用C#填写Word文档?

我有一个Word文档,letter.docx,这是一封我打算邮寄给数百人参加聚会的信.这封信已经组成,并且已经以自己特殊的方式格式化,具有不同的类型大小和字体.它已设置好并准备好了,占位符我必须填写变量,如姓名,地址,电话号码等.

现在,我想编写一个C#程序,用户可以在其中输入名称,地址等变量,表单,点击按钮,并生成letter.docx,并在正确的位置填写正确的信息.

我理解Word具有允许你这样做的功能,但我真的想在C#中做到这一点.

解决方法 当然你可以做到.在项目中使用Microsoft.Office.Interop.Word引用.

首先在“插入”选项卡中为要在文档中更新的所有字段添加书签(例如,NameField标记有标记’name_field’).然后,在您的C#代码中添加以下内容:

Microsoft.Office.Interop.Word.Application wordApp = null;wordApp = new Microsoft.Office.Interop.Word.Application();wordApp.Visible = true;Document wordDoc = wordApp.Documents.Open(@”C:\test.docx”);Bookmark bkm = wordDoc.Bookmarks[“name_field”];Microsoft.Office.Interop.Word.Range rng = bkm.Range;rng.Text = “Adams Laura”; //Get value from any where

记得妥善保存&关闭文件.(你可以see this)