《【Excel实例】自定义函数实例之一:素数的判断.doc》由会员分享,可在线阅读,更多相关《【Excel实例】自定义函数实例之一:素数的判断.doc(5页珍藏版)》请在三一办公上搜索。
1、【Excel实例】自定义函数实例之一:素数的判断Excel得到大家的普遍欢迎,除了操作简便,通用性强外,函数也是其亮点之一。但长期使用的过程中,你会发现当某些功能需要函数来实现时,却找不到对应的函数。也无法用函数组合的方法实现。这就造成了相当的苦恼,有的通过手动来完成,有的干脆就算了。其实,许多Excel没有的函数,可以通过我们自定义来解决,这相当于扩展了Excel的功能。而且使用起来要本身自带的函数一样,没有什么分别。怎样使用自定义函数呢?有些人把这个看得很高深,其实不然。你只要有一点编程基础,最好是VB的编程基础,就可以搞定的。使用自定义函数的方法很简单,现在我们以一个的实例来进行。这个实
2、例是判断单元格数值是否是素数一、准备一个表格。首先建立如下图所示的表格,为后面的自定义函数的讲解作准备。二、进入Visual Basic编辑器要自定义函数,就要写自定义函数的代码(以VB为基础),代码写在什么地方呢,只能写在Visual Basic编辑器里。单击Excel菜单栏中的“工具”“宏”“Visual Basic编辑器”,如果找不到参见下面的图。单击后进入Visual Basic编辑器的界面,如下图所示:三、新建一个模块。进入Visual Basic编辑器后,代码写在什么地方呢?很简单,写在模块里。单击菜单栏上的“插入”“模块”命令,如下图所示。新建一个模块1,并自动产生代码窗口,如下
3、图所示:四、输入自定义函数的代码。学习过VB的人都知道,如何自定义函数。就是用Function来定义。具体代码不详细讲解,有基础的都能看懂。我自定义的函数名称为PRIMES,数据类型为String,有一个参数R,数据类型为Range。Range这种类型用于引用单元格对象。设计好的自定义函数的代码如下,复制到代码窗口就行了Function PRIMES(R As Range) As String Dim N As Long Dim i As Long PRIMES = 否 N = Int(R.Value) If N 2 Then Exit Function N = Sqr(N) For i =
4、2 To N If R.Value Mod i = 0 Then Exit Function Next i PRIMES = 是End Function代码图如下:五,返回Excel,就可以使用该函数了。怎么返回呢?很简单,单击一下Excel图标就成了。如下图所示的图标:然后在后面的单元格里输入此函数就能出结果了。效果如下图所示:怎么样,是不是成功了!程序准确地判断了哪些是素数,哪些是合数。你试一下,也行的。特别说明:保存后,再打开,Excel2003会问你是否“启用宏”,一定要启用宏才行,每次都是这样。如果是Excel2010则可以直接保存为启用宏的文件,不必每次都询问,方便很多。还有一点,如果你的宏安全性设置为高或非常高也是不能使用自定义函数的,请设置为中。如下图所示