2016-07-28 241 views
-5

我有一個日期格式爲文本格式 - 「2016年7月22日」。如何使用Excel-VBA將其轉換爲日期格式。將文本日期格式轉換爲日期格式

在此先感謝。

+1

它有助於做出努力(並減少噪音)。 – pnuts

+1

[Here。](http://www.google.com/search?q=vba+convert+text+to+date) – vacip

+0

你可以發佈更多的你的樣本數據嗎? – vanathaiyan

回答

0
Sub datestuff() 
    myDate = "22nd July 2016" 
    myDateArray = Split(myDate, " ") 
    myDateArray(0) = Trim(Replace(Replace(Replace(Replace(myDateArray(0), "st", ""), "nd", ""), "rd", ""), "th", "")) 
    myDate = DateValue(Join(myDateArray, " ")) 
    Debug.Print myDate ' outputs '22/07/2016' 
End Sub 

在我看來,主要問題是白天的一部分;處理,其餘的將會很簡單?

4

一種方式是僅僅剝離工作的序指示符:

Public Function dateOR(s As String) As Date 
    ary = Split(s, " ") 
    ary(0) = Left(ary(0), Len(ary(0)) - 2) 
    dateOR = DateValue(Join(ary, " ")) 
End Function 

enter image description here

和不VBA可以使用工作表公式:

=DATEVALUE(SUBSTITUTE(A1,MID(A1,FIND(" ",A1)-2,2),""))