1 自定义函数的代码存放位置

一般存放在模块中。

2 自定义函数代码的格式

'函数功能:

'在第一参数“区域”所代表的列中查找第二参数“查找值”的值,然后根据第三参数“列”的值确定返回值所在列的值

'如果有找到多个值,那么由第四参数决定返回第几个值

'忽略第三参数时表示默认值是为2,即返回“区域”右边一列的值

'忽略第四参数时表示默认值1,即返回第一个值

'使用函数可参考以下公式:

'=look(E$2,B$1:C$12,2,ROW(A1))

'确定函数Look,类型为String。包括四个参数,前两个为必选参数,后两个为可选参数

Function look(查找值 As String, 区域 As Range, Optional 列 As Integer = 2, Optional 索引号 As Integer = 1) As String

Dim i As Long, cell As Range, Str As String

With 区域.Columns(1) '引用区域的第一列

'如果引用区域第一个单元格等于查找的对象,那么将该单元格赋予变量Cell。否则使用Find方法查找,将找到的单元格赋予变量Cell

If .Cells(1) = 查找值 Then Set cell = .Cells(1) Else Set cell = .Find(查找值, LookIn:=xlValues, lookat:=xlWhole)

If Not cell Is Nothing Then '如果找到

vba中怎么引用自定义函数(自定义函数及添加说明)(1)

3 添加自定义函数的说明

开发工具→宏→宏名:look→选项→说明:输入说明内容。

vba中怎么引用自定义函数(自定义函数及添加说明)(2)

4 为自定义函数指定类别

在打开的“插入函数”对话框的“函数分类”列表中,函数的类别包括全部、财务、日期与时间等分类,而创建的自定义函数会自动分配到“

用户定义”类别中。

也可以把自定义函数添加到特定的类别中,运行如下的一个过程即可:

Sub 指定函数类别()

Application.MacroOptions "look", Category:=5

End Sub

函数类别编号如下所示:

0全部

1财务

2 日期和时间

3 数学和三角

4 统计

5 查找和引用

6 数据库

7 文本

8 逻辑

9 信息

5 自定义函数的使用

5.1 被其它VBA程序调用

5.2 在工作表公式中使用

6 自定义函数的公用

自定义函数一般情况下只能在含有函数代码的工作簿内使用。如果需要让该自定义函数在所有打开的Excel工作簿中使用,需要保存为加载宏文件并进行加载。

6.1 保存为加载宏文件:包含自定义函数的文件→另存为→类型:加载宏xla。

6.2 添加加载宏:office按钮→Excel选项→加载项→转到→勾选:加载宏文件名→确定。

vba中怎么引用自定义函数(自定义函数及添加说明)(3)

,