val函数有什么用?

如题所述

val是一个将字符串参数转换成数值的函数,字符串参数中一般要含有数字,且以数字开头,val函数才会将其中的数字转换成适当的数值。

它能识别小数点和进位符号:&O和&H。但它不能识别可能作为数值一部分的符号和字符,例如美元符与逗号。参数中的空白符、制表符和换行符会被去掉。如果字符串不能转换为数值,将返回0。

val过程:

用法:Val(S,V,Code);

含义:将字符串S转换成与V相同的数值类型并赋值给V,如果字符串中有非数字,则V:=0,Code用于返回非数字字符的位置。

使用例子:

text1.text = "10"

text2.text = "11"

text3.text = text1.text+text2.text

按道理应该得到10+11(结果是21),但返回的是1011,这个是因为运算时候是字符运算。

text1.text = "10"

text2.text = "11"

text3.text = val(text1.text)+val(text2.text)

这样就返回21了 因为这里不是计算"11"+"12"而是计算11+12 前者等同于"11" & "12"。

如果是字符串或者空格会返回一个0,所以可以利用这一点过滤字符只能输入数字 。

扩展资料

Val 函数,在它不能识别为数字的第一个字符上,停止读入字符串。那些被认为是数值的一部分的符号和字符,例如美圆号与逗号,都不能被识别。但是函数可以识别进位制符号 &O(八进制)和 &H(十六进制)。空白、制表符和换行符都从参数中被去掉。

下面的返回值为 1615198:

Val(" 1615 198th Street N.E.")

在下面的代码中,Val 为所示的十六进制数值返回十进制数值 -1。

Val("&HFFFF")

注意 Val 函数只会将句点(.)当成一个可用的小数点分隔符。当使用不同的小数点分隔符时,如在国际版应用程序中,代之以 CDbl 来把字符串转换为数字。

参考资料:百度百科-Val函数

温馨提示:答案为网友推荐,仅供参考
相似回答