程序员学习程序开发都喜欢以输出“hello world”为第一个程序,我们也学习一下这种模式,因为Excel VBA主要是操作Excel,所以我们的第一个程序目的:在A1单元格输入“hello Excel VBA”。
1、打开VBA编辑器(如何打开请看上一讲初始VBA)
2、点击菜单-插入-模块,输入“Sub MyFirtSub”按回车,编辑器会自动补充1个“()"和”End Sub“
Sub MyFirtSub()
End Sub
这就是VBA的一个标准过程,也就是VBA的语言规则,必须按这种规则才行。
3、MyFirtSub过程命名是有一定规则的,比如不能以数字开头,不能用一些VBA内置的关键字等,如果违反了规则,编辑器会给出提示(如果你设置了编辑器”自动语法检测“勾选,会有弹框和红字体提示,否则只有红字体提示)。
4、对象:上面只是一个框架,并没有实际可执行的语句,我们的目的在A1单元格输入“hello Excel VBA”。在上一讲初始VBA里,我们通过录制过程可以发现在操作单元格的时候有ActiveCell、Range("xx")这2种形式,这就是Excel VBA对单元格的描述规则,这种一般称为对象,就是我们要对什么进行操作。我们的任务是对A1单元格操作,所以显然应该用Range("A1")这种形式。
对象:我们要对什么进行操作,比如生活中我们要拿起水杯,水杯就是一种对象。我们读一本书,书也就是我们操作的对象。
在Excel VBA里,有很多的对象,最先接触到的应该就是这种单元格对象。
5、属性:我们的目的在A1单元格输入“hello Excel VBA”。平时我们操作Excel,直接按键盘,就可以输入东西,比如有人问,你的表格里,A1单元格写的是什么,你可能会说,A1里面是”xxx“,翻译成VBA语言,你就是在说Range("A1")的Value是”xxx“,这个Value称作单元格的属性。比如生活中水杯里有多少毫升的水,书有多少页,就是对象所具体有的那些东西。
6、赋值:有了对象、有了属性,那我们就对这个属性进行赋值就可以了,对象与属性之间用”."连接,赋值用”=“,这种就是语言的规则,所以我们接着要写进去的语句就是:Range("A1").Value = "hello Excel VBA",完整的如下:
Sub MyFirstSub()
Range("A1").Value = "hello Excel VBA"
End Sub
细心的可能发现,有些东西我们是写在了双引号里,那也是语言的规则,文本必须要用双引号。
在编辑器里输入了对象,再输了”.“之后,编辑器是会立即列出许多选项,这是为了方便快速准确的输入后面的属性或者方法等。
7、运行:程序写出来了,接下来就要执行它,点菜单运行-下拉出来的右三角,或者快捷键F5,具体操作可以看前面的动画。如果没有出什么错误的话,运行完后,你会发现,A1单元格已经出现了hello Excel VBA,你的第一个程序已经成功创建并顺利执行了。
小结
主要介绍了如何建立一个过程、一个过程的基本规则、给单元格赋值。