且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

VBA将字符串转换为日期

更新时间:2023-01-30 18:34:29

尝试使用Replace查看它是否对您有用.我认为上面提到过几次的问题是CDate函数在句点上令人窒息.您可以使用replace将其更改为斜杠.为了回答有关vba中可以解析任何日期格式的函数的问题,您没有一个非常有限的选择.

Try using Replace to see if it will work for you. The problem as I see it which has been mentioned a few times above is the CDate function is choking on the periods. You can use replace to change them to slashes. To answer your question about a Function in vba that can parse any date format, there is not any you have very limited options.

Dim current as Date, highest as Date, result() as Date 
For Each itemDate in DeliveryDateArray
    Dim tempDate As String
    itemDate = IIf(Trim(itemDate) = "", "0", itemDate) 'Added per OP's request.
    tempDate = Replace(itemDate, ".", "/")
    current = Format(CDate(tempDate),"dd/mm/yyyy")
    if current > highest then 
        highest = current 
    end if 
    ' some more operations an put dates into result array 
Next itemDate 
'After activating final sheet... 
Range("A1").Resize(UBound(result), 1).Value = Application.Transpose(result)