功能| 链接:#sub [子]

函数,在Excel VBA子之间的区别在于,一个函数可以返回一个值,而子不能。功能和潜艇变得程序尺寸的增加是非常有用的。

功能

如果您希望Excel VBA来执行返回结果的任务,你可以使用的功能。将一个函数到一个模块(在Visual Basic编辑器,单击插入,模块)。例如,名区的功能。

Function Area(x As Double, y As Double) As Double

Area = x  y

End Function

说明:这个函数有两个参数(Double类型)和返回类型(Double类型也之后的部分)。你可以在你的代码中使用的函数(区)的名称,表示这导致要返回(这里X×Y)。

您现在可以通过简单地使用该功能的名称,并给出了每个参数的值是指该功能(即调用功能)在你的代码别的地方。

命令按钮在工作表,并添加以下代码行:

Dim z As Double

z = Area(3, 5) + 2

MsgBox z

说明:该函数返回一个值,所以你必须“抓”在你的代码此值。您可以使用另一个变量(z)对于这一点。接下来,你可以在另一个值添加到这个变量(如果你想)。最后,显示使用一个MsgBox的值。

结果当您单击工作表上的命令按钮:

Excel VBA Function Result

如果您希望Excel VBA来执行一些操作,您可以使用一个子。将一个子到一个模块(在Visual Basic编辑器,单击插入,模块)。

例如,名区子。

Sub Area(x As Double, y As Double)

MsgBox x * y

End Sub

说明:此子有两个参数(Double类型)。它没有返回类型!您可以通过简单地使用子的名字,并给予每个参数的值是指该子(也称子)从代码中的其他地方。

命令按钮在工作表,并添加以下代码行:

Area 3, 5

结果当您单击工作表上的命令按钮:

Excel VBA Sub Result

你能看到的功能和子之间的区别?该函数的返回值15.我们的增值2这个结果,并显示最终结果。当我们叫子,我们有过的结果(15),因为一分不能返回值没有更多的控制权!