自定义函数功能的存在是为了弥补内置函数的不足或者某些低版本函数不支持的情况。自定义的实现依托于VBA的支持,就是用function写一个可以实现功能的(程序)。
例子比较简单,计算三角形面积,在Excel里直接写 =(底*高)/2
这是一个公式并不是函数,在需要用到函数计算时,只需要输入函数名和参数即可,它的运算过程是不会体现出来的,sum(A1:A3),这个函数就是函数名就是SUM参数就是括号的里数据范围。
接下来看如何自定义出三角形面积的函数。
打开visual basic编辑界面
加载开发工具,文件-Excel选项-自定义功能区-勾选开发工具(WPS需要安装 VBA for WPS插件)

点击上方开发工具选项-visual basic,或者按快捷键ALT+F11

打开后默认是这样的界面,画红色框线部分是当前打开的工作簿工程。

新建模块编写代码
点击上方插入菜单-模块,右边会自动出现一个白色区域用来编写代码。

编辑区输入代码:(图片里)
Function TS(d, h) '三角形triangle,面积=底*高/2 TS = d * h / 2End Function
实际就三行(第2行是注释,不执行,删除不影响),真正有用的就一行,function 表示定义了一个函数,TS是函数名,括号里的是参数(可以其他字母代替),end function表示语句结束。

返回Excel使用函数
直接返回Excel,在任意单元格输入=TS 就会出现函数,然后输入参数即可。

三角形底3 高4,面积=3*4/2=6

参数也可以引用单元格

网友评论