word_vba_详解

合集下载

常用WORD-VBA代码

常用WORD-VBA代码

有用的WORD VBA代码1、删除空格'* +++++++++++++++++++++++++++++++++++++++'功能简介:删除空格''* ----------------------------------------Sub 删除空格()Dim FindChar As String, Fcount As Integer, RepChar As StringOn Error Resume NextApplication.ScreenUpdating = False '关闭屏幕更新FindChar = " "RepChar = ""With ActiveDocument.Content.Find '此处针对全文档Do While .Execute(findtext:=FindChar) = True '如果发现Fcount = Fcount + 1 '计数器LoopIf MsgBox("文档中共发现了" & Fcount & "个" & FindChar & vbCrLf _& ",按Yes键将进行下一步的替换工作,按No取消", vbYesNo + vbInformation) = vbYes Then.Execute findtext:=FindChar, Wrap:=wdFindContinue, replacewith:=RepChar, Replace:=wdReplaceAllEnd IfEnd WithApplication.ScreenUpdating = True'恢复屏幕更新End Sub2、段首空格删除第一种'* +++++++++++++++++++++++++++++++++++++++'功能简介:删除段首空格''*-----------------------------------------Sub 删除段首空格1()Selection.WholeStory 'CTR+ASelection.ParagraphFormat.Alignment = wdAlignParagraphCenter 'CTR+ESelection.ParagraphFormat.Reset 'CTR+QEnd Sub第二种'* +++++++++++++++++++++++++++++++++++++++'功能简介:删除段首空格''* ----------------------------------------Sub 删除段首空格2()Dim i As Paragraph, n As LongApplication.ScreenUpdating = False '关闭屏幕刷新For Each i In ActiveDocument.Paragraphs '在活动文档的段落集合中循环For n = 1 To i.Range.Characters.CountIf i.Range Like " *" _Or i.Range Like " *" Theni.Range.Characters(1).DeleteElse: Exit ForEnd IfNext nNextApplication.ScreenUpdating = True '恢复屏幕刷新 End Sub第三种'* +++++++++++++++++++++++++++++++++++++++'功能简介:删除段首空格''* ----------------------------------------Sub 删除段首空格3()Dim i As Paragraph, n As LongApplication.ScreenUpdating = False '关闭屏幕刷新For Each i In ActiveDocument.Paragraphs '在活动文档的段落集合中循环For n = 1 To i.Range.Characters.CountIf i.Range.Characters(1).Text = " " _Or i.Range.Characters(1).Text = " " Theni.Range.Characters(1).DeleteElse: Exit ForEnd IfNext nNextApplication.ScreenUpdating = True '恢复屏幕刷新End Sub3、删除空白段落'功能简介:可以对指定长度的段落进行删除,当LEN=1时'可对空白段落进行删除。

WORD·VBA入门教程(第二课)

WORD·VBA入门教程(第二课)

第二课:录制宏、编辑宏与优化宏上一课中,我们初步认识了VBA是什么,怎么进入VBE编辑器,以及VBE的环境设置等。

本课中,我们来录制宏、编辑宏与优化宏。

录制宏有两种方式,一是双击状态栏中的"录制"命令,或者鼠标单击工具\宏\录制新宏命令,WORD将记录下您的操作并转换为VB语言.在XP以下版本中,录制宏操作不支持鼠标操作,您可以使用键盘操作,请结合键盘加速键、键盘快捷键等进行操作,此处不再解释加速键和快捷键的含义。

另外,在XP版本中,对部分右键菜单不支持的情况下,可以使用SHIFT+F10进行调用右键快捷菜单等。

OK,我们选择上述方法之一,来录个一个宏,我们的操作是这样的,对全文档中的字体设置为:华文细黑,粗体,12号,行距1.5,段前12磅,段后12磅,录制结束,千万别忘了停止录制宏哟,点“停止”而非关闭“停止录制宏”工具栏,否则,要绕些小圈子了。

