2011-07-05 285 views
0

我試圖將日期(日期類型)轉換爲長整型。 這段時間應該是1900年1月1日以來的天數。 如何在VBA中獲得這個結果?在Excel中,當我將一個日期與一個字符串連接起來時,我會自動獲取它。將日期轉換爲日期串行

回答

3
Function dateToLong(ByVal d As Date) As Long 

dateToLong = CLng(d) 
End Function 

如果您需要捕獲的時間在漫長的使用這樣的:

Function Dt2Lng(aDate As Date) As Long 
    '-- acept datetime range from MinDate to 
    '-- (MinDate + 49710 days + 6:28:15) ~ 136 years 
    Dt2Lng = CLng((aDate - MinDate) * 86400 - 2^31) 
End Function 
+0

爲什麼你用'd'中的'DateSerial'創建一個日期,這已經是一個日期? 'CLng(d)'就足夠了。 – Jacob

+0

非常感謝!你救了我。 –

+1

Upvote ...作爲答案的接受(不幸)可能不會發生= / –

0

說,如果你在A1有「2016年1月1日」,您可以使用範圍(「A1」) .Value2獲取日期序列號。

相關問題