我试图从Excel表格中的单元格中拉出一个String并将其转换为Double。之后,我想将Double格式化为货币并删除货币符号。
不幸的是,我总是收到错误
运行时错误424:对象必需
Dim price_right_str As String
Dim price_right As Double
price_right_str = ActiveSheet.Cells(a, b_new).Value
price_right = CDbl(Val(price_right_str))
price_right_str = FormatCurrency(price_right, 2)
price_right_str = price.Substring(1, (Len(price_right_str) - 1))
我很欣赏任何提出更好解决方案的建议。我所需要的只是一个输出(理论上)是没有货币符号的价格。
答案 0 :(得分:2)
VBA没有名为SubString()
的字符串函数。而是使用Right(str)
,Mid(str)
或Left(str)
。
正如@ YowE3K在评论中提到的,这就是答案:
price_right_str = Mid(price_right_str, 2)
或price_right_str = Left(price_right_str, Len(price_right_str) - 1)