VBA编程,如何返回字符串中的数值,Val函数介绍
No.1
如果想要把一个字符串里的数字找出来,怎么做更好?
这个方法可以,但不能完美解决问题。
Val函数是以适当类型的数值格式返回字符串中的包含的数字。
既然是适当的类型,那么就有不适当的类型。
如何来理解本函数的功能,下面以一个示例来解释一下,如下图所示:
No.2
Val函数应用规则:
- Val函数将在字符串无法识别为数字一部分的第一个字符处停止读取该字符串。
- 不能识别通常被视为数值的一些符号和字符(例如美元符号和逗号)。
- 但是, 可以识别数值前缀&O (八进制) 和&H (十六进制)。
- 空白、制表符和换行符将从参数中删除。
上面是Val函数重点注意的几点,要特别记住。
下面看一下本示例的代码,仅仅几行,但要和上面表格相配合才可以正常使用。
Private Sub CommandButton1_Click()Dim R As Range, xR As RangeSet R = ActiveSheet.Range('C5:C10')For Each xR In R xR.Offset(0, 2).Value = Val(xR.Value)Next xREnd Sub
No.3
Val使用方法就很简单了。
Val('String')
'Strin'代表'字符串'。
如:
Dim Str as String
Str='88 55AB CD88'
Msgbox Val(Str)
输出8855。
为什么是8855,首先,它只输出数字,其次空格会自动删除,遇到字母停止输出。
所以,只有前四位数字输出,后面的88,就拜拜了。
如此考虑,实际应用中,Val函数具有验证字符串里是否包含数字的功能。
有兴趣的你可以做一个试试。
赞 (0)