加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

VBA如何自定义函数及使用、添加说明、分类

(2017-09-06 10:13:13)

'1 什么是自定义函数?

'在VBA中有VBA函数,我们还可以调用工作表函数,我们能不能自已编写函数呢?可以,这就是本集所讲的自定义函数

'2 怎么编写自定义函数?

 '我们可以按下面的结构编写自定义函数

  ' Function 函数名称(参数1,参数2....)

       '代码

       '函数名称=返回的值或数组

  ' End Function 

'1 怎么让自定义函数在所有工作簿中使用?

 '答: 把含有自定义函数的文件另存为加截宏,然后通过工具-加截宏-浏览找到这个文件-确定。

'2 怎么给自定义函数添加说明

  '工具-宏-宏名输入自定义函数的名称-选项--在说明栏中写入这个函数的名称

'3、怎么给自定义函数分类

  Sub 分类()

   Application.MacroOptions "不重复个数", Category:=4

  End Sub

 '注:

       '0 是全部

       '1 财务

       '2 日期和时间

       '3 数学和三角

       '4 统计

       '5 查找和引用

       '6 数据库

       '7 文本

       '8 逻辑

       '9 信息

'1 取得工作表总个数的自定义函数

Function shcount()

shcount = Sheets.Count

End Function

Sub dd()

MsgBox getv(Range("a7"))

End Sub

'2 取得单元格显示值的自定义函数

Function getv(rg As Range)

  getv = rg.Text

End Function

'3 截取字符串的函数

Function jiequ(sr As String, fh As String, wz As Integer)

  Dim Arr

  Arr = Split(sr, fh)

  jiequ = Arr(wz - 1)

End Function

'4 提取不重复值的个数

Function 不重复个数(rg As Range)

 Dim d, Arr, ar

 Arr = rg

 Set d = CreateObject("scripting.dictionary")

 For Each ar In Arr

   d(ar) = ""

 Next ar

 不重复个数 = d.Count

End Function

Sub test()

MsgBox jiequ("A-BRT-C-EF", "-", 2)

End Sub


http://www.topdf.cn/imgtobmp

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有