- VBA Tutorial
- VBA - Home
- VBA - Overview
- VBA - Excel Macros
- VBA - Excel Terms
- VBA - Macro Comments
- VBA - Message Box
- VBA - Input Box
- VBA - Variables
- VBA - Constants
- VBA - Operators
- VBA - Decisions
- VBA - Loops
- VBA - Strings
- VBA - Date and Time
- VBA - Arrays
- VBA - Functions
- VBA - Sub Procedure
- VBA - Events
- VBA - Error Handling
- VBA - Excel Objects
- VBA - Text Files
- VBA - Programming Charts
- VBA - Userforms
- VBA Useful Resources
- VBA - Quick Guide
- VBA - Useful Resources
- VBA - Discussion
VBA - 用户定义函数
函数是一组可重用代码,可以在程序中的任何位置调用。这消除了一遍又一遍地编写相同代码的需要。这使得程序员能够将大程序划分为许多小的且可管理的函数。
除了内置函数之外,VBA 还允许编写用户定义的函数。在本章中,您将学习如何在 VBA 中编写自己的函数。
功能定义
VBA 函数可以有一个可选的 return 语句。如果您想从函数返回值,则这是必需的。
例如,您可以在函数中传递两个数字,然后您可以期望函数在调用程序中返回它们的乘法。
注意- 函数可以返回用逗号分隔的多个值作为分配给函数名称本身的数组。
在使用函数之前,我们需要定义该特定函数。在 VBA 中定义函数的最常见方法是使用Function关键字,后跟唯一的函数名称,它可能包含也可能不包含参数列表以及带有End Function关键字的语句,该语句指示函数的结束。以下是基本语法。
句法
添加一个按钮并添加以下功能。
Function Functionname(parameter-list) statement 1 statement 2 statement 3 ....... statement n End Function
例子
添加以下返回面积的函数。请注意,一个或多个值可以与函数名称本身一起返回。
Function findArea(Length As Double, Optional Width As Variant) If IsMissing(Width) Then findArea = Length * Length Else findArea = Length * Width End If End Function
调用函数
要调用函数,请使用函数名称调用该函数,如以下屏幕截图所示。
如下所示的区域的输出将显示给用户。