【问题标题】:How do I change decimal dot into decimal comma?如何将小数点更改为十进制逗号?
【发布时间】:2020-11-28 14:04:13
【问题描述】:

我有一列包含混合小数分隔符的数字。

我需要使用“,”作为分隔符。

如何将点变成逗号?

With ThisWorkbook.Worksheets("RAW").Range("A1")
    .Value = Replace(.Value, ".", ",")
End With

点存储为文本

有没有办法将它存储为通用/数字?

我试过了

With ThisWorkbook.Worksheets("RAW").Range("A1")
    .NumberFormat = "General"
    .Value = Replace(.Value, ".", ",")
    .NumberFormat = "General"
    .Value = .Value
End With

【问题讨论】:

  • 我收到错误:类型不匹配 :(
  • 是的,对不起。只是错字
  • @JvdV 你能看看我下面的答案吗?

标签: excel vba decimal separator


【解决方案1】:

单个单元格可以通过以下方式快速而肮脏地解决:

.Value = Replace(.Value, ".", ",")*1

或者:

.Value = CSng(Replace(.Value, ".", ","))

如果你碰巧有一个范围要处理,你可以使用:

Sub Test()

With ThisWorkbook.Worksheets("RAW").Range("A1:A3")
    .Replace ".", ","
    .TextToColumns
End With

End Sub

每列:

Sub Test()

With ThisWorkbook.Worksheets("RAW").Range("C2:D4")
    .Replace ".", ","
    For Each col In .Columns
        col.TextToColumns
    Next
End With

End Sub

【讨论】:

  • 好的,但我收到错误:“Microsoft Office Excel 一次只能转换一列。范围可以是多行高,但不超过一列宽。选择一列中的单元格再试一次only" 如何遍历多列?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-20
相关资源
最近更新 更多