2009-10-27 183 views
2

使用Access 2003如何轉換成日期格式?

日期列數據類型是文本

表1

日期

20090528 
20090529 
20090530 
20090502 
20090504 

期望輸出

28-May-2009 
29-May-2009 
30-May-2009 
02-May-2009 
04-May-2009 

...,

如何查詢預期輸出日期格式?

+1

如果您有一個存儲日期的列,那麼您可能確實應該使用具有日期時間的列作爲其類型。 – Irfy

回答

3

作爲VBA代碼 - 你可以把它包裝成一個功能

Dim strMyDate As String 
Dim dteDate As Date 

strDate = "20090528" 
dteDate = DateSerial(Left(strDate, 4), Mid(strDate, 5, 2), Right(strDate, 2)) 
MyStr = Format(dteDate, "dd-mmm-yyyy") 
Debug.Print MyStr 

作爲表數據類型 - 如果追加將數據發送到日期/時間格式爲字段的表格,然後您可以在表格/表格上​​指定格式,即在輸出時間。

+0

如果您不需要,最好不要使用用戶定義函數(UDF)。 – Fionnuala

0

CDATE應該做你想要什麼......

+0

請解釋CDate()如何將表格「20090504」的字符串轉換爲日期。 –

1

我發現Cdate不適合我。

Format(DateSerial(Left(Field1, 4), Mid(Field1, 2, 2), Right(Field1, 2)), "dd-mmm-yyyy")