WORD·VBA入门教程分析和总结.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第四课:WORD 中的 Range 对象 在操纵Word VBA,绝大多数是针对 Word 中的各视图中的文本进行的,正确掌握、理解和应用Word Range 是 Word Vba 的重要一课,初学者甚至熟悉 Excel 的编程人员,往往对 Word 中的Range 对象手足无措,原因是不了解 Word 中 Range 对象的本质和意义。 Range 对象的定义: 该对象代表文档中的一个连续范围。每一个 Range 对象由一起始和一终止字符位置定义。和文档中书签的使用方法类似,Visual Basic 使用 Range 对象识别文档的指定部分。但和书签不同,Range 对象只在定义该对象的过程正在运行时才存在。 Range 对象和所选内容相互独立。也就是说,可定义和复制一个范围而不需改变所选内容。还可在文档中定义多个范围,但每一个窗格中只能有一个所选内容。 透彻的理解,只要是以文本形式存在的区域,就有Range 对象,无论是页眉页脚中,批注脚注中,还是图形的文本框中,无论是一个光标,一个字符、一个词、一个句子、一个段落、一节还是一个文档,都可以看成是一个Range 对象。 对比Range 对象 如果同EXCEL 中的Range 对象对比,你也许会更容易理解一些。 Excel 中,每个单元格,是一个Range 对象,连续或者非连续的单元格,都可以组成一个Range 对象,它由单元格地址组成的;在Word 中,每个字符是一个“单元格”,它是由每个字符(无论是否可见,如段落标记等)构成了一个文档的 Range 对象,尽管它存活在运行时间中,也就是凡是由字符组成的具有起点和终点位置的连续文本,哪怕起点等于终点(光标)或者终点是起点位置的下一个字符,都是一个Range 对象。 而 Word 中的Selection 对象可以理解成EXCEL 中的ActiveCell 对象。 StoryRanges 对象: StoryRanges 由 Range 对象组成的集合,该集合代表文档中的文字部分。可使用 StoryRanges(index) 返回单个部分 (作为一个 Range 对象),其中 index 为一个 wdStoryType 常量。 Start、End 和 StoryType 属性唯一地确定了一个Range 对象。Start 和End 属性分别返回或者设置Range 对象的起始和结束字符的位置。每个文档构成部分起始处的字符位置是0 (zero),而第一个字符之后的位置是 1,依此类推。StoryType 属性的WdStoryType 常量可以表示十一种不同的文档构成部分类型,如下: wdCommentsStory wdEndnotesStory wdEvenPagesFooterStory wdEvenPagesHeaderStory wdFirstPageFooterStory wdFirstPageHeaderStory wdFootnotesStory wdMainTextStory wdPrimaryFooterStory wdPrimaryHeaderStory wdTextFrameStory 在句子中循环 以下示例罗列出所选文本中的句子数量和结尾的标点符号。 Sub Example() Dim i As Range, SenCount As Integer, MyString As String, EndChar As String With Selection If .Type = wdSelectionIP Then Exit Sub SenCount = .Sentences.Count 取得所选内容的句子数For Each i In .Sentences 在句子中循环 如果句子中的最后一个字符为段落标记则EndChar 为段落标记的前一个字符If i.Characters(i.Characters.Count) = Chr(13) Then EndChar = i.Characters(i.Characters.Count - 1) Else EndChar = i.Characters(i.Characters.Count) End If 以英文分号为分隔符,将结束标点在变量中累加MyString = MyString ; EndChar Next 去除最后一个; MyString = Right(MyString, Len(MyString) - 1) End With MsgBox 所选内容的句子数: SenCount vbCrLf 它们的结束标点分别为: MyString End Sub 在段落中循环 以下示例将本文档中的空白段落删除,并提示删除的空白段落数量。 Sub Example() D

文档评论(0)

hao187 + 关注
官方认证
文档贡献者

该用户很懒,什么也没介绍

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地上海
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档