說明
根據所指定的範圍,將日期值轉換成 21 世紀的日期值。
引數
日期:只接受有效的日期欄位,年份可為 2 位數或 4 位數。
定義為日期欄位的資料庫欄位。[檔案|報表選項] 應設成 [將日期時間欄位轉換成日期]。
CDate 函式 (CDate(年, 月, 日) )。這個函式需要四位數的年份。如果輸入二位數,將假設為 00xx (例如西元 98 年)。
數字引數:介於 0 到 99 之間的數字,對應到所需的時框年數。
動作
2 位數年份 (xx)
如果年值大於時框數字,就在 2 位數前加上 19 (19xx)。如果年值小於或等於時框數字,就在前面加上 20 (20xx)。
4 位數年份 (19xx)
如果年值的後兩位數大於時框數字,照原狀保留日期欄位的年份 (19xx)。如果年值的後兩位數小於或等於時框數字,將前兩位數改成 20 (20xx)。如果年欄位中的前二位數是 20,則照原狀保留日期欄位的年份 (20xx)。
附註:
範例
以下時框值大於年份,所以會改成 20XX。
DateTo2000(CDate(1993,12,12), 99)
應該傳回 2093/12/12
以下時框值小於年份,所以不更改年份。
DateTo2000(CDate(1993,12,12), 92)
應該傳回 12.12.93
其他範例
以下範例中的日期不受函式影響。
DateTo2000(CDate(1899,12,12), 99)
應該傳回 1899/12/12
以下範例中的日期不受函式影響。
DateTo2000(CDate(100,12,12), 99)
應該傳回 100/12/12
有些資料庫以兩位數的欄位存放日期的年份,所以這會模擬該日期欄位。
DateTo2000(CDate(98,12,12), 99)
應該傳回 2098/12/12
DateTo2000(CDate(98,12,12), 97)
應該傳回 12.12.98
DateTo2000(CDate(9,12,12), 10)
應該傳回 12.12.09
DateTo2000(CDate(1,12,12), 0)
應該傳回 1901/12/12