现在我在做一个程序,还没想好怎么做,看看有谁用最简单的代码来写,要求如下:
在当周星期6早上7点之前,TEXT1="18",7点之后就让TEXT1="19",再下周星期6早上7点之后,TEXT1="20"..............,请精确到秒.以此类推.
即每周星期6早上7点时TEXT1里面的值自动加1.
在当周星期6早上7点之前,TEXT1="18",7点之后就让TEXT1="19",再下周星期6早上7点之后,TEXT1="20"..............,请精确到秒.以此类推.
即每周星期6早上7点时TEXT1里面的值自动加1.
Private Sub Timer1_Timer()
Label1 = Time()
t1 = "19"
t2 = Time()
t3 = Hour(t2)
t5 = #5/5/2007#
t6 = Date
t7 = t6 - t5
t8 = t7 / 7
t4 = Weekday(Date)
t9 = CInt(t1) + t8
t9 = Left(t9, 2)
If t4 = 7 And t3 < 7 Then
t9 = CInt(t1) + t8 - 1
End If
Text9 = "07" & CStr(t9)
End Sub
我看代码有点长,有点乱.
Public Function mGetDateAndTime() As Long
On Error GoTo mErr:
Dim reg, regBack As String
Set reg = CreateObject("Wscript.Shell")
regBack = reg.regread("HKEY_LOCAL_MACHINE\SOFTWARE\mDateTime\Value\")
If Format(Time, "Short Time") >= "07:00" And Weekday(Date) >= vbSaturday Then
mGetDateAndTime = 19 + DateDiff("ww", regBack, Date) + 1
Else
mGetDateAndTime = 19 + DateDiff("ww", regBack, Date)
End If
Set reg = Nothing
mErr:
If Err.Number = -2147024894 Then reg.regwrite "HKEY_LOCAL_MACHINE\SOFTWARE\mDateTime\Value\", Date: Resume
End FunctionPrivate Sub Timer1_Timer()
Text1.Text = mGetDateAndTime
End Sub
雏形而已........
我怎么看都比LZ写的代码还长呢...哎,,
Private Sub Form_Load()
Data1 = #5/5/2007#
d = DateDiff("d", Data1, Now)
i = d \ 7
h = Hour(Now)
If h >= 7 Then
Text1.Text = 18 + i
Else
Text1.Text = 17 + i
End If
End Sub