excel自定义函数编写方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Excel自定义函数基础教程
1.总述、编写环境与设置
自定义函数功能是Excel中一个强大的扩展功能,它可以实现不同用户的特定计算要求。以使得Excel计算自主化、专业化,可以大大简化人工劳动(查表、专业公式计算、统计等)。所以编写与使用自定义函数应是每个工程计算人员必不可少的技能。本教程为零基础教程,特为呼和浩特职业技术学院编写,如需引用或咨询请联系****************。
本教程以Excel2003为平台讲解,使用其他版本Excel的同学请参照学习。自定义函数需要应用宏编写,请进行如下设置。
工具—>宏—>安全性
将安全性设置为中,这样在以后的使用中就可以加载自己编写的宏了。
设置成功后点击确定,然后工具—>宏—>Visual Basic编辑器,在弹出的窗口点击插入—>模块,即进入了编写环境。
选中相应的模块点击文件—>导出文件,就可以存储.bas的源文件。这样就可以方便存储整理,以便日后引用。
2.宏的概念与Visual Basic基础
有VB编程基础的同学可跳过此章。
宏实际上就是一段用以完成某些功能的源代码,Excel中的
宏以Visual Basic(以后简称VB)编写,存储后的.bas文件可以用记事本打开,里面记录的就是编写的代码。
VB是一门高级编程语言,其语法简单易于掌握,适合初学者学习。本教程中只对VB进行初步讲解,如果需要深入学习请参照VB相关的专门书籍(Visual Basic编辑器中的帮助也有详细介绍)。
顺序、选择、循环是编程的三种结构,合理组合嵌套这三种结构就可以解决所有编程问题。默认情况下,代码按照顺序结构执行,所以下面只介绍选择和循环结构的语句表达。
选择结构:
选择结构非常常见,它的作用是使程序根据条件的不同执行不同的语句。这里我们只介绍最简单的一种语句。
If condition Then [statements] [Else elsestatements]
或者
If condition Then
[statements]
[ElseIf condition-n Then
[elseifstatements] ...
[Else
[elsestatements]]
End If
注释:condition:条件表达式;statements:执行语句;[]中的内容为可选内容。
第一句为写在一行的选择语句,其表达的意思如英文一样就是“如果……就……否则……”,黑体的“If”“Then”是关键词必不可少,后面“[]”中的“Else”为可选项。下面的语句为多行表达的形式,要注意回车的位置和结尾处加上“End If”。还需要注意的是关键字后面一定要加空格或回车。具体用法将在后文的实例中介绍。
循环结构:
循环结构适合嵌套使用,这里只介绍固定次数循环语句,如需了解条件循环,请参考VB相关书籍。
For counter=start To end [Step step]
[statements]
[Exit For]
[statements]
Next [counter]
例:
For i = 1 To 10 Step 1
…
Next i
“For”“To”“Step”“Exit For”“Next”都为关键字,其中“For”“To”“Next”必不可少。以上面例子做为讲解。例中语句的意思为“使得i首先等于1,然后执行…的内容,接着使i自身增加1,再执行…的内容,一直到i等于10,最后执行…
的内容后,停止循环,进入下一条语句”。本例中…的内容一共执行了10次。“Step”后面的数为每次i增加多少,如果不写“Step”则默认每次加1。最后i等于11。这里的i实际上就是人为定义的一个变量,下面介绍变量的概念。
变量:
变量实际上就是用字母汉字等标识代表一个“数”,而这个“数”在计算过程中也是可以变化的(与常量相反),命名的原则和“数”的类型,参考VB相关书籍。这里推荐用字母串或汉字(不要与VB关键字相同)命名变量。下面讲解变量基础知识。
1)变量的声明:
Dim abc
虽然VB容许不用事先声明变量,但是为了程序易读,在我们使用变量前都要对它进行声明。上面的语句的意思就是“声明了一个叫做abc的变量”。
2)变量的赋值:
abc = 10
abc = abc + 5
变量赋值不同于方程计算,它的顺序是先计算等号右边表达式的值,然后再赋给等号左边的变量(等号左边一般情况下只允许是一个变量)。上式第一句的意思是“把10赋予变量abc”。执行完这句后变量abc的值就是10。下一句的意思是“先计算
等号右边变量abc加5的值,然后再把值赋给变量abc”。先计算变量abc加5为15,然后再把15赋给变量abc。所以最后abc 的值是15。
3)变量的计算:
上面已经提到变量的“+”运算,需要说明的是等号右边的表达式不仅可以是变量和数的运算,也可以是变量和变量的运算,且变量和数的个数理论上没有限制。所以我们学过的四则运算“+”“-”“*”“/”,还有括号“()”乘方“^”等都可以运用(括号必须是半角英文(),乘方3^5表示35)。当然还有其他运算需要大家自学。
4)变量的比较:
在选择语句中,“If”后的条件表达式需要用到比较,简单的有大于“>”、小于“<”、等于“=”、大于等于“>=”、小于等于“<=”、不等于“<>”。具体应用见下一章实例。
有了以上的知识我们就可以进行实例的讲解了,但是由于省略了大量VB的内容,所以这就要求大家在以后的学习实践中循序渐进地补充VB编程知识。
3.自定义函数实例讲解
例1.