EXCEL自定义函数 2013excel自定义函数

在工作中有时会遇到在编写公式时,找不到适合的EXCEL内置函数,或者虽然可以使用内置函数,但会造成公式复杂不易理解,这时就可以考虑使用自定义函数了。
编写自定义函数需要一定的VBA基础,但完成后,就可以像使用内置函数一样方便了,任何人都可以使用。EXCEL自定义函数——工具/原料
excelEXCEL自定义函数——步骤/方法

EXCEL自定义函数 1、

下面通过一个例子来学习简单的编写自定义函数


EXCEL自定义函数 2、


例:下面表格中需要计算一些三角形的面积


EXCEL自定义函数 3、

B列是底边长,C列是高,要求在D列通过公式计算三角形面积。

EXCEL自定义函数 4、


(通常我们会在D3单元格用公式 =B3*C3/2 来计算,然后把这个公式向D列下方拖动复制,得到其他公式。这只是一个简单的例子,通过它来学习编写简单的自定义函数)


EXCEL自定义函数 5、
1、打开VBA窗口
按ALT+F11调出VBA窗口,插入一个用户模块。

EXCEL自定义函数 6、
2、编写代码
通常自定义函数是用function命令开始的,在这个命令后面给它指定一个名字和参数
把下面这个自定义函数代码粘贴到刚插入的用户模块中就可以使用了。
Function sjxmj(di, gao)
sjxmj = di * gao / 2
End Function

这段代码非常简单只有三行,先看第一行,其中sjxmj是自己取的函数名字,括号中的是参数,也就是变量,di表示“底边长”,gao表示“高”,两个参数用逗号隔开。
再看第二行,这是计算过程,将di*gao/2这个公式赋值给sjxmj,即自定义函数的名字。
再看第三行,它是与第一行成对出现的,当你手工输入第一行的时候,第三行的end function就会自动出现,表示自定义函数的结束。


EXCEL自定义函数 7、
3、使用自定义函数
回到EXCEL窗口,我们在D3单元格中输入公式 =sjxmj(b3,c3) ,就会得到这一行的三角形面积了,它的使用方法同内置函数完全一样。

EXCEL自定义函数_excel函数


EXCEL自定义函数 8、
通过上面例子可以了解自定义函数的编写和使用方法,下面再介绍一个稍微复杂点的自定义函数。

经常对数据进行处理的朋友可以会遇到多条件查找某一个数据,一般这种情况需要编写“数组公式”来解决,公式较长,也不易理解。


比如下面统计成绩的表格,需要根据A1:D7的成绩表,统计出两门功能都在90分以上的学生人数。


大家可以看到在H3单元格中的公式比较长,理解起来也有一定难度。
我们通过自定义函数也可以得到正确结果,函数代码如下:

Function 统计(a, b, c, d, e)
For i = 1 To a.Rows.Count
If b = a.Cells(i, 1) And a.Cells(i, c) >= e And a.Cells(i, d) >= e Then
统计 = 统计 + 1
End If
Next
End Function


这个函数用了五个参数(因为涉及到一个区域和四个条件)
参数a表示要统计的区域,在此例中为B2:E7
参数b表示要统计的是哪一个班级,在此例中为G3单元格
参数c表示数学成绩相对于区域第一列向右的列数,在此例中为3
参数d表示数学成绩相对于区域第一列向右的列数,在此例中为4
参数e表示分数,在此例中为90分
提示:要注意参数c和d“相对”于“区域”的列数,并非是从A列开始向右的列数。
把上面这段代码也粘贴到用户模块中就可以使用了


回到EXCEL窗口,在H3单元格中输入公式 =统计($B$2:$E$7,G3,3,4,90) 就可以显示正确结果了。

Function 统计2(a, b)
For i = 1 To a.Rows.Count
If b = a.Cells(i, 1) And a.Cells(i, 3) >= 90 And a.Cells(i, 4) >= 90 Then
统计 = 统计 + 1
End If
Next
End Function


在表格中的H3单元格中输入公式 =统计2($B$2:$E$7,G3) 就可以了。


从上面可以看出,自定义函数可以使用“汉字”做为函数的名字,方便记忆,也可以根据实际情况对参数进行简化。


EXCEL自定义函数 9、

通常这种时候需要在H3单元格使用数组公式 =SUM(IF(($B$2:$B$7=G3)*($D$2:$D$7>=90)*($E$2:$E$7>=90),1,0))

EXCEL自定义函数 10、

提示:
EXCEL自定义函数 2013excel自定义函数
如果我们的成绩表格式是固定的,各科目成绩位置相对于区域也是固定的,而且要统计的分数也是固定的90分,就可以在自定义函数中将参数的数量减少到两个,如下:

  

爱华网本文地址 » http://www.aihuau.com/a/25101010/11074.html

更多阅读

excel标准差函数 excel概率标准差函数

excel标准差函数——简介excel怎么求一系列数据的标准方差呢?请往下看excel标准差函数——工具/原料excelexcel标准差函数——stdev函数excel标准差函数 1、STDEV函数估算的标准偏差是基于样本的,这里标准偏差的计算使用“n-1”方

用EXCEL的函数公式开方,开根号 excel的开方函数

用EXCEL的函数公式开方,开根号——简介有时需要通过开根,开放计算一些体积,流量,空气阻力等,用计算器不是太方便,这儿我们可以通过EXCEL的函数公式开方,开根号,很方便,很实用用EXCEL的函数公式开方,开根号——工具/原料

Excel技巧之——DATEDIF函数 excel没有datedif函数

Excel技巧之——DATEDIF函数——简介DATEDIF函数是一个excel中隐藏的、但功能非常强大的日期函数,主要用于计算两个日期之间的天数、月数或年数。Excel技巧之——DATEDIF函数——工具/原料excelExcel技巧之——DATEDIF函数——方法

Excel2013格式刷快捷键定义方法 excel自定义快捷键

Excel2013格式刷快捷键默认是没有的,不过喜欢使用快捷键的朋友,可以通过这个小技巧,这样在用到格式刷的时候就不需要到界面上去找,而只需按下一个快捷键,虽然这个快捷键是根据一定的程式写出来的,不过非常有用。第一步:右键点击格式刷,点击

Excel常用函数 excel表格的函数应用

Excel 是微软办公套装软件的一个重要的组成部分,它可以进行各种数据的处理、统计分析和辅助决策操作,广泛地应用于管理、统计财经、金融等众多领域。Excel中大量的公式函数可以应用选择,使用Microsoft Excel可以执行计算,分析信息并管

声明:《EXCEL自定义函数 2013excel自定义函数》为网友最终狂暴分享!如侵犯到您的合法权益请联系我们删除