如何用“。”格式化日期。还是vba中的“ /”或“-”?

时间:2019-04-23 18:29:27

标签: excel vba

在VBA中,我试图将单元格C3中的日期格式设置为“ 01.30.18”到“ MM / DD / YYYY”。

有时在同一单元格中,我的值是: “ 01.30.18”或“ 01/30/18”或“ 01/30/2018”。

我需要创建一个公式,以将要在此单元格中接收的值格式化为“ mm / dd / yyyy”。

我尝试了cDate或Format函数,但是没有用 :

  Dim strBalancingBy As String

  Range("C3").Select

  strBalancingBy = ActiveCell.Value

   ActiveCell.Value = Format(DateValue(strBalancingBy), "mm/dd/yyyy")

给我错误的结果=“ 12/30/1899”。

OR

ActiveCell.Value = CDate(strBalancingBy)

给我错误的结果=“ 1/0/1900 1:30:18 AM”

有人可以在vba中帮我解决这个问题吗?

我希望结果=“ 01/30/2018”

1 个答案:

答案 0 :(得分:1)

.替换为/

With Range("C3")
    .Value = DateValue(Replace(.Value, ".", "/"))
    .NumberFormat = "mm/dd/yyyy"
End With