文档中的某个位置插入文本
利用书签定位到 Word 文档的指定位置 (三种方法)
首先在 Word 文档中,设置书签,并命名(假设建了一个名为"BM_TEST"的书签)
然后使用 C#操作 Word
using MSWord = Microsoft.Oce.Interop.Word;
private MSWord.Application wordApp;%%//Word 应用程序变量
private MSWord.Document wordDoc;%%%%%//Word 文档变量
private Object Nothing = Missing.Value;
//初始化
wordApp = new MSWord.ApplicationClass();
wordDoc = wordApp.Documents.Add(ref Nothing, ref Nothing, ref Nothing, ref
Nothing);
// 打开 Word
object FileName = strPath;
object readOnly = false;
object isVisible = true;
wordDoc = wordApp.Documents.Open(ref FileName, ref Nothing, ref readOnly,
ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing,
ref Nothing, ref Nothing, ref Nothing, ref isVisible, ref Nothing,
ref Nothing, ref Nothing, ref Nothing);
object bk = "BM_TEST";
方法一:使用 Word 应用程序变量,使用这种方法,wordApp.Documents.Open()中确保
isVisible 的值为 true
if (wordApp.ActiveDocument.Bookmarks.Exists("BM_TEST"))
{
%%%%wordApp.ActiveDocument.Bookmarks.get_Item(ref bk).Select();
%%%%wordApp.Selection.TypeText("insert text");%%%// 插入文本
}
方法二:使用 Word 文档变量
if (wordDoc.Bookmarks.Exists("BM_TEST"))
{
%%%%wordDoc.Bookmarks.get_Item(ref bk).Range.Text = "insert text"; // 插入文本
}
方法三:使用 Goto 函数,跳转到指定书签
object BookMarkName = "BM_TEST";
object what = MSWord.WdGoToItem.wdGoToBookmark;
wordDoc.ActiveWindow.Selection.GoTo(ref what, ref Nothing, ref Nothing, ref
BookMarkName);
wordDoc.ActiveWindow.Selection.TypeText("Hello!");