我最近查看了Microsoft的一些vba源代码:[将分数转换为十进制值] [1]
[1]:https://support.microsoft.com/en-us/kb/185424我注意到有几个函数有一个尾随的“$”,特别是修剪$(),左边是$(),另一个是$()。我的问题是:“$”表示什么?
我下载了微软功能,并在Excel 2007下正确运行。
由于VBA trim()与工作表函数trim()的工作方式不同,我编写了一个小程序来比较3个可能的trim()调用的操作。我发现trim()和trim $()产生了相同的输出。当然,worksheetfunction.trim()会生成从字符串内部删除多余空格字符的输出。
我对尾随的“$”非常好奇,并且会对启蒙感激不尽!
谢谢你, 戴夫
答案 0 :(得分:4)
引用https://bytes.com/topic/access/answers/196893-difference-between-left-left-function
Allen Browne
尾随$是String数据类型的类型声明字符
VBA。
从Left $()返回的结果是一个字符串,而Left()返回一个
变种。
如果有任何Null值,你必须使用Left(),而不是Left $(),
因为Variant可以是Null但字符串不能。
该帖子有一个完整的例子
答案 1 :(得分:2)
语法是古代历史遗留下来的习惯。在早期版本的Basic变量中不必声明,但数据类型由变量名称隐含。任何以$结尾的变量都是一个字符串,任何以%结尾的变量都是一个整数。
FORTRAN有一个类似的约定:任何以字母I,J,K,L,M或N开头的变量都是整数,其他都是真实的。