利用VBA提高工作效率-VBA基础
Visual Basic for Applications则是Visual Basic 5.0 的子集。Visual Basic 是 由Basic 发展而来的第四代语言。Visual Basic 作为一套独立的 Windows 系统开发工具,可用于开发Windows 环境下的各类应用程 序,是一种可视化的、面向对象的、采用事件驱动方式的结构化高 级程序设计语言。它具有高效率、简单易学及功能强大的特点。VB 的程序语言简单、便捷,利用其事件驱动的机制,新颖易用的 可视化设计工具,并使用Windows 应用程序接口。要转换过的宏,可选择一个宏名,单击 按钮,就可在 Visual Basic 器中显示该 Visual Basic 模块。
Sub MAIN
FormatFont .Name = "Arial", .Points = 10
Insert "Hello World"
End Sub
当该模板在 Word 2000 中打开时,该宏转换为下列代码。 Public Sub Main
WordBasic.FormatFont Font:="Arial", Points:=10
WordBasic.Insert "Hello World"
End Sub
转换过的宏中的每个语句以 WordBasic 属性(WordBasic 属性返回一个化对象【Word.Basic】,该对象包含了在 Word 6.0 和 Word for Windows 95 中所有可用的 WordBasic 语句和函数的方法) 开头。WordBasic 是 Word 2000 对象模型中的一个属性,该模型返 回一个对象及所有的 WordBasic 语句和函数;该对象使得在 Word 2000 中运行 WordBasic 宏成为可能。
注意:
如果在保存该模板时覆盖原来的模板,则该 WordBasic 宏会永 久地丢失,并且以前版本的 Word 也不能使用转换过的宏。
Word 97 中的宏在Word 2000 中像在Word 97 中一样使用而无需 转换。
下面的 Visual Basic 宏与以前的 WordBasic 宏的功能相同, 但是没有使用 WordBasic 属性。
Public Sub Main() With Selection.Font .Name = "Arial" .Size = 10 End With Selection.TypeText Text:="Hello World" End Sub
下面的示例是用 Word.Basic 对象新建一篇文档,然后插入有效 字体的名称。每个字体名称以与之相应的字体显示。如:“楷体, 隶书、宋体”。
With WordBasic
.FileNewDefault
For aCount = 1 To .CountFonts()
.Font .[Font$](aCount)
.Insert .[Font$](aCount)
.InsertPara
Next
End With
11.1.3 对象、属性和方法
11.1.3.1 Word 对象
VBA 与传统宏语言的重要区别之一就在于它是面向对象的。对象 是为了在VBA 程序中管理和代码的方便提出来的。在VBA 中,对象是封装有和代码的客体。例如,UserForm 对象是一个窗口 或对话框,用以构成应用的用户界面部分。
Word 对象是VBA 为Word 所采取的看待世界的方法。对象代 表一个Word 的元素,如文档、段落、书签或单个的字符。集合是一 个对象,该对象包含其他数个对象,通常这些对象属于相同的类型。 例如,一个集合对象中可包含文档中的所有书签对象。通过使用属 性和方法,可以修改单个的对象,也可修改整个的对象集合。
在一个应用程序中,最高级别的对象通常是Application 对象, 它就是应用程序本身。例如, 在Microsoft Word 对象中的 Application 对象就是Microsoft Word 本身。在Application 对象 中包含了一些其他的对象,例如,在Microsoft Word 的Application 对象中包含了Document、Windows、Selection 等对象。因为Document 对象的存在依赖于Word 的Application 对象的存在,所以此 Document 对象被称之为Application 对象的子对象(Child),反过 来,此Application 对象被称为Document 对象的父对象(Parent)。 许多子对象又有它们自己的子对象。例如,在Microsoft Excel 中, Documents 对象包含了Document 对象,或者说,它是Document 对象 的父对象,一个父对象可以拥有多个子对象;例如,Word 的Windows对象拥有Panes、Selection 以及Object 等子对象。同样,一个子 对象也可以拥有多个父对象;例如,Word 的Windows 集合对象同时 是Application 对象和Document 对象两者的子对象。对象组成应用 程序的方法彼此之间按照它们被分开的内容的功能又相互联系起 来,这叫做对象的分层结构(Objecthierarchy)或是对象的模型 (Object model),如图11-1 所示为Microsoft Word 对象的结构 模型图。
属性是对象的一个特性或者该对象操作的一个方面。例如,文档属性包含名称、内容、保存状态,以及是否启用修订。要设置一个 属性的值,可在对象的后面带一个句号、属性名、一个等号和新的 属性值。下面的示例在“MyDoc.doc”文档中启用修订。
Documents("MyDoc.doc").TrackRevisions = True 在本例中,Documents 引用由打开的文档构成的集合,而 “ MyDoc.doc ” 识别集合中的一篇文档, 为该文档设置了 TrackRevisions 属性。
方法是对象可以进行的动作。例如,可打印一篇文档,因而 Document 对象也具有PrintOut 方法。方法通常都具有参数,指明动 作是如何进行的。下面的示例是打印活动文档的前三页。
ActiveDocument.PrintOut From:=1,To:=3
在大多数情况下,方法是动作,而属性是性质。使用方法可使对 象发生某些事情,而使用属性则可返回对象的信息,或者引起对象 的某个性质的更改。
可以利用对象与对象集的属性(Properties)和方法(Methods) 对对象进行操作。关于属性与方法的概念在下一节介绍。
操作对象首先应调用该对象,可以有以下两种方法: 显示调用方法(Calling it explicitly)。要根据该对象在对象模型中的明确位置进行指向。 隐示调用方法(Calling it implicitly)。不必指出对象在 对象模型中的位置,只需确保此操作不会引起混淆与错误。 例如,你要调用某
| 广告合作:400-664-0084 全国热线:400-664-0084 Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号 珠峰网 版权所有 All Rights Reserved
|