【原创】VBA学习笔记(4)VBA函数 和 worksheetfunction工作表函数 | 您所在的位置:网站首页 › vba中debug是什么意思啊 › 【原创】VBA学习笔记(4)VBA函数 和 worksheetfunction工作表函数 |
一 EXCEL和VBA的3种函数
1.1 EXCEL和VBA
VBA是寄生在EXCEL里的VBA有自己的原生函数 VBA.VBA的Application===EXCEL,本身各有很多各种函数。
1.2 VBA涉及的函数种类 1.2.1 第1类: VBA函数 VBA的函数: VBA内置函数,用户自定义函数: 写法可以省略vba. VBA.trim()trim() 1.2.2 第2类,Application下的函数 EXCEL对象(Application对象) 函数: 内置工作表函数,内置数组公式: 基本上Application后面可以跟所有的Excel函数,而application.workfunction则不能。写法只有1种Application.如application.match 1.2.3 第3大类,Application.worksheetfunction ,Application下工作表函数的再封装 Application.worksheetfunction. 只有一部分函数可用具体写法,可以省略application,不能省略 worksheetfunction.Application.worksheetfunction. worksheetfunction. 1.2.4 三者的关系 1.2.5 差别举例 下面2个函数,用起来是不一样的 Sub test_ponyma1() '这2个函数居然不一样,待查 Debug.Print Application.Match(1, Range("a1:a10")) 'Debug.Print WorksheetFunction.Match(1, Range("a1:a10")) End Sub1.2.6 其他函数:如EXCEL表用的公式,自定义函数等等 其他函数1: EXCEL公式EXCEL工作表函数:工作表函数,数组公式等只能在EXCEL,公式时用 其他函数2:自定义函数自己写的,可以用在VBA里,还可以用在EXCEL里直接使用 ,如在EXCEL里输入 = func1() 二 几种函数语法和使用范围 2.1 VBA函数和 worksheetfunction 同名函数,实际是完全不同的函数,一般功能不同 比如 vba.trim() 或 trim() 只去掉头尾的空格Application.trim() 会去掉字符串中间的空格,只保留1个2.2 VBA函数写法 Vba函数语法写法1:trim()写法2:VBA.trim()例子如 Cells(1,1)=round(range(“c1”),0) 2.3 VBA函数特点? 不能直接修改EXCEL单元格里的值? 2.4 封装层数越少,效率越高, 更应该用 Application. 参考资料:https://zhidao.baidu.com/question/1496170563121388179.html 1层封装 application. application.trim()运行速度更快而且application. 函数比 worksheetfunction 封装的内置函数更多这么说,更应该用 application.trim()
2层封装(中间包了worksheet层) Application.worksheetfunction.trim()worksheetfunction.trim()多一个封装,那么运行所耗的时间也要长一些。2.5 工作表函数特点和使用范围 worksheetfunction 只能针对1个单元格?worksheetfunction 能用数组公式吗?这个应该是针对多单元格的 2.6 实测 msgbox(Application)application.worksheetfunction.counta(range("a:a"))application.sum(range("a:a"))application.sum([a;a])application.sum(indirect("a1")) 错误写法 application.worksheetfunction.counta(a:a)application.worksheetfunction.counta("a:a")application.sum(a;a)application.sum("a;a")application.sum("a1")三 资料:几类函数大全 3.1 VBA函数 这个帖子总结了很多VBA函数 https://blog.csdn.net/cactusz/article/details/74561682 3.2 工作表函数 http://blog.sina.com.cn/s/blog_4084a6160101nra0.html
|
CopyRight 2018-2019 实验室设备网 版权所有 |