Arrays 在Excel VBA中解析货币值

Arrays 在Excel VBA中解析货币值,arrays,vba,excel-2010,Arrays,Vba,Excel 2010,好的。。。我想我的大脑今天终于不用我去度假了。我从一个网站中提取了2个字段,得到了这个字符串 vData = "Amount Owed [EXTRACT]$125.00[EXTRACT] vData已声明为数组(字符串) 我在[EXTRACT]上拆分了vData,最后得到了如下两个字符串变量: varA = "Amount Owed" varB = "$125.00" 要解析varB,我使用 Dim varC as Currency varC = val(varB) 我想在If语句中使用v

好的。。。我想我的大脑今天终于不用我去度假了。我从一个网站中提取了2个字段,得到了这个字符串

vData = "Amount Owed [EXTRACT]$125.00[EXTRACT]
vData
已声明为数组(字符串)

我在
[EXTRACT]
上拆分了
vData
,最后得到了如下两个字符串变量:

varA = "Amount Owed"
varB = "$125.00"
要解析
varB
,我使用

Dim varC as Currency
varC = val(varB)
我想在
If
语句中使用
varC

If Val(VarC) <> 0 Then
如果Val(VarC)为0,则
我原以为
varC
是125,但当我看
varC
时,它是0。我不明白为什么
varC
=0而不是125。

使用
CCur(varB)
而不是
Val(varB)
CCur
转换为
货币
类型,因此了解
$
和其他信息

委员会的解释:

。。。使用
CCur
时,根据计算机的区域设置,可以正确识别不同的十进制分隔符、不同的千位分隔符和各种货币选项

Val
是:

Val
函数在无法识别为数字一部分的第一个字符处停止读取字符串。通常被视为数值组成部分的符号和字符(如美元符号和逗号)无法识别


@cxw…………感谢您提供的信息和建议。我想我过去用过“val”(没有$符号),所以它可能给了我想要的号码。