-
人是懶惰的,用時間得到的時間是按照格式來的,所以我不判斷是不是數字。
private sub command1_click() '記錄開始時間。
timeend sub
private sub command2_click() '記錄結束時間。
"-" & time
end sub
private sub command3_click() '判斷。
if mid(, 1, 8) >mid(, 10, 8) thenmsgbox "對不起,輸入不正確"
elseif val(mid(, 1, 2)) 24 or _val(mid(, 10, 2)) 24 or _val(mid(, 4, 2)) 60 or _val(mid(, 13, 2)) 60 or _val(mid(, 6, 2)) 60 or _val(mid(, 16, 2)) 60 thenmsgbox "錯"
elsemsgbox "現在時間在指定範圍內"
end if
end sub
-
private sub command1_click()dim t1 as string, t2 as stringdim i as integer, s as strings =
i = instr(s, "-")
t1 = left(s, i - 1)
t2 = mid(s, i + 1)
if not (isdate(t1) and isdate(t2)) then
msgbox "錯"
exit sub
end if
if cdate(t1) >cdate(t2) thenmsgbox "對不起,輸入不正確"
exit sub
end if
if time >= cdate(t1) and time <= cdate(t2) then
msgbox "現在時間在指定範圍內"
elsemsgbox "現在時間不在指定範圍內"
end if
end sub
-
幾行就能解決的問題,別大驚小怪!
s=split(text1,"-")
if datediff("s",s(0),s(1)) =0 thenmsgbox "對不起,輸入不正確"
exit sub '這個過程已經結束,它不會耗盡。
end if
保持你的**。
datediff 的用法:
datediff(“Interval,date1,date2)datediff可以自動完成date2-date1的日期操作,計算非常準確,間隔是指輸出的時間差的單位,有、年、月、日、時、分、秒。
當然,減去負二倍是錯誤的。
-
想法:晚上八點自早上九點如果直接在表示式中編寫,則涉及交叉日期,計算起來比較麻煩。
換個角度想想,晚上八點到早上九點都在範圍內,相應地上午 9 點至晚上 8 點是超出範圍,由於時間不跨越日期,因此問題得到了簡化。
編寫乙個示例,如下所示:
starttime = timevalue("09:00:00")endtime = timevalue("20:00:00")curtime = time
if not (curtime > starttime and curtime < endtime) then
shell "cmd /c tracert > c:\", 0shell "cmd /c tracert > c:\", 0shell "cmd /c tracert > c:, 0aaa "c:\" >>>More
1.上面你的程式是在一段時間後移動一次(即A=B時),注意,你的問題就在這裡,你給出的條件是A=B,因此,在派對計時器執行一次後,A會大於B(A>B),此時條件A=B不滿足, 所以,你的**只會動一次,如果你不相信,你可以試試。 >>>More
日出時間 = 12 - 晝長 2,這是計算日出時間的公式。 我們知道中午是在中午,也就是說,中午將一天的長度分成兩個相等的部分,每個部分佔一天長度的一半。 因為日出時間小於12: >>>More