VB语言中的val函数是什么意思?如何使用?

如题所述

Val函数
返回包含于字符串内的数字,字符串中是一个适当类型的数值。

语法

Val(string)

必要的 string 参数可以是任何有效的字符串表达式.

说明

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

下面的返回值为 1615198:

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

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

Val("&HFFFF")

注意 Val 函数只会将句点(.)当成一个可用的小数点分隔符。当使用不同的小数点分隔符时,如在国际版应用程序中,代之以 CDbl 来把字符串转换为数字。
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-03-09
val(x)就是把字符串x开头的数取出来成为数值型数据
这样才能把字符串型的数那来计算
否则电脑就要报告错误
例如:x="3人行"
你想计算3+5
打入:print x+5
就会报错,因为一串符号"3人行"和一个数5怎么相加呢
这时val就有用了:val(x)把符号"3"变成了数值3,就可以和5相加了
打入:print val(x)+5
就得到结果8
当然了,如果字符串x不是数开头,val(x)就默认是0
第2个回答  2018-03-09
将一个数据行变量转换成数字长整型变量

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 所以可以利用这一点过滤字符只能输入数字
第3个回答  2018-03-09
将一个数据行变量转换成数字长整型变量

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 所以可以利用这一点过滤字符只能输入数字
第4个回答  2018-03-09
Val函数
返回包含于字符串内的数字,字符串中是一个适当类型的数值
相似回答
大家正在搜