zoukankan      html  css  js  c++  java
  • win32com操作word(2):常用用法

    一、对象的位置关系:

    1.Range属性位于(部分):

    Selection__Section__Cell__Paragraph__Table__Bookmark__Comment__Row__List

    Range方法位于:

    Document.Range(start,end) :返回指定区间(start,end)的Range对象

    CanvasShapes(Shapes/GroupShapes/).Range(index):返回一个指定index的ShapeRange对象

    2.Selection属性位于(全部):

    Application__Global__Pane__Window

    3.Paragraphs属性位于(全部):

    Document__Range__Selection

    4.Tables属性位于(全部):

    Cell__Table__Range__Selection__Document

    5.Text属性位于(全部):

    Range__Selection__Find__Replacement__TextEffectFormat

    总结:

    1.Range.InsertBefore(After)后,Range的范围会扩展自动至插入的字符前或后;

    2.Range.Text='xx'会导致Range范围内的内容被替换成‘xx';

    3.Range与Selection之间相互转化:

    Range=Selection.Words[Characters](n)

    Selection=Range.Select()

    4.字体的改变:

    Font属性是Selection,Range,Find,Replacement,Style,ConditionalStyle对象的属性,主要改变字体的大小(Size),颜色(Color),字体类型(Name),粗体(Bold),斜体(Italic)等

    5.段落格式改变:

    ParagraphFormat属性也是Selection,Range,Find,Replacement,Style,ConditionalStyle对象的属性,改变段落格式

    二、Range与Selection区域选择相关操作

    几个重要的区域选择函数:

    MoveEnd(wdUnits,n):移动结尾光标位置,从而增加或减小选择区域。n为正表示向后移动,n为负表示向前移动。

    MoveStart(wdUnits,n):移动起始光标位置,从而增加或减小选择区域。n为正表示向后移动,n为负表示向前移动。

    EndOf(wdUnits,wdExtend[wdMove]):将光标扩展(或移动)到按wdUnits设定的末尾位置。如果是wdMove,就是移动,此时没有选择区域;如果是wdExtend,就是扩大选择区域。

    EndKey(wdUnits,wdExtend[wdMove]):与EndOf()功能相同

    StartOf(wdUnits,wdExtend[wdMove]):原理同上,只是光标移动到起始位置。

    HomeKey(wdUnits,wdExtend[wdMove]):功能与StartOf()相同

    Extend(character):打开扩展模式,扩展至指定的字符character处(包括character字符)

    Expand(wdUnits):按wdUnits方式扩展选定的区域。

    Collapse(wdCollapseStart[wdCollapseEnd]):将选定区域释放,同时光标移至原选定区域的起始位置或结束位置。

    注意:如果用 wdCollapseEnd 折叠一个代表完整段落的区域,则该区域将定位于段落结束标记之后(即下段开头)。但是,在该区域折叠后,可以用 MoveEnd 方法将区域回移一个字符

    三、书签相关操作:

    标签的主要目的是用来在文档中定位,在有文字很多的文档中快速找到所需文档位置十分有效。

    1.获取书签集合:

    Document[Selection/Range].Bookmarks

    2.添加书签:

    Bookmarks.Add('name',Range):注意书签名仅能为一个单词,否则命名错误

    3.判断书签name是否存在,若存在则选中:

    if Bookmarks.Exists('name')==True:

        Bookmarks.Item('name').Select()

    4.替换标签name内的内容:

    Bookmarks.Item('name').Range.Text='new content'

     四、图片插入:

    word中图片对象是通过Shape对象来管理的,该对象可以操作图片,设置图片的长宽、位置、格式等属性的设置。

    而图片的插入可以通过InlineShapes.AddPicture('xx.jpg')或Shapes.AddPicture('xx.jpg')方法插入。二者都返回Shape对象,可以调用该对象的方法操作图片。

    通过InlineShapes添加的图片相当于字符插入,而通过Shapes插入的图片可以随意移动,浮动在文字上方,二者可以通过ConvertToInlineShape和ConvertToShape相互转化。

    五、查找与替换:

    查找与替换是通过Find对象和Replacement对象实现的。Find属性位于Range和Selection对象,Replacement属性位于Find对象。

    Find对象的属性主要要来设置查找对象,Execute()函数用来执行查找任务。

    Execute(FindText, MatchCase, MatchWholeWord, MatchWildcards, MatchSoundsLike, MatchAllWordForms, Forward, Wrap, Format, ReplaceWith, Replace, MatchKashida, MatchDiacritics, MatchAlefHamza, MatchControl)

    FindText :指定需搜索的文本。可用空字符串 ("") 搜索格式,也可通过指定相应的字符代码搜索特殊字符。例如,“^p”对应段落标记,“^t”对应制表符。

    MatchCase区分大小写

    MatchWholeWord:全字匹配

    MatchWildcards:使用通配符。

    MatchSoundsLike:同音匹配

    MatchAllWordForms:查找操作定位于要查找的文字的所有形式(例如,查找“sit”的同时,还查找“sitting”和“sat

    Forward向下(向文档尾部)搜索。

    Wrap:如果搜索从不是文档的起始位置开始,并已搜索到文档的末尾(如 Forward 设置为 False,则相反),用本参数控制接下来的操作。当存在选定内容或区域,而又没有在该选定内容或区域中找到搜索文字时,也可用本参数控制接下来的操作。可取下列 WdFindWrap 常量之一。

    Format:查找操作定位于格式或带格式的文本,而不是查找文本。

    ReplaceWith  Variant 类型,可选。替换文字。若要删除由 Find 参数指定的文字,可使用空字符串 ("")。与 Find 参数相似,本参数也可以指定特殊的字符和高级搜索条件。若要将图形对象或者其他非文本项指定为替换内容,可将这些项置于“剪贴板”上,然后将 ReplaceWith 指定为“^c”。

    Replace :指定执行替换的个数:一个、全部或者不替换。可取下列 WdReplace 常量之一。

     

  • 相关阅读:
    《SQL初学者指南》——第1章 关系型数据库和SQL
    《SQL初学者指南》——第1章 关系型数据库和SQL
    快讯:Oracle自治事务处理数据库发布和19c路线图
    NoReverseMatch: u'polls' is not a registered namespace
    Tomcat配置图片保存路径,图片不保存在项目路径下
    请慎用java的File#renameTo(File)方法
    sentinel monitor mymaster 10.10.17.200 6379 1 1个哨兵同意就切换
    静默错误:Oracle 数据库是如何应对和处理的 ?
    如何对Node.js默认下载路径进行修改
    “我卖一个群可以赚2万,但这个项目,死了!”
  • 原文地址:https://www.cnblogs.com/zhuluqing/p/8445901.html
Copyright © 2011-2022 走看看