การใช้งาน Timer ใน VBA (Visual basic for application)
บทความนี้ก็จะเป็นตัวอย่างการใช้งาน Timer
ใน VBA กันนะครับ ซึ่งโดยปรกติแล้ว
VBA จะไม่มี Control Timer ให้ใช้กันนะครับ
แต่เราสามารถเขียนโค๊ดขึ้นมาเพื่อจำลองเป็น Timer ได้ครับ
มาดู กันเลย
หลักการก็คือ จะทำการตรวจสอบ Timer ไปเรื่อย
ๆ เมื่อครบกำหนดตามเวลาที่เราตั้งไว้ ก็ให้ทำ Event ตามที่เราต้องการ
มาดูตัวอย่าง Code กันเลยครับ
Code
Sub test()
Dim PauseTime, Start, Finish, TotalTime
If (MsgBox("ทดสอบ Timer 5 วินาที", 4)) = vbYes Then
PauseTime = 5 ' ตั้งค่าระยะเวลา
Start = Timer ' ตั้งเวลาเริ่มต้น
Do While Timer < Start +
PauseTime
DoEvents ' ให้ Process อื่นทำงานไปตามปรกติ
Loop
Finish = Timer
TotalTime = Finish -
Start ' คำนวนเวลาทั้งหมด
MsgBox "เวลาผ่านไป " &
TotalTime & " วินาทีแล้ว"
'ตรงนี้สามารถใส่
สิ่งที่ต้องการให้โปรแกรมทำงานเมื่อครบกำหนดเวลาได้เลย
Else
End
End If
End Sub
Private Sub CommandButton1_Click()
‘เหตุการณ์กดปุ่ม
Call test ‘เรียก method test ขึ้นมาทำงาน
End Sub
|
จะเห็นได้ว่าการทำแบบนี้จะไม่เหมือนกัน Control
timer เลยซะทีเดียวนะครับ โดยมันจะไม่มี Event
เกิดขึ้นโดยตัวของมันเอง โดยเราต้องมีการตรวจสอบจาก Timer เอาเอง
แต่ก็ยังพอประยุกต์ใช้แก้ขัดได้อยู่นะครับ
ความคิดเห็น
แสดงความคิดเห็น