2013-04-26 93 views
0

我發現,比較兩個日期看,如果一個大於另一個聲明:比較日期用戶輸入

If Format(Date, "m/d/yyyy") > #1/1/2000# Then MsgBox "Okay" 

這基本上是說,如果今天晚於2000年1月1日再彈出一個消息框。

這很好,如果我把代碼中的日期(即2000年1月1日),但我想在運行時從用戶得到一個日期,並不能找出如何合併那到上面的陳述。

如果我提供了一個文本框供用戶輸入一個日期,我已經包圍以#符號文本:

If MyDate > "#" & Text1.Text & "#" then 

這是行不通的。我試着將文本轉換爲Double,Integer和Long。我不知道如何在用戶輸入中使用#符號。

在此先感謝您的幫助。

回答

1

使用CDate(Text1.Text)將字符串轉換爲日期。在現實中,你會想要做一些檢查,以確保輸入的值是一個有效的日期,沿着線的東西:

Dim myDate As Date 
If IsDate(Text1.Text) Then 
    MyDate = CDate(Text1.Text) 
Else 
    'Indicate the error to the user 
End If 

#字符是「至今的報價」,如果你 - 他們所服務的與"相同的用於日期文字的目的確實爲字符串文字分隔。您不能只將#連接到一個值以使其成爲日期。

+0

這樣做。非常感謝! – user2322016 2013-04-26 18:55:43