
ค่อย ๆ ถาม-ตอบไปนะครับ หากเป็นคำถามต่อเนื่องจากคำถามเดิมทีคุณถามไว้แล้ว ให้ถามต่อจากกระทู้นั้น เพื่อให้ติดตามได้โดยง่ายครับ
ผมเคยตอบที่คุณถามลักษณะนี้มาครั้งหนึ่งแล้ว แต่จะตอบให้อีกครั้งครับ
จากที่ถามมา
เปลี่ยน StartTime เป็นตามด้านล่างครับ
Code: Select all
Sub StartTime()
Worksheets("Sheet1").[A7].Value = TimeValue("00:00:04")
Worksheets("Sheet1").[A7].NumberFormat = "h:mm:ss"
Call Timer
End Sub
และเปลี่ยน Reset เป็นตามด้านล่างครับ
Code: Select all
Sub Reset()
Dim count As Range
Set count = Worksheets("Sheet1").[A7]
On Error Resume Next
count.Value = count.Value - TimeValue("0:00:01")
If count <= 0 Then
Worksheets("Level 2").Select
Exit Sub
End If
Call Timer
End Sub
กรณีคุณต้องการใช้ VBA ผมถือว่าคุณมีความรู้เรื่องนี้เป็นพื้นฐานอยู่แล้ว ถ้าไม่มีพื้นฐานอยู่เลยจำเป็นที่จะต้องเรียนรู้ก่อนครับ ไม่ว่าจะเวบ จากตำรา หรือจาก Help ของโปรแกรม ไม่เช่นนั้นจะเข้าใจลำบากว่าแต่ละ Code ทำงานอย่างไร และจะไม่สามารถเปลี่ยนแปลง Code เองได้เมื่อเงื่อนไขเปลี่ยนแปลงไป
การอธิบายให้ผู้ไม่มีพื้นฐานเข้าใจการทำงานของ VBA ได้ในเวลาสั้น ๆ เป็นเรื่องที่ไม่ง่ายนักครับ