如图:在上图的录制宏对话框中,我们可以自定义宏名,将宏提定到工具栏或者键盘上,保存宏的位置(作用范围),如果是“所有文档(Normal.dot)”,则它是全局的宏,可以为所有文档所调用,是公共的宏;如果是本文档,则是私有的,仅作用于当前文档。

同理,如果我们指定在工具栏或者键盘中,如果是“所有文档(Normal.dot)”,则该工具栏作用于所有WORD 文档,反之则仅作用于当前文档,其它文档中将不会出现此宏、工具栏或者键盘快捷键。

好,我们进入VBE,你可以使用ALT+F8,在宏位置中为当前文档,找到该宏名,点右侧的“编辑” 命令,或者直接ALT+F11 ,找到该文档的工程资源管理器,双击“NewMacros"模块,则在右侧的代码窗口中,会看到以下代码,守柔把它注释一下(如果在VBE 代码窗口中,我们将光标位于代码中或者选定某个关键字,按下F1 ,会出现详细的VBA 帮助),以使大家更快地明白它的意思:Sub OurExample()'这部分说明来自录制宏对话框' OurExample Macro' 宏在2005-7-20 由I Love You_Word! 录制' "&chr(10)&"WORD-VBA专题讲座之二' Selection.WholeStory'全选文档,CTRL+AWith Selection.Font '对选定文字.NameFarEast = "华文细黑" '东亚字体.NameAscii = "Tahoma" '设置拉丁文(字符代码从0(零)到127 的字符)所用的字体.NameOther = "Tahoma" '设置字符代码从128 到255 的字符的字体.Name = "华文细黑" '字体名称.Size = 12 '字号.Bold = True '粗体.Italic = False '非斜体.Underline = wdUnderlineNone '无下划线.UnderlineColor = wdColorAutomatic '下划线颜色自动.StrikeThrough = False …无删除线格式.DoubleStrikeThrough = False '无双删除线格式.Outline = False '无镂空格式.Emboss = False '无阳文格式.Shadow = False '无阴影格式.Hidden = False '不隐藏文字.SmallCaps = False '不小型大写字母.AllCaps = False '不全部字母大写.Color = wdColorAutomatic '自动字体颜色.Engrave = False '不阴文.Superscript = False '不上标.Subscript = False '不下标.Spacing = 0 '字符间距.Scaling = 100 '不缩放.Position = 0 '正常位置.Kerning = 1 '最小字号.Animation = wdAnimationNone'无动态效果.DisableCharacterSpaceGrid = False '不忽略选定文本每行中的字符数.EmphasisMark = wdEmphasisMarkNone '不设置着重号End WithWith Selection.ParagraphFormat'对于选定内容的段落格式.LeftIndent = CentimetersToPoints(0)'左缩进为0,即无.RightIndent = CentimetersToPoints(0)'右缩进为0,即无.SpaceBefore = 12'段前12 磅.SpaceBeforeAuto = False'不自动设置指定段落的段前间距.SpaceAfter = 12'段后为12 磅.SpaceAfterAuto = False'不自动设置指定段落的段后间距.LineSpacingRule = wdLineSpace1pt5'行距为1.5 倍.Alignment = wdAlignParagraphJustify'段落对齐方式,常规,两端对齐.WidowControl = False'重新分页时段中的首行或末行有可能单独位于上页的页尾或下页的页首。

word vba 详解

word vba 详解

word vba 详解wordvba详解wordvba详解(转一)2021-07-1209:29office中的word作者:davidshank在所有office应用程序中,microsoftword可能将就是应用领域最广为的应用程序,它还经常在自定义office解决方案中饰演关键的角色。

开发人员用各种相同的方式采用word,存有一些方式很直观,而另一些极其繁杂。

无论牵涉何种自定义解决方案,用visualbasicforapplications(vba)处置word文档的基本方法都就是一样的。

