Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2116|回复: 0

跟着校长学VBA之第30集:自定义函数1

[复制链接]
发表于 2013-1-21 22:26 | 显示全部楼层 |阅读模式
本帖最后由 hwc2ycy 于 2013-1-21 22:31 编辑

一、什么是自定义函数。
EXCEL里有工作表函数,VBA时有VBA函数。
那自定义函数,顾名思义,就是EXCEL自身没有提供由使用者自行编写的函数。

如何编写自定义函数呢。

通过FUNCTION语句声名  Function 过程的名称,参数以及构成其主体的代码。

语法
[Public | Private | Friend] [Static] Function name [(arglist)] [As type]
[statements]
[name = expression]
[Exit Function]
[statements]
[name = expression]
End Function

如果使用 Call 语法来调用内建函数或用户定义函数,则函数的返回值将被丢弃
由于定义函数涉及的知识点很多,可以看看F1。

二、 自定义函数的常见问题
1 怎么让自定义函数在所有工作簿中使用?
   把含有自定义函数的文件另存为加截宏,然后通过工具-加截宏-浏览找到这个文件-确定

2 怎么给自定义函数添加说明
工具-宏-宏名输入自定义函数的名称-选项--在说明栏中写入这个函数的名称
Application.MacroOptions方法中的Description参数

3、怎么给自定义函数分类
Application.MacroOptions方法中的Category参数
Integer类别
1财务
2日期与时间
3数学与三角函数
4统计
5查找与引用
6数据库
7文本
8逻辑
9信息
10命令
11自定义
12宏控件
13DDE/外部
14用户定义

实例,反回某个单元格的公式,如果单元格不含有公式或或者参数中的单元格不止一个,则返回空值
  1. Function GetFormula(ByVal rg As Range) As String
  2.     If rg.Count <> 1 Then Exit Function
  3.     If rg.HasFormula Then GetFormula = rg.FormulaLocal
  4. End Function
复制代码
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-9-21 11:50 , Processed in 0.607717 second(s), 6 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表