Diskusi tentang Excel

Cara Membuat Progress Bar 1% - 100% Menggunakan UserForm



Bagaimana cara membuat Progress Bar menggunakan VBA di Ms. Excel 2010? Progress Bar maksudnya adalah bahwa ada sebuah proses yang sedang berjalan ketika membuka sebuah informasi hal ini sering kita lihat ketika Menginstal sebuah aplikasi baru ke komputer kita dan progress bar ini biasanya ada yang seperti bar yang berjalan dari arah kiri ke kanan dan ada juga yang berupa persentase bahkan ada yang menggunakan keduanya.

Pada kesempatan kali ini saya akan membuat sebuah progress bar dengan menggunakan script VBA pada Ms. Excel versi 2010. Progress bar ini saya definisikan dalam sebuah persentase secara berurut dari 1% hingga 100% dan apabila setelah mencapai 100% UserForm akan keluar secara otomatis. Lalu bagaimana caranya dan seperti apa script VBA nya?

Cara Membuat Progress Bar 1% - 100% Menggunakan UserForm

Dalam pembuatan progress bar ini dibutuhkan satu buah UserForm dan satu buah Module kemudian script VBA dituliskan pada Module tersebut. Yang belum tahu mengenai cara membuat UserForm silakan lihat artikel sebelumnya tentang

Pengenalan Dasar Membuat UserForm VBA Excel
Langkah-langkah membuat Progress Bar
Pertama silakan buat sebuah UserForm dan ganti Properties UserForm1 menjadi sebagai berikut :

Back Color : &H000000FF&
Captions : Progress
Tahap Berikutnya silakan buat satu buah Label dari ToolBox dan ganti Properties nya menjadi seperti berikut

Name : LabelProgress
Caption :
BackColor : &H000000FF&

Tahap Ketiga silakan buat sebuah Frame dari ToolBox dan ganti propertiesnya menjadi
Name : FrameProgress
BackColor : &H000000FF&
Label :
For Color : &H00FFFFFF&
Font : Tahoma, Blod, 18

Tahap ke-empat silakan buat satu buah Module kemudian ketikkan Script VBA berikut
Sub ShowUserForm()
    UserForm1.Show
End Sub

Sub Main()
    Dim Hitung As Integer
    Dim JmlBaris As Integer, JmlKolom As Integer
    Dim r As Integer, c As Integer
    Dim Aksi As Single

    Application.ScreenUpdating = False
    Hitung = 1
    JmlBaris = 600
    JmlKolom = 50

    For r = 1 To JmlBaris
        For c = 1 To JmlKolom
            Worksheets("sheet3").Cells(r, c) = Int(Rnd * 1000)
            Hitung = Hitung + 1
        Next c

        Aksi = Hitung / (JmlBaris * JmlKolom)

        UpdateProgressBar Aksi
    Next r
    Unload UserForm1
End Sub

Sub UpdateProgressBar(Aksi As Single)
    With UserForm1

        .FrameProgress.Caption = Format(Aksi, "0%")

        .LabelProgress.Width = Aksi * _
            (.FrameProgress.Width - 10)
    End With

    DoEvents
End Sub
Tahap ke-Lima silakan Anda klik kanan pada UserForm kemudian pilih View Code dan ketikkan Script VBA berikut
Private Sub UserForm_Activate()
    UserForm1.LabelProgress.Width = 0
    Call Main
End Sub

Tahap Terakhir silakan RUN kemudian lihat hasilnya. Sebuah progres bar berupa persentase antara 1% sampai dengan 100% akan berjalan secara berurut kemudian lihat juga pada Sheet3 terlihat pada range A1:T600 telah terbuat data secara acak





Demikian, mudah bukan? semoga bermanfaat, jangan lupa komentarnya ya

Related

Macro Excel VBA 8143707479375271894

Post a Comment

  1. trimakasih atas infonya sangat berguna, semoga jadi ilmu yang bermanfaat. untuk mempercepat gimana caranya? kayaknya terlalu lambat berjalannya progress bar... nya. trimakasih

    ReplyDelete

Tulisan ini Bermanfaat..? Silakan berkomentar sesuai topik artikelnya, tidak dianjurkan menggunakan kata-kata yang dapat menimbulkan hal negatif. Mohon maaf apabila tidak memiliki etika akan Admin HAPUS tanpa pemberitahuan kembali. Terimakasih... salam Exceler

emo-but-icon

item