Excel VBA 将字符串日期转换为实际日期
Excel VBA Convert String Date to a real 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 到日期,这也可能会更改月份或年份。
第二个适合我:
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
您无法确定应该将日期加 1 的位置。试试,
DateStr = Format(CDate(DateStr) + 1, "dd/mm/yyyy")
CDate conversion function 是您获取将接受添加另一天的数字日期值的地方。
我正在使用以下代码,但出于某种原因,第二行没有将其转换为实际日期。
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 到日期,这也可能会更改月份或年份。
第二个适合我:
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
您无法确定应该将日期加 1 的位置。试试,
DateStr = Format(CDate(DateStr) + 1, "dd/mm/yyyy")
CDate conversion function 是您获取将接受添加另一天的数字日期值的地方。