VBA程序控制结构概述

2019-10-13 16:19:34 浏览数 (1)

大家好,本节的主要内容是简单介绍下VBA编程中的基本程序控制结构,然后用其中一种结构的语句来简单举例,目的是让大家先对控制结构有整体的印象,然后引出变量和对象两个概念。

一、程序控制结构

程序控制结构是VBA程序的基本框架,包括顺序结构、判断结构和循环结构三种。这些结构的内容,按字面就基本可以推测每个结构的意思:

1、顺序结构就是按照按照语句的书写顺序从上到下,逐条语句执行。是最普遍的结构形式。

2、判断结构,又称为分支结构,是根据“条件”来选择执行哪一分支的语句。(可以类比函数中的IF函数)

3、循环结构,是利用计算机的高速运算能力,重复执行某一代码,完成大量有规则的重复运算。

下面我用思维导图给大家展示下,各个结构以及对应的常用语句,具体的语句的用法后续章节会再做详解,先有印象即可。

二、循环语句举例

下面用For....Next循环语句来举例,让大家对语句结构有所认识,循环结构类似于汽车的发动机。该例子还会引出变量和对象两个概念,可以慢慢理解,后面章节都会再作详细讲解。

编写了简易的小程序,从工作表A列第1行开始到第是15行,每隔一行填入一个数字,数字与行号一致,执行效果如下图所示。

这里使用了等差数列的知识(高中时候学过),这组数字1、3、5、...15。后一个数字与前一个数字的差值都是2,代码如下:

下面我们分节来讲解,开始可能讲的会啰嗦一些,希望能讲清楚。

1、For...Next循环语句结构

首先说其中的语句的循环结构,是For...Next语句最简单的形式如下:

For 循环变量=初始值 To 终值 [step 步长值]

语句序列

Next

代码中就是从初始值1开始,以间隔为2,每次累加,一直到终值15为止,那么每次循环之后,得到的数字就分别是1、3、5、7...、15,构成了一个等差数列。最后用Next作结,这是For循环的最简单形式。

2、引出变量的概念

那么这些数字不是凭空放着,就需要地方存储,就需要用到变量,我们注意到代码中是For i = 1 To 15 Step 2。字母“i"就是变量,变量名字我们可以起的。

变量概念是用于保存程序运行过程中的临时值,根据保存数据的类型,变量也有不同的类型。

程序开始我们就需要先告诉程序,变量的名字和变量类型的。我们叫声明变量,它的其中一种语句是Dim 变量 [as 数据类型]。

代码中Dim i As Integer 就是声明i是一个integer整形变量,integer是多种数据类型的一种,后面章节会再具体介绍。

3、引出对象的概念

那么通过循环得到了这组数据,储存在了变量i里。我们希望把它在单元格展示出来。单元格就是VBA中的一种常见对象。

EXCEL中的工作簿、工作表、单元格、图表等都是对象,他们都是我们可以操作的东西。(定义不易理解,就借助常用的对象来理解。)

Range("a"& i )=i 就代表第A列的第i行的单元格的值等于i,里面"a"&i之所以这样写时因为i是变量,而"a”时固定的字符,两者需要连接符&来连接,书写的规则都是固定的,后期会再讲解。

4、程序的运行过程

理解代码的意思后,我们看下程序运行的过程。首先dim语句声明了变量i是一个整型数据,即变量是整数。

然后For..Next语句开始循环,从1到15间隔为2来循环。当i为1时,那么range("a1")单元格值为1,再会开开始,循环变量 i 变成3,range("a3”)单元格的值为3......依次类推,一直到变量 i 为15时,range(“a15")单元格的值为15,循环结束,EXCEL的单元格里都有了数字,整个过程结束。


知 识 点

例子中,除了循环语句外,涉及到了变量、对象的概念,可以再结合例子复习下。

变量是用于保存程序运行过程中产生的临时值,变量有不同的类型。在程序运行过程中,变量保存的值也可以被更改。

对象是指,一组属性及这组属性上的专用操作的封装体,我们可以结合常见的对象来理解,比如工作簿,工作表、单元格、图表等等都是对象。


那么本节主要是作为一个引子,概述了程序控制结构和相应语句,同时引出了变量、对象两个概念,这些都是VBA程序的基本内容,后续章节都会详细介绍,祝大家学习愉快。


0 人点赞