ExcelVBA之第二十四课

大家好,上节VBA课中我们简要地认识了一下过程,从本节课开始,我们一步一步地来解析过程的基本知识,俗话说万丈高楼平地起,我们只有把这些基础的知识点掌握好,方能有更好的发挥,才能做到手中无剑而心中有剑!今天我们学习过程基础知识—实参与形参。

1、实参

实参是指在调用Sub或Function过程时,传递给Sub或Function过程的常量、变量或表达式。实参一般会在过程中直接被赋值,它也是实际参数的简称,实参可由常量、表达式、合法的变量名、数组组成。

示例:

上面过程中的变量i和sr就是两个实参,在代码中这两个实际参数被赋值了。

运行结果:

2、形参

形参是在定义Sub或Function过程时用于接收数据的变量,在定义时只是一个变量名,没有具体的值,也叫做形式参数,它们写在过程名后的括号里。另外还有一点需要注意,形参的变量类型可以是合法的简单变量,也可以是数组,但不能是定长字符串,例如不能用诸如sr2 As String*30之类的定长字符串作为形参。

示例:

然而这个过程却是不能运行的,因为i2和sr2这两个参数是形参,也就是形式上的参数,虽然代码中有赋值语句,但也不能够运行。

那么问题来了,既然含有形参的过程不能直接运行,那么该怎么用呢?请往下看

3、形参过程的使用

含有形参的过程不能够直接运行,它需要另外一过程去调用它。在过程调用传递参数时,形参与实参是按位置结合的,形参和实参中对应的变量名可以不必相同,但位置必须对应起来,其实也就是数据类型应该一致,否则系统会强制进行转换,如果无法转换,系统会报错。

示例:

运行过程“实参示例”,得到如下结果:

仔细看看,我们在调用过程“形参示例”的时候,代码是“形参示例 i, sr”,并不是“形参示例 i2, sr2”,这佐证了参数名可以不一样,但是位置必须对应。如果我们把i和sr的位置调换一下,则会出现参数类型错误提示:

从这里例子我们又可以发现新的学习点:

(1)、为什么结果的i和sr的结果变化了,可不可以不变呢?

(2)、对于过程的调用我们是这样写的:形参示例 i, sr,那么有没有其他的写法呢?

我将带着以上的两个问题展开下节课的内容,希望大家把今天的内容搞懂~

天南海北也相忆
|
落花时节又思君

(0)

相关推荐