如何在VBA中使用子字符串? (使用子字符串将字符串转换为小数)

时间:2017-03-31 09:28:14

标签: vba string type-conversion format

我试图从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))

我很欣赏任何提出更好解决方案的建议。我所需要的只是一个输出(理论上)是没有货币符号的价格。

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)