snasui.com ยินดีต้อนรับ ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
#If VBA7 Then
Public Declare PtrSafe Function SetTimer Lib "user32" ( _
ByVal HWnd As Long, ByVal nIDEvent As LongLong, _
ByVal uElapse As Long, ByVal lpTimerFunc As LongLong) As Long
Public Declare PtrSafe Function KillTimer Lib "user32" ( _
ByVal HWnd As Long, ByVal nIDEvent As Long) As Long
#Else
Public Declare Function SetTimer Lib "user32" ( _
ByVal HWnd As Long, ByVal nIDEvent As Long, _
ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long
Public Declare Function KillTimer Lib "user32" ( _
ByVal HWnd As Long, ByVal nIDEvent As Long) As Long
#End If
Public TimerID As Long, TimerSeconds As Single, tim As Boolean
Dim Counter As Long
'~~> Start Timer
Sub StartTimer()
'~~ Set the timer for 1 second
TimerSeconds = 1
TimerID = SetTimer(0&, 0&, TimerSeconds * 1000&, AddressOf TimerProc)
End Sub
'~~> End Timer
Sub EndTimer()
On Error Resume Next
KillTimer 0&, TimerID
End Sub
Sub TimerProc(ByVal HWnd As Long, ByVal uMsg As Long, _
ByVal nIDEvent As Long, ByVal dwTimer As Long)
'~~> Update value in Sheet 1
Sheet1.Range("A1").Value = Time ' <~~ โชว์ในเซลล์
UserForm1.Label1.Caption = Time ' <~~ โชว์ใน label
UserForm1.TextBox1.Text = Time ' <~~ โชว์ใน textbox
End Sub
#If VBA7 Then
Public Declare PtrSafe Function SetTimer Lib "user32" ( _
ByVal HWnd As Long, ByVal nIDEvent As LongLong, _
ByVal uElapse As Long, ByVal lpTimerFunc As LongLong) As Long
Public Declare PtrSafe Function KillTimer Lib "user32" ( _
ByVal HWnd As Long, ByVal nIDEvent As Long) As Long
#Else
Public Declare Function SetTimer Lib "user32" ( _
ByVal HWnd As Long, ByVal nIDEvent As Long, _
ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long
Public Declare Function KillTimer Lib "user32" ( _
ByVal HWnd As Long, ByVal nIDEvent As Long) As Long
#End If
Public TimerID As Long, TimerSeconds As Single, tim As Boolean
Dim Counter As Long
'~~> Start Timer
Sub StartTimer()
'~~ Set the timer for 1 second
TimerSeconds = 1
TimerID = SetTimer(0&, 0&, TimerSeconds * 1000&, AddressOf TimerProc)
End Sub
'~~> End Timer
Sub EndTimer()
On Error Resume Next
KillTimer 0&, TimerID
End Sub
Sub TimerProc(ByVal HWnd As Long, ByVal uMsg As Long, _
ByVal nIDEvent As Long, ByVal dwTimer As Long)
'~~> Update value in Sheet 1
Sheet1.Range("A1").Value = Time ' <~~ โชว์ในเซลล์
UserForm1.Label1.Caption = Time ' <~~ โชว์ใน label
UserForm1.TextBox1.Text = Time ' <~~ โชว์ใน textbox
End Sub
#If VBA7 Then
Public Declare PtrSafe Function SetTimer Lib "user32" ( _
ByVal HWnd As Long, ByVal nIDEvent As LongLong, _
ByVal uElapse As Long, ByVal lpTimerFunc As LongLong) As Long
Public Declare PtrSafe Function KillTimer Lib "user32" ( _
ByVal HWnd As Long, ByVal nIDEvent As Long) As Long
#Else
Public Declare Function SetTimer Lib "user32" ( _
ByVal HWnd As Long, ByVal nIDEvent As Long, _
ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long
Public Declare Function KillTimer Lib "user32" ( _
ByVal HWnd As Long, ByVal nIDEvent As Long) As Long
#End If
Dim TimerActive As Boolean
Sub StartTimer()
Start_Timer
End Sub
Public Sub Start_Timer()
TimerActive = True
Application.OnTime Now() + TimeValue("00:00:01"), "Timer"
End Sub
Public Sub Stop_Timer()
TimerActive = False
End Sub
Private Sub Timer()
If TimerActive Then
' ActiveSheet.Cells(1, 1).Value = Time
รายรับ1.Label18.Caption = Time
Application.OnTime Now() + TimeValue("00:00:01"), "Timer"
End If
End Sub
Dim TimerActive As Boolean
Sub StartTimer()
Start_Timer
End Sub
Public Sub Start_Timer()
TimerActive = True
Application.OnTime Now() + TimeValue("00:00:01"), "Timer"
End Sub
Public Sub Stop_Timer()
TimerActive = False
End Sub
Private Sub Timer()
If TimerActive Then
' ActiveSheet.Cells(1, 1).Value = Time
รายรับ1.Label18.Caption = Time
Application.OnTime Now() + TimeValue("00:00:01"), "Timer"
End If
End Sub