我有 1 列,应包含金额,但其格式不正确,并且被视为文本。
因此,需要将点替换为空,然后将逗号替换为点。我有代码:
Private Sub Correction_of_dot()
Dim i As String
Dim k As String
i = "."
k = ""
Columns("P:P").Replace what:=i, replacement:=k, lookat:=xlPart, MatchCase:=False
End Sub
Private Sub Correction_of_comma()
Dim i As String
Dim k As String
i = ","
k = "."
Columns("P:P").Replace what:=i, replacement:=k, lookat:=xlPart, MatchCase:=False
End Sub
Run Code Online (Sandbox Code Playgroud)
但它什么也没做...没有错误,只是加载,然后什么也没有发生。你能告诉我,我做错了什么或者我可以做得更好吗?
非常感谢!
根据我的区域设置,点用作小数分隔符,逗号用作千位分隔符。话虽如此,以下代码对我有用并产生预期的输出。
为了测试代码,我从网页复制了数字并粘贴到工作表上,它们如下所示......
代码:
Sub Test()
With Range("P:P")
.Replace ".", ""
.Replace ",", "."
.NumberFormat = "0.00"
End With
End Sub
Run Code Online (Sandbox Code Playgroud)
输出: