Word-VBA-学习交流资料(全).doc
文本预览下载声明
Word VBA 学习交流资料
目录
一、对象模型
打开Word VBA帮助,首先看到的是“Word的对象模型”(如下所示)
图表 SEQ 图表 \* ARABIC 1
知识点:知道Application对象(Word应该程序的总对象)、Doctuments对象(文档集对象)、Paragraphs对象(段落集)、Selection(选中区域)对象、Tables(表格)对象、Sections(节,即Word的第一节)对象、Headers(页眉)对象。
二、新增功能
(略)
原因:我们的初衷大多是从“零”开始,最基础的我们都不知道,何来“新增”啊?
但是,以后学到相关的知识时,会跳到这里,学一些新增的“对象”、“方法”、“事件”、“属性”等。
三、编程概念
对象是 Visual Basic 的结构基础,在 Visual Basic 中进行的所有操作几乎都与修改对象有关。Microsoft Word 的任何元素,如文档、表格、段落、书签、域等,都可用 Visual Basic 中的对象来表示。
什么是对象和集合?
对象代表一个 Word 元素,如文档、段落、书签或单独的字符。集合也是一个对象,该对象包含多个其他对象,通常这些对象属于相同的类型;例如,一个集合对象中可包含文档中的所有书签对象。通过使用属性和方法,可以修改单独的的对象,也可修改整个的对象集合。
例如:
ActiveDocument.Paragraphs(2).Range.Characters(1).Font.Color = wdColorRed
在Word 的VBA中,大多数对象都是通过Application来访问,但有几个可以直接访问:如activedocumnet、documents等,当然通过application对象也行,但无疑后者更简略。
什么是属性?
属性是对象的一种特性或该对象行为的一个方面。例如,文档属性包含其名称、内容、保存状态以及是否启用修订。若要更改一个对象的特征,可以修改其属性值。
若要设置属性的值,可在对象的后面紧接一个句号、属性名称、一个等号及新的属性值。下列示例在名为“MyDoc.doc”的文档中启用修订。
Sub TrackChanges()
Documents(Sales.doc).TrackRevisions = True
End Sub
在本例中,Documents 引用由打开的文档(注意是对打开后文档的操作)构成的集合,而“MyDoc.doc”标识集合中单独的文档。并设置该文档的 TrackRevisions 属性。
不能设置某些属性。属性的“帮助”主题中会标明可以设置该属性(可读写),或只能读取该属性(只读)。
通过返回对象的一个属性值,可以获取有关该对象的信息。下列示例返回活动文档的名称。
Sub GetDocumentName()
Dim strDocName As String
strDocName = ActiveDocument.Name
MsgBox strDocName
End Sub
(这个例子输出的没有路径,只有名字.若带路径的话,把strDocName = ActiveDocument.Name改为:strDocName = ActiveDocument.Path ActiveDocument.Name)
在本例中,ActiveDocument 引用 Word 活动窗口中的文档。该文档的名称赋给了 strDocName 变量。
说明:每个属性的“帮助”主题表明可以设置该属性(可读写),只能读取该属性(只读),或只能写入该属性(只写)。此外“Visual Basic 编辑器”中的“对象浏览器”在浏览窗口的底部显示所选属性的读写状态。
什么是方法?
方法是对象可以执行的动作。例如,只要文档可以打印,Document 对象就具有 PrintOut 方法。方法通常带有参数,以限定执行动作的方式。下列示例打印活动文档的前三页。
Sub PrintThreePages()
ActiveDocument.PrintOut
End Sub
在大多数情况下,方法是动作,而属性是性质。使用方法将导致发生对象的某些事件(所以,有人说:“方法是集成了的事件”),而使用属性则会返回对象的信息,或引起对象的某个性质的改变。
返回一个对象
可通过返回集合中单独的对象的方式来返回大多数对象。例如 Documents 集合包含打开的 Word 文档。可使用(位于 Word 对象结构顶层的)Application 对象的 Documents 属性返回 Documents 集合。
在访问集合之后,可以通过在括号中使用索引序号(与处理数组的方式相似)返回单独的对象。索引序号通常是一个数值或名称。详细内
显示全部