2014-07-22 88 views
0

我見過一些類似的問題/答案,但他們沒有一個回答我的問題/爲VBS回答。我有一套我想轉換爲今年的日期。但是,當我嘗試將它們轉換爲日期時,我得到錯誤的值,因爲它使用1900年。有什麼方法可以在CDate函數中指定年份?我查看了Calendar類,但這不適用,因爲我使用的是VBScript。在VBScript中將日期和年份轉換爲日期

MsgBox(CDate(195)) 
MsgBox(CDate(196)) 
MsgBox(CDate(197)) 
MsgBox(CDate(198)) 
MsgBox(CDate(199)) 

這些給我1900年7月13日,1900年7月14日,1900年7月15日,等

回答

2

使用DateAdd的天數增加至DateSerial獲得的開始日期:

>> dt2014 = DateSerial(2014, 1, 1) 
>> WScript.Echo dt2014 
>> 
01.01.2014 
>> WScript.Echo DateAdd("d", 195, dt2014) 
>> 
15.07.2014 

(德文場所;尋找一個+ -1偏置(增加一年的第一天))

更新WRT到@邦德的評論:

即使您需要在開始日期添加許多天(正如我所瞭解的任務),僅使用具有許多不同日期參數的DateSerial可能會更有效。

+0

謝謝!它的工作完美:) –

+1

你也可以直接插入'DateSerial'來避免+1問題。只需使用1月的一個月:'dt = DateSerial(2014,1,195)==> 2014.07.14' – Bond

相關問題