好吧,我现在很困惑,我写了一些VBA,它是Excel中的一个插件。有一行内容如下:
obsValue = CDbl(dataSplit(1))
dataSplit(1)
的值是字符串21440.5395043259
这行代码对我来说工作正常。 对于我的代码的另一个用户,他们得到 p>
Run time error '13:' Type mismatch.
他们单击“调试”,将他们带到这行代码,然后将光标悬停在 dataSplit 变量上,它确实读取了与上面相同的值。
我们都使用 Excel 2010。
怎么会这样?
最佳答案
Excel 的语言设置将决定小数点分隔符是什么。对于您的用户来说,他们的语言设置似乎不同,因此“。”可能被视为千位分隔符。 CDbl
函数可识别区域设置,因此它根据当前用户的区域设置“看到”数字字符串。
您可以尝试使用 Val
函数,该函数始终将句点视为小数分隔符。
obsValue = Val(dataSplit(1))
关于VBA 类型不匹配错误 - 不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44133453/