使用特定的字符串格式将字符串转换为Excel日期和时间

时间:2013-07-03 20:49:00

标签: excel vba

我有一个Excel / VBA宏,用于列出目录中的文件。

文件名的格式为:yyyy-MM-dd @hh-mm-ss_ [description] .csv

例如:2013-07-03@22-43-19_my-file.csv

然后我需要将文件名的第一部分放入Excel Date对象(包括时间戳)

我找到了CDate()函数,但它没有采用任何“format”参数,而且Format()函数的工作方式错误,即将String转换为Date。

我想获取一个带有字符串和格式的函数,并返回一个Excel日期/时间对象。

是否有专门设计的功能?

谢谢,

1 个答案:

答案 0 :(得分:7)

试试这个:

Function ParseDateTime(dt As String) As Date
   ParseDateTime = DateValue(Left(dt, 10)) + TimeValue(Replace(Mid(dt, 12, 8), "-", ":"))
End Function