簡體   English   中英

VB6中的時間格式無法比較

[英]time format in VB6 not compare

我在VB6中有這種情況:

If ((Time >= #12:20:00 PM# And Time <= #3:00:00 PM# And boolTarde = False)

我想通過變量更改此固定值( #12:20:00 PM##3:00:00 PM# )。 我已經在字符串變量InitAmanhaFimAmanha加載了值"12:20:00""03:00:00" ,因此我編寫了一個新條件:

 If ((Time >= InitAmanha And Time <= FimAmanha And boolTarde = False)
   end if 

但是,這沒什么可比的。 是否需要連接'PM#'

您應該使用VBA中固有的TimeValue函數。 例如:

Dim myStrDate1 As String: myStrDate1 = "4:25:32" 
Dim myDate1 As Date: myDate1 = TimeValue(myStrDate1)
'--> myDate1 will be interpreted as 4.25 in the morning

請注意,您可以根據需要指定AM / PM

Dim myStrDate1 As String: myStrDate1 = "4:25:32 PM" 
Dim myDate1 As Date: myDate1 = TimeValue(myStrDate1)
'--> myDate1 will be interpreted as 4.25 in the afternoon

但是,如果您指定時間,則時間將始終被解釋為AM(這意味着4:25:32將始終為4:25:32 AM)。

在您的特定情況下:

If ((Time >= TimeValue(InitAmanha) And Time <= TimeValue(FimAmanha) And boolTarde = False)
   End If 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM