Bar Kemajuan VBA

Bar Kemajuan VBA Excel dalam Excel

Progress Bar adalah sesuatu yang menunjukkan kepada kita berapa banyak proses yang telah dilakukan atau selesai ketika kita menjalankan set kod yang besar yang memerlukan waktu yang lebih besar untuk dilaksanakan, kita menggunakan progress bar di VBA untuk menunjukkan kepada pengguna mengenai status proses tersebut, atau jika kita mempunyai banyak proses yang berjalan dalam satu kod yang kita gunakan progress bar untuk menunjukkan proses mana yang telah berjalan sejauh mana.

Bar kemajuan menunjukkan peratusan tugas yang diselesaikan ketika tugas sebenarnya berjalan di belakang skrin dengan satu set arahan yang diberikan oleh kod.

Apabila kod VBA memerlukan banyak masa untuk dilaksanakan, adalah kebimbangan pengguna untuk mengetahui seberapa cepat ia dapat diselesaikan. Secara lalai, kita perlu menunggu sepenuh masa untuk menyelesaikan tugas tetapi dengan memasukkan bar kemajuan kita dapat mengetahui kemajuan kod VBA.

Di hampir semua perisian komputer, kita melihat carta bar kemajuan yang menunjukkan kemajuan tugas yang kita laksanakan seperti gambar di bawah.

Dalam excel ke kita dapat membuat Progress Bar dengan menggunakan pengekodan VBA. Sekiranya anda pernah bertanya-tanya bagaimana kami dapat membuat bar kemajuan maka ini adalah artikel yang disesuaikan untuk anda.

Anda boleh memuat turun Templat Bar Kemajuan VBA ini di sini - Templat Bar Kemajuan VBA

Buat Bar Kemajuan Anda Sendiri

Untuk membuat bar kemajuan, kita perlu mengikuti beberapa langkah. Berikut adalah langkah-langkah yang perlu dilibatkan semasa membuat carta bar kemajuan.

Langkah 1: Buat atau Masukkan borang Pengguna baru.

Sebaik sahaja anda mengklik pilihan di atas, anda akan melihat borang pengguna seperti di bawah.

Langkah 2: Tekan kekunci F4 untuk melihat tetingkap sifat VBA.

Dalam tab sifat ini, kita perlu mengubah sifat borang pengguna VBA yang telah kita masukkan.

Langkah 3: Tukar nama borang pengguna ke UFProgressBar.

Sekarang kita dapat merujuk borang pengguna ini dengan nama "UFProgressBar" sambil membuat pengekodan.

Langkah 4: Tukar Show Model Properti borang pengguna menjadi PALSU.

Langkah 5: Sekarang sesuaikan penjajaran pengguna agar sesuai dengan keperluan anda. Saya telah menukar Tinggi borang pengguna menjadi 120 dan lebar menjadi 300.

Langkah 6: Tukar Kapsyen borang pengguna ke "Progress Status Bar".

Langkah 7: Sekarang dari kotak alat borang pengguna masukkan LABEL ke borang pengguna di bahagian atas.

Dengan label ini, kita perlu menetapkan sifat label. Padamkan kapsyen dan kosongkan dan sesuaikan lebar label.

Langkah 8: Tukar Nama label kepada "ProgessLabel".

Langkah 9: Sekarang dari kotak alat ambil bingkai dan lukis tepat di bawah label yang telah kita masukkan pada langkah sebelumnya. Pastikan bingkai berada di tengah-tengah borang pengguna.

Langkah 10: Sekarang kita perlu mengubah beberapa sifat Frame agar kelihatan sama seperti bentuk pengguna yang telah kita masukkan.

Properti 1: Tukar Nama bingkai menjadi "ProgressFrame".

Harta 2: Padamkan kapsyen dan kosongkan.

Harta 3: Tukar Kesan Khas bingkai menjadi 6 - fmSpecialEffectBump.

Selepas semua perubahan ini borang pengguna kami akan kelihatan seperti ini.

Langkah 11: Sekarang masukkan satu label lagi. Kali ini masukkan label tepat di dalam bingkai yang telah kita masukkan.

Semasa memasukkan label pastikan bahagian kiri label betul-betul sesuai dengan bingkai yang telah kita masukkan seperti yang ditunjukkan pada gambar di atas.

Langkah 12: Setelah memasukkan label ubah sifat label seperti berikut.

Properti 1: Tukar nama label menjadi "MainProgressLabel".

Harta 2: Padamkan kapsyen.

Harta 3: Tukar warna latar mengikut kehendak anda.

Ok, sekarang kita sudah selesai dengan proses menyiapkan bar kemajuan dan pada masa ini, ia kelihatan seperti ini.

Sekarang kita perlu memasukkan kod untuk menjadikannya berfungsi dengan sempurna.

Langkah 13: Untuk membuat kerangka kerja, tambahkan makro di bawah ini di excel.

Kod:

 Sub InitUFProgressBarBar () Dengan UFProgressBar .Bar.Width = 0 .Text.Caption = "0%". Tunjukkan vbModeless Berakhir Dengan 

Catatan: "UFProgressBar" adalah nama yang diberikan kepada Form Pengguna dan "Bar" adalah nama yang diberikan pada frame yang telah kami buat dan "Text" adalah nama yang diberikan pada label di dalam Frame.

Sekarang jika anda menjalankan kod ini secara manual atau melalui kekunci F5, kita akan melihat bar kemajuan seperti ini.

Step 14: Now we need to create a macro to perform our task. I am performing the task of inserting serial numbers from 1 to 5000. Along with this code, we need to configure the progress bar chart as well, below code is the tailor-made code for you.

Code:

 Sub ProgressBar_Chart() Dim i As Long Dim CurrentUFProgressBar As Double Dim UFProgressBarPercentage As Double Dim BarWidth As Long i = 1 Call InitUFProgressBarBar Do While i <= 5500 Cells(i, 1).Value = i CurrentUFProgressBar = i / 2500 BarWidth = UFProgressBar.Border.Width * CurrentUFProgressBar UFProgressBarPercentage = Round(CurrentUFProgressBar * 100, 0) UFProgressBar.Bar.Width = BarWidth UFProgressBar.Text.Caption = UFProgressBarPercentage & "% Complete" DoEvents i = i + 1 Loop Unload UFProgressBar End Sub