阅: 1889 | 回: 0
等级:初学者
- 积分:0
- 财富值:0.0
- 身份:普通用户
在Excel中创建自定义函数后,默认在“插入函数”对话框中自定义函数的说明部分所显示的内容为“没有帮助信息”。有时为了方便用户,需要在“插入函数”对话框中添加自定义函数的说明文字,或将其添加到某个Excel某个内置的函数类别中。打开“插入函数”对话框的方法是选择一个空单元格,单击菜单“插入→函数”(Excel 2003)或在“公式”选项卡的“函数库”组中单击“插入函数”(Excel 2007/2010)。下面的两种方法都可以给自定义函数添加说明文字,假如已在Excel中创建了一个自定义函数“GetNums”,其作用是提取单元格字符串中的数值,它包含两个参数“RCell”和“Num”,分别指定单元格和字符串中要提取数值的位置。
方法一:在“宏”对话框中添加说明
1.按“Alt+F8”键打开“宏”对话框。
2.在“宏”对话框的“宏名”下方的文本框中输入或粘贴自定义函数的名称,本例为“GetNums”。
3.单击“选项”按钮,弹出“宏选项”对话框,在文本框中输入自定义函数的说明文字,单击“确定”。 这样,以后在“插入函数”对话框中就可以看到该自定义函数的说明了。 方法二:用“Application.MacroOptions ”方法
上述方法还不能指定将自定义函数加入到Excel内置的函数类别中,这时可用VBA中的“Application.MacroOptions ”方法来实现。如在VBA编辑器的代码窗口中输入下面的代码:
Sub AddUDFDescriptions()
Application.MacroOptions _
Macro:="GetNums", _
Description:="从字符串中提取数值", _
Category:=7
End Sub
该代码在给自定义函数添加说明文字的同时,也将该自定义函数添加到Excel内置的“文本”函数类别中,“Category:=7”中的“7”所对应的类别为“文本”。代码运行后即可在“文本”函数类别中找到“GetNums”函数。
值得一题的是,在Excel 2010中“Application.MacroOptions ”方法还新增了一个参数“ArgumentDescriptions”,可以在“函数参数”对话框中显示的自定义函数的参数描述。本例在Excel 2010的VBA编辑器中运行下面的代码,可同时添加参数的描述。
Sub AddUDFDescriptions()
Application.MacroOptions _
Macro:="GetNums", _
Description:="从字符串中提取数值", _
Category:=7, _
ArgumentDescriptions:=[{"包含字符串的单元格","字符串中数值的位置"}]
End Sub
代码运行后在“函数参数”窗口中即可看到函数的说明及参数的描述。
上述方法还不能指定将自定义函数加入到Excel内置的函数类别中,这时可用VBA中的“Application.MacroOptions ”方法来实现。如在VBA编辑器的代码窗口中输入下面的代码:
Sub AddUDFDescriptions()
Application.MacroOptions _
Macro:="GetNums", _
Description:="从字符串中提取数值", _
Category:=7
End Sub
该代码在给自定义函数添加说明文字的同时,也将该自定义函数添加到Excel内置的“文本”函数类别中,“Category:=7”中的“7”所对应的类别为“文本”。代码运行后即可在“文本”函数类别中找到“GetNums”函数。
Sub AddUDFDescriptions()
Application.MacroOptions _
Macro:="GetNums", _
Description:="从字符串中提取数值", _
Category:=7, _
ArgumentDescriptions:=[{"包含字符串的单元格","字符串中数值的位置"}]
End Sub
代码运行后在“函数参数”窗口中即可看到函数的说明及参数的描述。
我的个性签名