Masih berhubungan dengan Jam, setelah kemarin membuat jam digital pada userform, hanya perlu mengedit sedikit kita bisa ubah jam digital tersebut menjadi sebuah Stopwatch. Dengan stopwatch ini kita bisa melakukan pencatatan waktu yang digunakan. Agar terlihat beda, saya buat design yang baru pada Form Stopwatch ini. Untuk Hasilnya bisa dilhat pada gambar dibawah ini.

Seperti biasa, langkah pertama untuk membuat stopwatch dengan Excel VBA adalah masuk ke Visual Basic Editor dengan menekan ALT+F11 atau melalui Menu Develover. Insert sebuah UserForm dan design UserForm dengan Control yang ada pada toolbox seperti diatas. Design boleh bebas sesuai selera sendiri tapi ada beberapa control yang harus sesuai penamaanya agar sesuai dengan script dan tidak error ketika dijalankan.
Beberapa control yang penting dan penamaannya harus sama. agar ketika script dicopy dan dijalankan tidak menimbulkan Error : Object Not Found atau jika sudah terbiasa dengan VBA silahkan sesuaikan script dengan nama label yang digunakan.
Type Control | Property | Keterangan |
Label | Name : LbStwatch | Untuk Timer Stopwatch |
Label | Name : LBButton Caption : Start | Untuk Button Start |
Label | Name : LBLap1, LBLap2, LBlap3 | Untuk Lap |
Label | Name :LBLapT1, LBLapT2, LBLapT3 | Untuk Lap Timer |
Setelah tahap design selesai, script yag digunakan untuk membuat Stopwatch adalah sebagai berikut:
Dim Berhenti As Boolean Private Sub Waktu() Dim Mulai As Date Mulai = Time Berhenti = False Do Until Berhenti sekarang = Time - Mulai LBStwatch.Caption = Format(sekarang, "hh:mm:ss") DoEvents Loop End Sub Private Sub LBbutton_Click() If LBbutton = "Start" Then LBbutton.Caption = "Stop" If LBLap1.Visible And LBLap2.Visible And LBLap3.Visible Then Call StartLabel Call Waktu Else LBbutton.Caption = "Start" If Not LBLap1.Visible Then LBLap1.Visible = True LBLapT1.Visible = True LBLapT1.Caption = LBStwatch.Caption Berhenti = True ElseIf Not LBLap2.Visible Then LBLap2.Visible = True LBLapT2.Visible = True LBLapT2.Caption = LBStwatch.Caption Berhenti = True ElseIf Not LBLap3.Visible Then LBLap3.Visible = True LBlapT3.Visible = True LBlapT3.Caption = LBStwatch.Caption Berhenti = True End If LBStwatch.Caption = "00:00:00:" End If End Sub Private Sub StartLabel() LBLap1.Visible = False LBLap2.Visible = False LBLap3.Visible = False LBLapT1.Visible = False LBLapT2.Visible = False LBlapT3.Visible = False End Sub Private Sub UserForm_Initialize() Call StartLabel End Sub Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) Berhenti = True Unload Me End Sub
Jika semua sesuai, hasil dari script diatas adalah seperti dibawah ini.

Jika mengalami kesulitan, File stopwatch bisa di unduh melalui halaman menu download.
Leave a Reply