我有一个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