设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2949|回复: 4
打印 上一主题 下一主题

[其它] 鲜为人知的2个VBA小技巧

[复制链接]
跳转到指定楼层
1#
发表于 2011-4-19 21:53:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
        不少人可能都听说过使用Len函数判断字符串是否为空时,使用 Len(strTemp) = 0 的方式判断要比 使用 strTemp = "" 这样的方式效率高很多这样的说法,但是为什么会如此可能知道的人就少的很了。
    那么这是什么原因呢?原来,在VBA中,存储一个字符串时,总是在这个字符串的开头以长整数存储其长度,用Len函数取字符串长度时,是直接读取的这个长整数值,所以速度非常快!
    不过 Len(strTemp) = 0 的可读性可能不如 strTemp = "",所以在不影响性能的前提下,为了增强代码的可读性,可以考虑使用 strTemp = ""。

    在代码中,不使用整型(Integer)变量,而是全部使用长整型(Long)变量,因为除了最早期的版本,现在的VBA版本中,VBA把所有的整数都转换为了长整型(即使被声明为整型),所以即使你声明为整型,系统还会先将其转换为长整型再进行计算处理,而直接声明为长整型,省去了转换的步骤。


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享分享 分享淘帖 订阅订阅
2#
发表于 2011-4-19 22:20:49 | 只看该作者
看好的vba知识 谢谢红尘了 上次的安装维修记录管理例文很多东西 还在学习中 呵

点击这里给我发消息

3#
发表于 2011-4-20 10:50:50 | 只看该作者
学习,很好的技巧
4#
发表于 2015-7-24 22:25:01 | 只看该作者
红尘如烟 心思细腻,这小技巧也被您发现了,历害!

点击这里给我发消息

5#
发表于 2015-11-12 13:11:38 | 只看该作者
看好的vba知识 谢谢红尘了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-12 07:22 , Processed in 0.081322 second(s), 29 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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