在本月的栏目中,我将归纳地了解如何采用word,并提供更多一些关于如何运用range对象处置word文档内容的详细资料。

理解基本方法在word中,几乎所有的操作都要调用document(记录)对象本身或其内容。

当您用vba操作word时,document对象表示一个打开的文档,而且所有的document对象都是application对象的documents集合的成员。

文档就是一个由字符、单词、句子和段落共同组成的子集,字符共同组成单词,单词共同组成句子,句子共同组成段落,等等。

因此,每一个document对象都具备characters(字符)、words(分类号单词)、sentences(句子)和paragraghs四个子集。

此外,每个文档具备一个涵盖一个或多个节的sections子集,每一个节都存有一个涵盖该节在页眉和页脚的headersfooters子集。

注意:您可以在microsoftoffice2000开发人员对象模型指南(英文)中查阅完整的word对象模型。

另外,您也可以使用对象浏览器和microsoftwordvisualbasic参考帮助来学习有关具体某个对象、属性、方法和事件的详细内容。

通过vba采用word时,document对象处在中心边线。

如果您必须打开文档或建立崭新文档,就要建立代莱document对象。

VBA宏操作Word文档的常用技巧与函数解析

VBA宏操作Word文档的常用技巧与函数解析

VBA宏操作Word文档的常用技巧与函数解析Word文档是办公工作中最常用的工具之一,它提供了丰富的功能和设计选项。

VBA(Visual Basic for Applications)是一种用于自动化任务和增强功能的编程语言,通过使用VBA宏,我们可以进一步扩展和自定义Word文档的功能。

本文将介绍一些VBA宏操作Word文档的常用技巧和函数,帮助您更高效地利用VBA宏完成各种任务。

一、了解VBA宏VBA宏是一种编程语言,可用于创建自定义的Word文档操作和功能。

使用VBA宏,您可以自动执行重复的任务,增加文档的互动性,并提高办公效率。

为了运行VBA宏,您需要在Word文档中打开VBA 编辑器,这样就可以编写和运行VBA代码了。

二、创建宏录制Word提供了宏录制功能,可以根据您在文档中的操作记录VBA宏代码。

这是学习和入门VBA宏的好方法。

1. 打开Word文档,点击"开发工具"选项卡,然后点击"宏"按钮。

2. 在出现的对话框中,输入宏的名称,并点击"创建"按钮。

3. 在宏录制器窗口中,开始执行您想要录制的操作,例如字体样式调整、插入图片、为文本设置格式等。

4. 完成操作后,点击宏录制器窗口中的"停止录制"按钮。

三、常用VBA宏技巧VBA宏提供了许多强大的功能和技巧,以下是一些常用的技巧,可以帮助您更好地利用VBA宏操作Word文档。

1. 循环和条件语句:使用循环和条件语句可以实现自动化任务,比如在文档中查找和替换特定文本。

2. 创建用户界面:通过使用VBA宏,您可以创建自定义的用户界面,以便用户输入参数或执行特定的功能。

3. 处理表格数据:VBA宏可以帮助您处理Word文档中的表格数据,例如自动计算和合并单元格。

4. 控制Word应用程序:使用VBA宏可以控制Word应用程序的各个方面,例如打开、关闭和保存文档,设置页面布局等。

WORD_VBA入门教程(第四课)精品

WORD_VBA入门教程(第四课)精品

第四课:WORD中的Range对象在操纵Word VBA,绝大多数是针对Word中的各视图中的文本进行的,正确掌握、理解和应用Word Range是Word Vba 的重要一课,初学者甚至熟悉Excel的编程人员,往往对Word 中的Range对象手足无措,原因是不了解Word中Range 对象的本质和意义。

1. Range 对象的定义:该对象代表文档中的一个连续范围。

每一个 Range 对象由一起始和一终止字符位置定义。

和文档中书签的使用方法类似,Visual Basic 使用 Range 对象识别文档的指定部分。

