Peristiwa VBA

Fungsi Excel VBA DoEvents

Dengan bantuan VBA DoEvents , kita dapat membuat kod berjalan di latar belakang dan pada masa yang sama membolehkan kita bekerja dengan excel dan perisian aplikasi lain juga. DoEvents bukan sahaja membolehkan kita bekerja dengan perisian lain tetapi kita juga boleh mengganggu penggunaan kod.

Fungsi DoEvents memberikan kawalan ke sistem operasi komputer yang sedang kita jalankan.

Bagaimana menggunakan Fungsi DoEvents?

Sebilangan besar kod VBA diperlukan apabila keperluannya sangat besar. Dalam kes-kes tersebut, gantung dan berhenti yang unggul untuk beberapa ketika dan kadangkala menjadi tidak responsif.

Anda boleh memuat turun Templat VBA DoEvents Excel ini di sini - Templat VBA DoEvents Excel

Sebagai contoh lihat kod di bawah.

Kod:

 Sub DoEvents_Contoh1 () Dim i Selagi i = 1 hingga 100000 Julat ("A1"). Nilai = i Seterusnya i Akhir Sub 

Kod di atas akan memasukkan nombor siri dari 1 hingga 100000. Dengan mudah memerlukan lebih dari satu minit untuk melaksanakan tugas. Selama pelaksanaannya, excel menunggu banyak masa untuk menyelesaikan tugas. Selama ini excel menunjukkan mesej sebagai "Excel Tidak Menjawab".

Selain itu, kami tidak dapat mengakses lembaran kerja yang sedang kami jalankan. Ini adalah perkara yang mengecewakan, lalu bagaimana kita menjadikan lembaran kerja excel tersedia untuk berfungsi semasa kodnya berjalan di belakang skrin.

Ini dapat dicapai dengan menambahkan fungsi VBA DoEvents .

Kod:

 Sub DoEvents_Contoh1 () Dim i Selagi i = 1 hingga 100000 Julat ("A1"). Nilai = i DoEvents Seterusnya i Akhir Sub 

Sebaik sahaja kita menambah fungsi DoEvents dalam kod, kita dapat mengakses lembaran kerja Excel.

Dari atas kita dapat melihat bahawa kod sedang berjalan tetapi kita dapat mengakses lembaran kerja.

Ganggu Kod Menjalankan

Apabila kod berjalan di belakang skrin kita dapat menambahkan baris, lajur, dan menghapusnya, kita dapat mengubah nama lembaran dan kita juga dapat melakukan banyak perkara lain. Sebaik sahaja kita menambahkan DoEvents menjadikan kod vba berjalan dengan cepat dan membolehkan kita jatuh bahawa tugas yang disebutkan berjalan sendiri.

  • Salah satu bahaya fungsi DoEvents adalah ketika kita menukar lembaran kerja atau buku kerja, ia akan menimpa nilai helaian aktif.
  • Bahaya lain adalah, jika kita memasukkan nilai ke sel, pelaksanaan kod berhenti dan bahkan tidak memberi tahu kita.
Catatan : Walaupun terdapat bahaya DoEvents di atas, fungsi ini tetap berguna. Kita boleh menggunakan DoEvents sebagai sebahagian daripada proses penyahpepijatan ketika kita berusaha memperbaiki bug kod yang telah kita tulis.