zoukankan      html  css  js  c++  java
  • C# 定位Word文档中的某个位置插入文本

    利用书签定位到Word文档的指定位置 (三种方法)
    首先在Word文档中,设置书签,并命名(假设建了一个名为"BM_TEST"的书签)

    然后使用C#操作Word

    using MSWord = Microsoft.Office.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!");

  • 相关阅读:
    【转】CentOS7安装iptables防火墙
    CentOS7使用firewalld打开关闭防火墙与端口
    CentOS7永久更改主机名
    CentOS7下安装GUI图形界面
    sql server2008 r2 密钥
    Response.Flush和Response.BufferOutput
    Asp.net使用JQuery实现评论的无刷新分页及分段延迟加载效果
    总结一下使用Emgucv的经验和经历
    c# 鼠标拖动缩放图片
    c# winfrom 在panel上绘制矩形
  • 原文地址:https://www.cnblogs.com/top5/p/1724712.html
Copyright © 2011-2022 走看看