目录
前言
本篇以一个简单的示例,来演示如何一步一步开启VBA开发之旅,这个示例只有短短的18行程序,却可以实现如下功能:
- 有一个ActiveX按钮
- 点击按钮会显示一个欢迎对话框。
- 退出欢迎对话框之后,会在excel表格中显示一行文字。
- 会按红橙黄绿青蓝紫的顺序展示流水灯效果。
- 最后会展示一个七彩彩条。
下面我们来实现这个小示例。
1.打开EXCEL的VBA开发菜单
作为office使用者,我们平时打开Word,Excel时,是看不到VBA开发相关的菜单的,如果需要进行VBA开发,首先需要点击“文件”-“选项”菜单,在出现下图所示选项卡,选取“自定义功能区”,可以看到在右侧的主选项卡下方,开发工具的缺省是不打开的。我们将开发工具勾选上。然后回到Excel界面,就会发现顶部的菜单栏多了一个”开发工具”菜单。
点击这个“开发工具菜单”,会发现下面出现图2所示图标菜单。
2.在表单中插入一个ActiveX按钮
我们点击插入,在弹出的图标菜单栏内选择一个ActiveX控件:命令按钮,并插入到excel表格中,如图3所示。
3.将按钮显示的文字改成“欢迎”
按图4,将“设计模式”打开,右键点击刚才创建的按钮,在出现的属性栏内,将Caption属性改为”欢迎”。
4.编辑一段小程序
我们双击这个命令按钮,会进入VBA编辑器,输入如下代码:
Private Sub CommandButton2_Click()
'输出欢迎对话框
MsgBox "Hello World!"
'在第5行输出一行文字
Sheet1.Cells(5, 1) = "你好!VBA就这么简单!"
'定义色彩数组
ColorArr = Array(vbRed, 49407, vbYellow, vbGreen, vbCyan, vbBlue, vbMagenta)
'按红橙黄绿青蓝紫实现流水灯效果
For i = 1 To 7
For j = 1 To 7
'为流水灯延时
For k = 1 To 2000
For n = 1 To 2000
m = m + 1
Next
Next
Sheet1.Cells(7, j).Interior.Color = ColorArr(i - 1)
If j > 1 Then Sheet1.Cells(7, j - 1).Clear
If j = 1 Then Sheet1.Cells(7, 7).Clear
Next
Next
'流水灯之后,显示红橙黄绿青蓝紫彩条
For i = 1 To 7
Sheet1.Cells(7, i).Interior.Color = ColorArr(i - 1)
Next
End Sub
5.运行
好了,我们将菜单栏的“设计模式”关闭,就可以运行了,点击欢迎按钮,就会出现下图所示效果,是不是很简单?