但和书签不同,Range 对象只在定义该对象的过程正在运行时才存在。

Range 对象和所选内容相互独立。

也就是说,可定义和复制一个范围而不需改变所选内容。

还可在文档中定义多个范围,但每一个窗格中只能有一个所选内容。

透彻的理解,只要是以文本形式存在的区域,就有Range对象,无论是页眉页脚中,批注脚注中,还是图形的文本框中,无论是一个光标,一个字符、一个词、一个句子、一个段落、一节还是一个文档,都可以看成是一个Range对象。

2. 对比Range对象如果同EXCEL中的Range对象对比,你也许会更容易理解一些。

Excel中,每个单元格,是一个Range对象,连续或者非连续的单元格,都可以组成一个Range对象,它由单元格地址组成的;在Word中,每个字符是一个“单元格”,它是由每个字符(无论是否可见,如段落标记等)构成了一个文档的Range对象,尽管它存活在运行时间中,也就是凡是由字符组成的具有起点和终点位置的连续文本,哪怕起点等于终点(光标)或者终点是起点位置的下一个字符,都是一个Range对象。

而Word中的Selection对象可以理解成EXCEL中的ActiveCell对象。

3. StoryRanges对象:StoryRanges由 Range 对象组成的集合,该集合代表文档中的文字部分。

WORD-VBA编程-从零开始学VBA

WORD-VBA编程-从零开始学VBA

从零开始,步入Word宏编程的世界(第一讲)工作中,经常看到许多朋友在使用Office时已经非常地熟练,但仍不敢去接触Office 的VBA编程;在网上Office的VBA编程论坛中,同样看到有朋友在其中流连了相当长的时间,但仍然不得其门而入。

问一下这两类朋友,前者觉得编程是一件很“高深”的事,自己恐怕学不会;后者为了提高自己的工作效率,虽然很想学,但自己一点编程的基础也没有,照着网上高手们的帖子做,反而越学越糊涂。

当我问第二类朋友为什么不多看看VBA的帮助文件时,“看不大懂,就像有语言障碍一样。

”他这样回答我。

对于第一类朋友,我想说,不要被自己想象出来的“困难”吓倒,如果您没有亲自尝试过,怎么知道编程会很“高深”,又怎么知道自己学不会?而第二类朋友如果能静下心来把基础知识补一补,相信您的问题也会迎刃而解。

那么,就让我们从最基础的知识开始,步入Office宏编程的世界吧。

文前的几点说明:1、虽说本文用到的程序在office2007与office2010中同样可以正常运行,但考虑到目前单位办公用机的实际情况,本文所有的实例主要还是面向Office2003的用户;2、为了便于各位读者理清思路,避免文章涉及面太广,本文主要以office2003中最常用的Word 为主进行讲述,有与其它Office套件相关联的地方,将单独说明;3、为避免学习过程中的枯燥乏味,本文没有像传统编程教材那样以理论知识为线索展开,而是将不同的知识点放到了几个不同的实例之中进行讲述。

所以,把每个实例“做”一遍,细心体会每个实例的知识点,将有助于您快速掌握VBA的编程技术;单纯地“看”,则无助于您的学习。

本文的宗旨是——完全面向初学者!或许您还能以此为契机叩开奔向VB6.0或的大门,说不定您还能编出一、两个病毒玩玩儿(当然仅限于玩玩儿,千万别做出什么傻事来!)!好了,下面就开始我们Word的VBA编程之旅吧,愿您旅途愉快!实例一:“你好,世界!”知识点:1、熟悉VBE的编程界面;2、什么是VB、VBE、VBA;3、什么是过程、工程。

如何在 VBA 中操作 Word 文档

如何在 VBA 中操作 Word 文档

如何在 VBA 中操作 Word 文档VBA(Visual Basic for Applications)作为一种用于自动化任务的编程语言,与Microsoft Office套件紧密结合,使用户能够使用宏和脚本来对Office应用程序进行编程操作。

