由于项目的需要,要求实现根据Word模板文件中的BookMark位置填写指定信息,生成新的Word文档。这个新的Word文档在原来的BookMark位置要求能够允许多次填写和修改。
一般情况下:在BookMark位置填写信息是对BookMark.Range.Text 进行赋值操作。但是,一旦对Text进行赋值后,这个BookMark就被删除,消失了。生成的文档中就没有BookMark了。于是我采用如下技巧实现了项目的需要:在赋值后,在对应位置上给文档再新建一个BookMark。这样每次填写修改完毕后BookMark依然存在,问题就解决了。
#region Add by Luxh 2007.08.29
//bookMark 为书签名称Name
Bookmark curBookmark = wApp.ActiveDocument.Bookmarks.get_Item(ref bookMark);
string strOldName = curBookmark.Name;
Range oldrange = curBookmark.Range;
//replaceString 为需要在书签位置填写的信息字符串
oldrange.Text = replaceString;
object newBookmarkRange = (object)oldrange;
wApp.ActiveDocument.Bookmarks.Add(strOldName,ref newBookmarkRange);
#endregion
转载于:https://www.cnblogs.com/MichaelLu/archive/2007/08/29/874798.html
4022

被折叠的 条评论
为什么被折叠?



