Excel中自定义函数实例剖析
日期:2007年4月13日 作者: 查看:[大字体 中字体 小字体]-
一、认识VBA
在介绍自定义函数的具体使用之前,不得不先介绍一下VBA,原因很简单,自定义函数就是用它创建的。VBA的全称是Visual Basic for Application,它是微软最好的通用应用程序脚本编程语言,它的特点是容易上手,而且功能非常强大。
在微软所有的Office组件中,如Word、Access、Powerpoint等等都包含VBA,如果你能在一种Office组件中熟练使用VBA,那么在其它组件中使用VBA的原理是相通的。
Excel中VBA主要有两个用途,一是使电子表格的任务自动化;二是可以用它创建用于工作表公式的自定义函数。
由此可见,使用Excel自定义函数的一个前提条件是对VBA基础知识有所了解,如果读者朋友有使用Visual Basic编程语言的经验,那么使用VBA时会感觉有很多相似之处。如果读者朋友完全是一个新手,也不必太担心,因为实际的操作和运用是很简单的。
二、什么时候使用自定义函数?
有些初学Excel的朋友可能有这样疑问:Excel已经内置了这么多函数,我还有必要创建自己的函数吗?
回答是肯定的。原因有两个,它们也正好可以解释什么时候使用Excel自定义函数的问题。
第一,自定义函数可以简化我们的工作。
有些工作,我们的确可以在公式中组合使用Excel内置的函数来完成任务,但是这样做的一个明显缺点是,我们的公式可能太冗长、繁琐,可读性很差,不易于管理,除了自己之外别人可能很难理解。这时,我们可以通过使用自定义函数来简化自己的工作。
第二,自定义函数可以满足我们个性化的需要,可以使我们的公式具有更强大和灵活的功能。
实际工作的要求千变万化,仅使用Excel内置函数常常不能圆满地解决问题,这时,我们就可以使用自定义函数来满足实际工作中的个性化需求。
上面的讲述比较抽象,我们还是把重点放在实际例子的剖析上,请大家在实际例子中进一步体会,进而学会在Excel中创建和使用自定义函数。
下面我们通过两个典型实例,学习自定义函数使用的全过程。这里实际上假设读者朋友都有一定的VBA基础。
假如你完全没有VBA基础也不要紧,当学习完实例后,若觉得自定义函数在自己以后的工作中可能用到,那么再去补充相应的VBA基础也不迟。
(一) 计算个人调节税的自定义函数
任务
假设个人调节税的收缴标准是:工资小于等于800元的免征调节税,工资800元以上至1500元的超过部分按5%的税率征收,1500元以上至2000元的超过部分按8%的税率征收,高于2000元的超过部分按20%的税率征收。
分析
假设Sheet1工作表的A、B、C、D列中分别存放“姓名”、“总工资”、“调节税”、“税后工资”字段数据,如图1所示。