在本文中,我们将重点介绍如何使用VBA来操作Word文档。

1. 创建和打开Word文档在VBA中,可以使用Application对象来创建和打开Word 文档。

下面是创建一个新文档和打开一个已存在的文档的示例代码:```vbaSub CreateAndOpenDocument()Dim WordApp As Object ' 创建一个Word应用程序对象Set WordApp = CreateObject("Word.Application")Dim WordDoc As Object ' 创建一个新文档Set WordDoc = WordApp.Documents.Add' 打开一个已存在的文档WordApp.Documents.Open("C:\Path\To\Your\Document.docx") ' 执行其他操作...' 关闭Word应用程序对象WordApp.QuitEnd Sub```2. 插入和编辑文本在Word文档中插入和编辑文本是VBA中的常见操作。

要在文档中插入文本,可以使用Selection对象的TypeText方法,如下所示:```vbaSub InsertText()Selection.TypeText Text:="这是要插入的文本。

"End Sub```要编辑已存在的文本,可以使用Selection对象的Text属性来访问和修改文本内容,如下所示:```vbaSub EditText()Selection.Text = "这是修改后的文本。

WORD中的宏和VBA编程入门

WORD中的宏和VBA编程入门

WORD中的宏和VBA编程入门微软的Word软件作为办公必备工具之一,除了常规的文档编辑功能外,还具有强大的自动化功能,其中宏和VBA编程是实现自动化的重要手段。

本文将介绍如何在Word中使用宏和VBA编程,实现更高效的文档处理和操作。

什么是宏?宏是一组自动化操作的集合,可以通过录制用户操作的方式生成,也可以通过VBA编程手动编写。

它可以帮助用户简化重复性操作,提高工作效率。

为什么使用VBA编程?VBA(VisualBasicforApplications)是一种基于VisualBasic的编程语言,在Office软件中被广泛应用。

使用VBA编程可以实现更加复杂和灵活的功能,定制化程度更高。

如何在Word中使用宏和VBA编程?开启开发者选项在Word中,点击“文件”->“选项”->“自定义功能区”,勾选“开发者”选项卡,点击“确定”。

录制宏点击“开发者”选项卡中的“录制宏”。

输入宏的名称和描述,选择存储位置,点击“确定”开始录制。

执行需要录制的操作,录制完成后点击“停止录制”。

运行宏点击“开发者”选项卡中的“宏”,选择要运行的宏,点击“运行”即可执行宏。

使用VBA编程点击“开发者”选项卡中的“VisualBasic”打开VBA编辑器。

在编辑器中编写VBA代码,实现更加复杂的功能。

保存并关闭VBA编辑器,即可在Word中使用编写的VBA程序。

实践与应用通过学习宏和VBA编程,用户可以针对自身工作需求,定制化自动化功能,提高工作效率。

比如批量处理文档、自动生成报告、定制化格式等。

掌握Word中的宏和VBA编程,可以让文档处理更加高效、智能化,为工作带来便利。

通过实践和不断学习,你将能够发挥自动化的力量,提升工作效率,带来更多的便利与创新。

掌握Word中的宏和VBA编程是提高工作效率的关键,通过自动化操作,可以简化繁琐的工作流程,实现更高效的文档处理和操作。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

word vba 详解(转一)2009-07-12 09:29Office 中的Word作者: David Shank在所有Office 应用程序中,Microsoft Word 可能是应用最广泛的应用程序,它还经常在自定义Office 解决方案中扮演重要的角色。

开发人员用各种不同的方式使用Word,有一些方式很简单,而另一些极其复杂。

无论涉及何种自定义解决方案,用Visual Basic for Applications (VBA) 处理Word 文档的基本方法都是一样的。

在本月的栏目中,我将概括地介绍如何使用Word,并提供一些关于如何运用Range 对象处理Word 文档内容的详细资料。

理解基本方法在Word 中,几乎所有的操作都要调用Document(记录)对象本身或其内容。

当您用VBA 操作Word 时,Document 对象表示一个打开的文档,而且所有的Document 对象都是Application 对象的Documents 集合的成员。

文档是一个由字符、单词、句子和段落组成的集合,字符组成单词,单词组成句子,句子组成段落,等等。

因此,每一个Document 对象都具有Characters(字符)、Words (分类号单词)、Sentences(句子)和Paragraghs 四个集合。

此外,每个文档具有一个包含一个或多个节的Sections 集合,每一个节都有一个包含该节页眉和页脚的HeadersFooters 集合。

注意:您可以在Microsoft Office 2000 开发人员对象模型指南(英文)中查阅完整的Word 对象模型。

另外,您也可以使用对象浏览器和Microsoft Word Visual Basic 参考帮助来学习有关具体某个对象、属性、方法和事件的详细内容。

通过VBA 使用Word 时,Document 对象处于中心位置。

如果您要打开文档或创建新文档,就要创建新的Document 对象。

每个打开或新创建的文档均被添加至Documents 集合。

具有焦点的文档称为活动文档,由ActiveDocument 属性表示。

Document 对象作为Documents 集合中的一个成员,您可以通过使用Document 对象的索引值(Document 对象在Documents 集合中的位置,1 是集合中的第一个文档)或名称来引用它。

另外,您也可以使用ActiveDocument 属性来引用当前具有焦点的文档。

例如,如果名为Policies.doc 的文档是唯一打开的文档,则以下三个对象变量将全部指向Policies.doc:Dim docOne As Word.DocumentDim docTwo As Word.DocumentDim docThree As Word.DocumentSet docOne = Documents(1)Set docTwo = Documents("Policies.doc")Set docThree = ActiveDocument一般情况下不要使用Documents 集合中的索引值来引用文档,因为当其它文档打开或关闭时,某个特定文档的索引值可能会随之改变。

通常,您可以通过使用ActiveDocument 属性或使用Documents 集合的Add 方法或Open 方法创建的Document 对象变量。

以下示例显示了如何使用ActiveDocument 属性把一个地址添加到当前具有焦点的文档中:With ActiveDocument.Envelope.Insert Address:="Office Talk" _& vbCrLf & "One Microsoft Way" & vbCrLf _& "Redmond, WA 98052", ReturnAddress:= _"David Shank" & vbCrLf & _"77 First Street" & vbCrLf & _"Any Town, USA 12345"End With下面的示例说明如何通过使用Documents 集合的Open 方法,实例化Document 对象变量。

Dim docPolicy As Word.DocumentSet docPolicy = Documents.Open("c:\my documents\policies.doc")最后一个示例显示如何通过使用Add 方法,为新的空文档创建Document 对象的实例。

Dim docPolicy As Word.DocumentSet docPolicy = Documents.Add通过使用Open 方法打开的文档,或者通过使用Add 方法创建的文档,都将成为用ActiveDocument 属性表示的当前活动文档。

如果您想使Documents 集合里的其它文档成为活动文档,可使用Document 对象的Active 方法。

一旦您获取了要操作的Document 对象,绝大部分您想通过VBA 进行的工作将涉及文本的操作。

首先要指定文档的一个部分,然后对它进行某些操作。

例如,添加或删除文本,或者设置单词或字符的格式。

您可以使用Range 或Selection 这两个对象来完成很多工作。

在本月的专栏中,我将只讨论Range 对象。

下个月我们将进一步讨论Selection 对象的具体内容。

理解Word 的段落标记当您通过程序处理文本时,必须理解Word 如何处理段落标记。

从根本上来看,Word 文档不过是一个巨大的字符流。

人们倾向于认为文档是单词、句子和段落的集合。

但实际上,文档就是一些字符。

每个字符都有一定的作用。

某些字符是字母、空格或制表符,另一些字符是段落标记或分页符。

段落标记在Word 文档中扮演独特的角色,有时这种角色容易被误解。

段落包含一个段落标记以及所有位于此段落标记和前一个段落标记之间的文本(不包括前一个段落标记)。

另外,重要的是,段落标记本包含该段落的所有格式信息。

当复制单词、句子和段落时,如果包含段落标记,则所有包含在段落标记中的格式信息也被复制,并在它们被粘贴到其它位置时应用于所属段落。

如果您想从段落中复制文本并将其粘贴到另一个段落中,但不想同时复制段落格式,复制时请不要包括您要复制的文本旁边的段落标记。

word vba 详解(转二)2009-07-12 09:29每个空白的Word 文档仅有一个段落标记,其中同时包含Character 对象、Word 对象、Sentence 对象和Paragragh 对象各一个。

但是,“属性”对话框(“文件”菜单)中的“统计信息”选项卡将报告空白文档中没有字符、单词、句子和段落。

这种差异突出显示了Word 的一个重要侧面,当编程操作这些对象时,您需要特别注意这一点。

Range 对象Range 对象表示文档中的一个连续范围,由一个起始字符位置和一个终止字符位置定义。

这个连续范围可以小到一个插入点,大到整个文档。

它也可能是(而非必须是)由当前节表示的范围。

您也可以定义一个Range 对象,表示和当前节不同的范围。

也可以在同一个文档中定义多个Range 对象。

Range 对象中的字符包含非打印字符,例如,空格、回车符和段落标记。

使用Range 对象创建Range 对象的典型方法为:声明一个Range 类型的对象变量,然后用Document 对象的Range 方法或另一个对象(例如Character、Word、Sentence 或Selection 对象)的Range 属性来实例化该变量。

例如,以下代码创建了两个Range 对象,均表示活动文档中的第二个句子。

Dim rngRangeMethod As Word.RangeDim rngRangeProperty As Word.RangeWith ActiveDocumentIf .Sentences.Count >= 2 ThenSet rngRangeMethod = .Range(.Sentences(2).Start, _.Sentences(2).End)Set rngRangeProperty = .Sentences(2)End IfEnd With当您使用Range 方法来指定文档的特定范围时,您必须使用此方法的Start 参数指定这个范围开始的位置,使用End 参数指定结束的位置。

文档的第一个字符的字符位置为0。

最后一个字符的位置和文档的字符总数相等。

您可以通过使用Characters 集合的Count 属性确定文档中的字符数。

如前面的示例所示,您也可以使用Bookmark、Selection 或Range 对象的Start 和End 属性来指定Range方法的Start 和End 参数。

您可以将Start 和End 参数设置为同一个数字,这将创建一个不包含任何字符的范围。

您可以使用对象的SetRange 方法设置或重新定义Range 对象的内容。

您也可以通过使用Range 对象的Start 属性或MoveStart 方法指定或重新定义范围开始的位置。

同样地,您也可以通过使用Range 对象的End 属性或它的MoveEnd 方法指定或重新定义范围结束的位置。

以下示例先用ContentRagne 对象,该对象包含了文档的所有内容。

接着,改变EndSetRange 方法重新定义范围,使之包含文档的第一个段落。

最后,使用MoveEnd 方法将范围的结束位置扩展至文档的第二个段落末尾。

此示例中的每一步都将当前范围中包含的字符的数量打印到“立即窗口”。

Sub RangeExample()Dim rngSample As RangeSet rngSample = ActiveDocument.ContentWith rngSampleDebug.Print "范围现在包含" & .Characters.Count _& " 个字符。

".End = ActiveDocument.Sentences(1).EndDebug.Print "范围现在包含" & .Characters.Count _& " 个字符。

".SetRange Start:=0, End:=ActiveDocument._Paragraphs(1).Range.EndDebug.Print "范围现在包含" & .Characters.Count _& " 个字符。

相关文档
最新文档