String VBA-转换为日期

String VBA-转换为日期,string,vba,excel,date-conversion,String,Vba,Excel,Date Conversion,我还有一个问题: 我想在VBA中将字符串转换为日期 字符串看起来像:YYYY-DD-MM 日期应为:DD.MM.YYYY 我知道,通常使用方法cdate()来实现这一点,但它在这里不起作用。 我想这是因为字符串的结构不好转换 谢谢你的帮助 信息库 Sub Main() Dim strDate As String strDate = "2013-06-11" Debug.Print "Original Date: ", strDate Debug.Print "

我还有一个问题:

我想在VBA中将字符串转换为日期

字符串看起来像:YYYY-DD-MM

日期应为:DD.MM.YYYY

我知道,通常使用方法cdate()来实现这一点,但它在这里不起作用。 我想这是因为字符串的结构不好转换

谢谢你的帮助

信息库

Sub Main()

    Dim strDate As String
    strDate = "2013-06-11"

    Debug.Print "Original Date: ", strDate
    Debug.Print "CDate() Conversion: ", CDate(strDate)
    Debug.Print "Format() as String: ", Format(strDate, "DD.MM.YYYY")

End Sub
即时窗口显示


您想将其转换为另一个格式不同的字符串,还是想要一个日期对象?只是想说明
CDate()
似乎不适用于
“20200109”
这样的字符串。它适用于
“2020-01-09”
(带连字符),但不适用于无连字符的。我必须将字符串分成三部分,然后用连字符重新构建它,以便能够使用
CDate()
。我刚才意识到我可以用
Format()
转换字符串,但更重要的一点是
CDate()
似乎只适用于某些格式的字符串。