VBA DoEvents

Fungsi Excel VBA DoEvents

Dengan bantuan VBA DoEvents , kami dapat membuat kode berjalan di latar belakang dan secara bersamaan memungkinkan kami untuk bekerja dengan excel dan perangkat lunak aplikasi lain juga. DoEvents tidak hanya memungkinkan kita untuk bekerja dengan perangkat lunak lain, tetapi kita juga dapat mengganggu jalannya kode.

Fungsi DoEvents meneruskan kontrol ke sistem operasi komputer yang kita kerjakan.

Bagaimana cara menggunakan Fungsi DoEvents?

Sejumlah besar kode VBA diperlukan ketika persyaratannya sangat besar. Dalam kasus tersebut excel hang dan berhenti untuk beberapa waktu dan bahkan terkadang menjadi tidak responsif.

Anda dapat mengunduh Template Excel VBA DoEvents ini di sini - Template Excel VBA DoEvents

Untuk contoh lihat kode di bawah ini.

Kode:

 Sub DoEvents_Example1 () Dim i As Long For i = 1 To 100000 Range ("A1") Value = i Next i End Sub 

Kode di atas akan memasukkan nomor seri dari 1 hingga 100000. Ini akan dengan mudah membutuhkan lebih dari satu menit untuk menjalankan tugas. Selama eksekusi, excel mengalami hang cukup banyak waktu untuk menyelesaikan tugas. Selama waktu ini, excel menampilkan pesan sebagai "Excel Not Responding".

Selain itu, kami tidak dapat mengakses lembar kerja yang sedang kami kerjakan. Ini adalah hal yang membuat frustasi, lalu bagaimana kita membuat lembar kerja excel tersedia untuk berfungsi saat kode berjalan di belakang layar.

Ini dapat dicapai dengan menambahkan fungsi VBA DoEvents .

Kode:

 Sub DoEvents_Example1 () Dim i As Long For i = 1 To 100000 Range ("A1") Value = i DoEvents Next i End Sub 

Saat kita menambahkan fungsi DoEvents dalam kode, kita dapat mengakses lembar kerja Excel.

Dari atas kita dapat melihat bahwa kode sedang berjalan tetapi kita dapat mengakses lembar kerja.

Hentikan Menjalankan Kode

Ketika kode berjalan di belakang layar kita dapat menambahkan baris, kolom, dan menghapus yang sama, kita dapat mengganti nama sheet dan kita juga dapat melakukan banyak hal lainnya. Saat kami menambahkan DoEvents, itu membuat kode vba berjalan cepat dan memungkinkan kami untuk menyadari bahwa tugas yang disebutkan sedang berjalan sendiri.

  • Salah satu bahaya dari fungsi DoEvents adalah ketika kita mengganti lembar kerja atau buku kerja itu menimpa nilai lembar aktif.
  • Bahaya lainnya adalah, jika kita memasukkan nilai apa pun ke sel, eksekusi kode terhenti dan bahkan tidak memberi tahu kita.
Catatan : Terlepas dari bahaya DoEvents di atas, ini masih merupakan fungsi yang praktis. Kita dapat menggunakan DoEvents sebagai bagian dari proses debugging ketika kita mencoba memperbaiki bug pada kode yang telah kita tulis.