- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
宋翔精品 Office 电子书系列——WOHOME 论坛:
第2章 VBA 在函数方面的应用
在第 21 章中曾经提到过,可以在 VBA 中创建的两种过程——子过程和函数过程。在
前面的例子中,我们创建和使用的都是子过程,它通常都可以完成某一种功能。而函数过
程则是为了完成某种计算,并返回一个计算结果。在 VBA 中创建的函数过程不但可以在V
BA 中使用,而且还可以像其他 Excel 内置工作表函数一样,在工作表的公式中使用。本
章将重点介绍创建自定义函数并在工作表公式中使用的方法。
2.1 了解函数过程中的参数
在 Excel 工作表公式中使用不同的函数时,通常都需要输入函数的参数,然后函数才
能得出正确结果。当然,有极少一部分函数不需要参数,例如时间函数Now ,在单元格中
输入“=Now() ”并按【Enter 】键后,将得到当前的时间。
在 VBA 中编写自定义函数时,也要根据函数的功能为自定义函数设计不定数量的参
数,以便在使用中用户可以给函数参数赋值而获得想要的结果。本节将介绍自定义函数参
数的几种类型。
2.1.1 不使用参数的函数
自定义函数可以不使用任何参数,这通常在需要通过自定义函数返回一个信息时使用。
例如,下面的自定义函数返回当前工作簿的路径,它不需要使用任何参数:
Function GetPath()
GetPath = ActiveWorkbook.FullName
End Function
当在单元格中输入“=GetPath() ”并按【Enter 】键后,将在单元格中显示当前工作簿的
路径,如图 2-1所示。当在单元格输入等号“= ”后,可以通过Excel 2007 的自动完成功能
在列表中找到自定义函数。
图2-1 使用无参数函数返回工作簿路径
29
宋翔精品 Office 电子书系列——WOHOME 论坛:
提示:与Excel 内置的工作表函数一样,即使自定义函数不使用参数,但是在输入函
数时也要包含一对圆括号。
2.1.2 使用有—个参数的函数
有时可能需要通过给定一个数值来获得结果。例如,在使用 Excel 的工作表函数 ABS
时,通过给定一个数字,返回它的绝对值。那么在自定义函数时,也可以为函数设置一个
参数,在公式中使用自定义函数时,也要输入一个参数,才能得出正确结果。
例如,下面的自定义函数通过用户输入一个数字,来求得该数字的阶乘:
Function CountF(Num)
Dim i As Integer
Dim Total As Long
Total = 1
For i = 1 To Num
Total = Total * i
Next i
CountF = Total
End Function
在工作表中输入该函数时,要求输入一个参数,例如,输入“=CountF(5) ”,按【Ente
r 】键后,将得到给定参数值的阶乘,如图2-2所示。
图2-2 使用一个参数的函数计算数字的阶乘
2.1.3 使用多个参数的函数
如果需要参与计算的条件较多,一个参数不够用时,那么可以在自定义函数中设置多
个参数。例如,可以创建一个自定义函数,根据给定的商品单价和销售数量,计算员工的
销售提成金额。当销售额小于 20000 时,以销售额的 6&作为提成金额;当销售额在 20001
到 40000 之间时,以销售额的 8&作为提成金额;如果销售额大于 40000 ,那么以销售额的
10%作为提成金额。下面的自定义函数正是用来计算这种提成方法的:
Function GetBonus(UPrice, Amount)
30
宋翔精品 Office 电子书系列——WOHOME 论坛:
Dim Total As Long
Total = UPrice * Amount
Select Case Total
C
1亿VIP精品文档
相关文档
最近下载
- 光纤位移传感器实验.doc VIP
- TED演讲训练稿件 Be humble——and other lessons from the philosophy of water.docx
- (人教版)数学四年级下册期中复习计算题强化训练习题卡,含30份题组.doc
- 5、城轨工程项目全国劳务分包指导价(车站.盾构.铺轨).pdf
- 在科学教育活动中引导幼儿主动探究有效策略.doc
- 2022年广西柳州市中考物理试卷(含答案与解析).docx VIP
- 05s518-雨水口标准图集.pdf
- 高考英语时事新闻篇-日本核污水排海.docx VIP
- [精品]小升初学生个人简历模板 (31).pdf
- 北京市房屋租赁合同范本(链家官方版).pdf
文档评论(0)