admin 管理员组

文章数量: 1087139


2024年4月30日发(作者:网页重构师)

Excel 2010 中的 VBA 入门 ........................................................................................................... 1

1. 为什么在 Excel 2010 中使用 VBA? ............................................................................... 1

2. VBA 编程 101 ....................................................................................................................... 1

3. 宏和 Visual Basic 编辑器 ............................................................................................... 2

4. 一个实际示例 ....................................................................................................................... 5

5. 修改录制的代码 ................................................................................................................... 7

6. 可以使用 VBA 完成的更多任务 ....................................................................................... 10

Excel 2010 中的 VBA 入门

1. 为什么在 Excel 2010 中使用 VBA?

Microsoft Excel 2010 是一个功能相当强大的工具,您可以使用它操作、分析

和显示数据。不过有时候,尽管标准 Excel 用户界面 (UI) 中提供了丰富的功

能集,但您可能仍想要找到一种更简便的方法来执行繁琐的重复任务,或执行某

个 UI 似乎无法解决的任务。幸运的是,像 Excel 这样的 Office 应用程序提

供了 Visual Basic for Applications (VBA)。这是一种编程语言,您可以通过

它来扩展这些应用程序。

VBA 是通过运行

(在 Visual Basic 中编写的分步过程)来工作的。学习编程

可能看起来很困难,但只要多些耐心,多学习像本文中介绍的示例,许多用户会

发现,甚至只需学会少量 VBA 代码,就会使工作变得更加简单,而且可以在

Office 中完成他们以前认为不可能做到的事情。一旦学会了一些 VBA,便可以

更加轻松地掌握更多的 VBA,因此,这种可能性是无限的。

迄今为止,在 Excel 中使用 VBA 最常见的原因就是自动完成重复的工作。例如,

假定您有好几十个工作簿,每个工作簿都包含好几十个工作表,这些工作表都需

要进行更改。这些更改既可能很简单,例如对固定的单元格范围应用新格式;也

可能很复杂,例如,查看每个工作表中的数据的统计特征,再选择最恰当的图表

类型来显示数据和这些特征,然后创建图表并设置相应格式。

对于上述任一种情况,您都可能不愿意手动执行这些任务,最多也就愿意重复执

行几次。您可以改为使用 VBA 来编写要 Excel 执行的显式指令,从而自动完成

这些任务。

VBA 不仅仅可用于重复任务。您还可以使用 VBA 构建 Excel 的新功能(例如,

您可以开发新算法来分析数据,然后使用 Excel 中的图表功能显示结果),也

可以执行将 Excel 与其他 Office 应用程序(如 Microsoft Access 2010)集

成的任务。事实上,在所有 Office 应用程序中,Excel 最常用作一个类似于常

规开发平台的工具。除了所有涉及列表和会计的显而易见的任务之外,从数据可

视化到软件原型制作的大量任务中,开发人员都可使用 Excel。

尽管有这么多原因要在 Excel 2010 中使用 VBA,但一定要记住,解决问题的最

佳方案可能是根本就不涉及 VBA。即使没有 VBA,Excel 仍然提供了大量的功能,

就连高级用户也不可能完全熟悉这些功能。在决定采用 VBA 解决方案之前,请

全面搜索“帮助”和联机资源以确定没有更简单的方法。

2. VBA 编程 101

2.1. 通过代码使应用程序执行操作

1

您可能认为编写代码是一项神秘而又复杂的工作,但基本原则是使用日常推理,

并且很容易掌握。Office 2010 应用程序的创建方式公开了一些名为

对象

的内

容,这些对象可以接收指令。通过向应用程序中的各种对象发送指令,可与应用

程序进行交互。这些对象数量众多、类型各异而且使用灵活,但是它们也有局限

性。这些对象只能执行为其设计的操作,并且只按照您的指令执行操作。

2.2. 对象

在应用程序的名为

对象模型

的层次结构中,编程对象彼此之间有系统地相互关

联。对象模型会大致反映您在用户界面中看见的内容;例如,Excel 对象模型包

含 Application、Workbook、Sheet 和 Chart 对象以及其他很多对象。对

象模型是应用程序及其功能的概念图。

2.3. 属性和方法

可通过设置对象的

属性

和调用对象的

方法

来操作对象。设置属性可更改对象

的某些性质。调用方法可使对象执行某个操作。例如,Workbook 对象具有一个

用于关闭工作簿的 Close 方法和一个用于表示工作簿中当前活动的工作表

的 ActiveSheet 属性。

2.4. 集合

许多对象有单复数之分,例如 Workbook 和 Workbooks;Worksheet 和

Worksheets,等等。对象的复数形式称作

集合

。集合对象用于对集合中的多个项

执行一个操作。本文稍后将介绍如何使用 Worksheets 集合来更改工作簿中每

个工作表的名称。

3. 宏和 Visual Basic 编辑器

现在,您已对 Microsoft Excel 2010 如何公开其对象模型的方式有所了解,接

下来可以尝试调用对象方法并设置对象属性。为此,您必须在一个位置以 Office

可以理解的方法编写代码;通常使用是 Visual Basic 编辑器。尽管默认情况下

会安装该编辑器,但在功能区中启用该编辑器之前,许多用户都不知道该编辑器

的存在。

3.1. “开发工具”选项卡

所有 Office 2010 应用程序都使用功能区。功能区中有一个“开发工具”选项

卡,在此可以访问 Visual Basic 编辑器和其他开发人员工具。由于 Office 2010

在默认情况下不显示“开发工具”选项卡,因此必须使用以下过程启用该选项卡:

3.2. 启用“开发工具”选项卡

1. 在“文件”选项卡上,选择“选项”打开“Excel 选项”对话框。

2. 单击该对话框左侧的“自定义功能区”。

3. 在该对话框左侧的“从下列位置选择命令”下,选择“常用命令”。

4. 在该对话框右侧的“自定义功能区”下,选择“主选项卡”,然后选中

“开发工具”复选框。

5. 单击“确定”。

2


本文标签: 对象 工作 可能 使用 执行