图 1平时使用较多的方法是借助嵌套使用IF函数计算,比如在C2单元格输入公式“=IF(B2<=800,0,IF(B2<=1500,(B2-800)*0.05,IF(B2<=2000,700*0.05+(B2-1500)*0.08,700*0.05+500*0.08+(B2-2000)*0.2)))”,然后通过填充柄复制公式到C列的其余单元格。
既然公式能够解决问题,为什么还要使用自定义函数的方法呢?
正如前面提到的两个方面的原因:一是公式看起来太繁琐,不便于理解和管理;二是公式的处理能力在面对稍微复杂一些的问题时便失去效用,比如假设调节税的税率标准会根据年龄的不同而改变,那么公式可能就无能为力了。
使用自定义函数
下面就通过此例介绍使用自定义函数的全过程,即使是初学Excel的朋友,也会感觉其操作实际上是非常简单的。
1. 为了便于测试自定义函数的计算效果,可以先把上面采用公式计算的结果删去。然后选择菜单“工具→宏→Visual Basic编辑器”命令(或按下键盘Alt+F11组合键),打开Visual Basic窗口,我们将在这里自定义函数。
2. 进入Visual Basic窗口后,选择菜单“插入→模块”命令,于是得到“模块1”,在其中输入如下自定义函数的代码(图2):
Function TAX(salary)
Const r1 As Double = 0.05
Const r2 As Double = 0.08
Const r3 As Double = 0.2
Select Case salary
Case Is <= 800
TAX = 0
Case Is <= 1500
TAX = (salary - 800) * r1
Case Is <= 2000
TAX = (1500 - 800) * r1 + (salary - 1500) * r2
Case Is > 2000
TAX = (1500 - 800) * r1 + (2000 - 1500) * r2 + (salary - 2000) * r3
End Select
End Function
- [1] [2] [3] 下一页
-
- Excel中自定义函数实例剖析 相关文章:
- ·危机重重 2007年度网络安全分析报告
- ·Linux系统网络配置详细解析
- ·诊断和分析提高搜索引擎网站排名
- ·简单分析2007年11月十大网络安全漏洞
- ·简单分析Script脚本跨站攻击漏洞技术
- ·深入分析Windows操作系统死机问题
- ·解析Leopard的备份工具:Time Machine
- ·详细分析操作系统死机的问题
- ·电子杂志的创编制作过程解析
- ·分析Windows操作系统死机问题
- Excel中自定义函数实例剖析 相关软件
- ·SK魔兽录像分析器 V1.4 Beta 3
- ·文物典藏系列-故宫馆藏文房四宝赏析
- ·中国古籍白话解析系列合集(典藏版V1.1)
- ·《股票常识与技术分析》
- ·大败笔:34个最新的营销失败案例分析
- ·英语迷津-相似词语辨析
- ·金融炼金术:证券分析的逻辑
- ·佳作赏析
- ·股市基本分析
- ·梦的解析
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
上一篇:Excel快速录入小数技巧
下一篇:Excel:精彩实例推荐
精品推荐
热点TOP10
- ·Excel密码保护的解除方法与解除原理
- ·跟我学做Excel XP斜线表头
- ·Excel表格页码设置打印输出更直观
- ·在Excel中将文本转换为数字的七种方法
- ·第一课 VBA是什么
- ·Excel中分类设置录入数据的下拉列表
- ·改改小细节 Excel表格立刻变得更漂亮
- ·Excel电子表格也能做成EXE可执行文件
- ·用EXCEL搭建企业信息系统(一)
- ·第三课 学习控件
- ·关于EXCEL数据上传到SQL SERVER中的简单方法!
- ·工资表巧转工资条
- ·Excel中自定义函数实例剖析
- ·如何在AutoCAD中导入excel表格
- ·用好Excel 2007六则小技巧 帮你节省时间
- ·为什么EXCEL身份证号码都科学计数法?
- ·利用高级筛选功能巧妙删除Excel的重复记录
- ·比较常用的25条Excel技巧整理放送
- ·应用Excel公式的技巧
- ·筛选Excel 2007单元格区域或表中的数据
特别推荐
- ·Excel密码保护的解除方法与解除原理
- ·Excel 2007表格行和列的移动或复制
- ·Excel旧表翻新技巧
- ·Excel中快速定位的技巧实例
- ·用Excel函数快速统计学生期中考试成绩
- ·八种常见Excel错误提示及问题解决方法
- ·在Excel中将文本转换为数字的七种方法
- ·更改多个Excel工作表的数据合并计算
- ·解决Excel数值进位问题
- ·巧用Excel发送电子邮件
- ·跟我学做Excel XP斜线表头
- ·Excel 2007单元格内容的编辑与控制
- ·快速查找具有条件格式的Excel单元格
- ·Excel 2003数据隐藏小技巧
- ·办公软件 Excel真正的实现四舍五入
- ·改改小细节 Excel表格立刻变得更漂亮
- ·用Excel做数据分析——相关系数与协方差
- ·用EXCEL搭建企业信息系统(一)
- ·筛选Excel 2007单元格区域或表中的数据
- ·Excel电子表格也能做成EXE可执行文件
