Excel VBA将stringdate转换为实际date
我正在使用下面的代码,但出于某种原因,第二行不会将其转换为真正的date。
DateStr = Replace(DateStr, "-", "/") DateStr = Format(CDate(DateStr), "dd/mm/yyyy") DateStr = DateStr + 1
即使我这样做:
Dim RealDate As Date DateStr = Replace(DateStr, "-", "/") RealDate = Format(CDate(DateStr), "dd/mm/yyyy") RealDate = RealDate + 1
正如你可以从第3行看到的那样,我正在尝试+1来改变可能会改变月份或年份的那一天。
您无法确定您应该在哪个位置添加1。 尝试,
DateStr = Format(CDate(DateStr) + 1, "dd/mm/yyyy")
CDate转换function是您可以获得将接受另一天添加的数字date值的位置。
第二个对我来说可行:
Sub Tester() Dim RealDate As Date, DateStr As String DateStr = "7-20-2015" DateStr = Replace(DateStr, "-", "/") RealDate = Format(CDate(DateStr), "dd/mm/yyyy") RealDate = RealDate + 1 Debug.Print RealDate '>> 7/21/2015 End Sub