1[1].2 VBA入门之一《与代码亲密接触》 --山菊花
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VBA入门之一《与代码亲密接触》
去除粗枝繁叶,留一根主干,作攀天之梯,目标是那金碧辉煌的VBA殿堂。
一路上,两旁都是漂亮的姑娘,不要三心二意,请跟我走。
闲话少说,言归正传。
打开Excel,新建一工作簿。
0如果你的工具栏中找不到“控件工具箱”,请打开它。控件工具箱可悬浮在工作表中,也可停靠在窗口的四周(如4楼图样)。
1点击命令按钮,在工作表中拖动鼠标至适合大小。
2按钮出来了。通过右键菜单,可以编辑它的文字。
3点击控件工具箱中的“属性”按钮,或如上图所示的右键菜单中点击“属性”。按钮的前景色、背景色、字体等统称为“属性”。
4设置属性虽然有趣,但总不过瘾,来点刺激的。双击按钮,眼前是另一片天地,它叫做VB编辑器(或称VBE),VBA的一切神奇将从这里诞生。
5依样画葫芦。在光标处输入下面一行代码:
QUOTE:
MsgBox "哈哈,我会 VBA 啦……"
msgbox 不拘大小写,后面有一个空格,引号是半角引号。输入完毕后点击工具按钮返回Excel窗口。
6点击控件工具箱中的“退出设计模式”按钮。“芝麻开门”按钮周围的小圈圈没了,转换成运行模式。
这一步经常要做的,注意。
7点击按钮“芝麻开门”,这就是代码运行的效果图,一个系统对话框。
重复练习一遍:点击“设计模式”按钮,再点击“芝麻开门”,这时按钮被选择。
点击“退出设计模式”,再点击“芝麻开门”,又进入运行状态。
8现在,由工作表界面切换到VBE界面,下列方式可任选一种:
按Alt+TAB选择VBE图标,松开复合键。
工作表标签右键菜单-查看代码。
菜单:工具-宏-VB编辑器。
Alt+F11。
双击控件。
9将代码修改为:
QUOTE:
Private Sub CommandButton1_Click() ctxt = "哈哈,我会 VBA 啦……"
MsgBox ctxt, 64, "宣告"
End Sub
实际修改的是中间的黑色字体部分。
代码中,蓝色处是一个空格,粉红色处是一个逗号。
命令后面、命令与命令之间,间隔一个以上的空格。
参数与参数之间,用逗号分开。
运行代码的办法,除了在工作表上点击按钮,还可以在VBE窗口中直接运行,把光标定位到代码首尾之间(从“Private Sub CommandButton1_Click()”到“End Sub”),如下图所示执行菜单命令或按F8,逐行执行代码。
如果执行“运行-运行子过程”命令(按F5),将连续执行过程首尾之间的全部代码。
10代码的解释:
ctxt叫做自定义变量,就像我们代数中常用的x、y、z一样。
ctxt = "……" 叫做赋值,跟代数中的赋值是一样的。
11MsgBox是什么东西?我们总是想知道。
请选择MsgBox(实际上,只需把光标定位到命令中的任意位置均可),按F1键,系统将弹出帮助窗口并显示该命令的帮助。
12在B2:D4单元格输入一些数据备用。为工作表添加第二个按钮。
这个按钮的功能是:用鼠标点击这些单元格,然后点击按钮,像上例一样弹出一个对话框,显示的容为这个单元格的名称和容。
13双击按钮。在光标闪烁处,输入代码:
msgbox"你点击的单元格是:"&
(蓝色位置表示空格),接下来要输入的代码是“ActiveCell.Address”,输入这些代码可以使用键盘输入,也可以从属性列表中选择。按Ctrl+J,在代码窗口中弹出一个下拉列表,就是属性/方法列表,将光标移动到ActiveCell,然后点击键盘上的小数点“.”,结果ActiveCell连同小数点被输入到代码窗口中。
窗口中继续显示属性列表中,选择属性“Address”,按空格键输入该属性。
接着,输入“&Chr(13)_”,回车换行,继续输入:
&"该单元格的值等于:"&ActiveCell.Value, 64, "神算子"
完整的代码是:
QUOTE:
Private Sub CommandButton2_Click()
MsgBox"你点击的单元格是:"&ActiveCell.Address&Chr(13)_
&"该单元格的值等于:"&ActiveCell.Value, 64, "神算子"
End Sub
辛苦了。返回Excel,退出设计模式,先看一下运行的效果。
14切换到Excel,退出设计模式,测试代码:
用鼠标点击单元格D4,然后点击按钮。效果如下所示:
点击确定按钮。
点击其它单元格,再点击按钮,多试几遍。
15代码解释:
ActiveCell表示活动单元格,即光标所在的单元格,Address表示地址,中间的“.”是连接符。ActiveCell.Address即是:当前单元格的地址。
ActiveCell.Value即是:当前单元格的值。
点击D2单元格,因为当前单元格的地址是“$D$2”,即:
ActiveCell.Address = "$D$2"
D2单元格的值是“2006-8-10”,即:
ActiveCell.Value = "2006-8-10"
所以,点击按钮后,对话框中显示的信息为:
QUOTE:
你点击的单元格是:$D$2
该单元格的值等于:2006-8-10
Chr(13)代表一个回车符(信息分两行显示)。
后面的下划线“_”与显示无关,写代码的时候,如果一行太长,不方便阅读,可使用一个下划线把代码分两行或多行书写,不影响运行。
建议中间休息一下再继续,这一节任务不轻。
16添加第三个按钮,编辑文字为:“点石成金”。
这里插一下,这些按钮上的文字称为“标签”(标签总是贴在上面的)。
不同的按钮可以使用相同的标签,但每一个按钮有一个独立的名字,看属性框的第一行。
与代码挂钩的正是这些名称。代码Private Sub后面的就是控件的名称。