Pengendalian Ralat Excel VBA
Di VBA ketika kita bekerja dengan kod, kita mungkin menghadapi berbagai jenis kesalahan dan cara menyelesaikan masalah ini dikenali sebagai Kesalahan pengendalian, sekarang mungkin ada beberapa kesalahan yang dibuat dalam sintaks yang unggul sendiri yang menyoroti tetapi ketika ada beberapa kesalahan yang berada di luar jangkauan atau sesuatu yang tidak ada excel memberi kita pop timbul untuk yang sama, penting untuk mengetahui kod ralat untuk kesalahan apa untuk mengenal pasti kesalahan dalam kod.
Di Excel VBA, semasa menjalankan sekumpulan kod, kami mendapat beberapa kesalahan. Sebilangan kesalahan ini adalah kesalahan sintaks; ada yang ralat yang tidak dapat dilaksanakan. Kesalahan sintaks adalah apabila dibuat oleh pengguna diserlahkan dengan warna merah dengan excel itu sendiri. Tetapi apabila terdapat jenis ralat waktu jalan lain, bagaimana kita mengatasinya, dan bagaimana kita melampaui ini adalah perkara yang akan kita bahas dalam artikel ini.
Selain daripada kesalahan sintaks, ralat waktu berjalan yang lain perlu ditangani semasa menjalankan sekumpulan kod. Pertama, izinkan saya memberi contoh bagaimana ralat runtime lain berlaku. Lihat kod di bawah ini,

Ini adalah contoh kod, apabila dijalankan, akan mengembalikan apa yang ditulis dalam fungsi msgbox. Tetapi seperti yang kita lihat bahawa pada baris kedua kod, ada 4/0, yang tidak mungkin dalam istilah matematik, jadi akan mengembalikan kesalahan masa berjalan. Marilah kita melaksanakan kod di atas dan melihat kesalahan yang akan kita perolehi.

Ini adalah kesilapan yang kita dapat semasa melaksanakan kod yang diberikan. Sekarang bagaimana kita menangani ralat ini dibuat oleh Error Handling.
Terdapat dua kaedah untuk menangani kesalahan iaitu:
- Mengenai Kesalahan Goto, dan
- Pada Ralat Sambung Seterusnya.
Penjelasan
Seperti yang dijelaskan di atas, kami mendapat banyak jenis kesalahan dalam VBA. Sebahagiannya adalah sintaks, dan ada yang berjalan. Kesalahan sintaks sudah diserlahkan dalam warna Merah, sebagai contoh, rujuk tangkapan skrin di bawah,

Sementara yang lain adalah kesilapan masa berjalan. Pada dasarnya, excel akan melakukan tiga perkara berikut, sama ada akan menunjukkan kesalahan atau mengabaikan kesalahan itu, atau akan menunjukkan sekumpulan arahan tertentu. Untuk melaksanakan tugas seperti itu, kita perlu memberi arahan, dan ini disebut Kesalahan Menangani.
Bagaimana Mengendalikan Kesalahan dalam Kod VBA?
Contoh # 1
Sebagai contoh pertama, mari kita ambil kod pertama yang kita ambil sebagai demonstrasi. Dalam contoh di atas, kita telah melihat bahawa kod tersebut memberikan ralat masa berjalan pada fungsi msgbox kedua.
Tuliskan kod berikut setelah membuka subfungsi,
Kod:
Sub Contoh () Pada Ralat Kesalahan Selanjutnya MsgBox 4/2 MsgBox 4/0 MsgBox 4/1 Akhir Sub

Sekarang apabila kita melaksanakan kod di atas, kita melihat bahawa garis kod yang mempunyai kesalahan tidak dijalankan. Excel melangkau garis itu dan disambung semula pada baris seterusnya.

Terdapat kaedah lain untuk menangani ralat tersebut ialah VBA Goto Statement. Kami menyediakan excel sebagai destinasi untuk dikunjungi apabila mendapati ralat. Daripada kod pengendalian ralat sebelumnya, kami memasukkan, menuliskan kod berikut,
Kod:
Sub Contoh () Pada Kesalahan GoTo az MsgBox 4/2 MsgBox 4/0 MsgBox 4/1 End Sub

Kami memberikan excel Az sebagai destinasi untuk dituju jika ia menemui kesilapan. Sekarang selepas kotak msg, tulis kod lain seperti di bawah,
Kod:
Sub Contoh () Pada Kesalahan GoTo az MsgBox 4/2 MsgBox 4/0 MsgBox 4/1 Selesai: Keluar Sub

Sekarang kita perlu menentukan az tujuan sebagai apa yang harus dilakukan ketika excel menemui kesalahan dalam kodnya.
Kod:
Sub Contoh () Pada Kesalahan GoTo az MsgBox 4/2 MsgBox 4/0 MsgBox 4/1 Selesai: Keluar Sub az: MsgBox "Ini adalah ralat" & Err.Deskripsi Akhir Sub

Sekarang ketika kita menjalankan kod ini, kita melihat hasilnya dipaparkan.

Ini adalah hasil kotak msg yang pertama dan seperti yang kita ketahui bahawa kita mempunyai ralat pada baris seterusnya kod kita, mari kita lihat hasilnya apa yang akan diberikan oleh excel.

Huraian err di atas dalam kod membantu kami untuk menunjukkan dengan tepat apa kesalahan yang berlaku dalam kod kami.
Contoh # 2
Kami telah belajar bagaimana menangani kesilapan dalam kod kami. Mari kita lihat contoh lain bagaimana menangani kesilapan. Pertimbangkan kod berikut sebagai contoh kedua kami.

Kami mempunyai ralat yang agak serupa dari contoh 1. Kesalahan itu berada dalam baris d = i / b. Sekarang kita akan menangani kesilapan ini dengan menggunakan dua kaedah yang dijelaskan di atas.
Tuliskan kod berikut setelah membuka subfungsi,
Kod:
Sub Sampel2 () Pada Kesalahan Resume Selanjutnya bx Dim i As Integer, b As Integer, c As Integer, d As Integer i = 2 b = 0 c = i + b MsgBox cd = i / b MsgBox d End Sub

Now when we execute our code, we can see that it ignores the second line and just displays the value for C.

The above error handler was a resume next, and now we will use the Go to wherein we will tell we excel a destination to go when it encounters an error. Write down the following code,
Code:
Sub Sample2() On Error GoTo bx Dim i As Integer, b As Integer, c As Integer, d As Integer i = 2 b = 0 c = i + b MsgBox c d = i / b MsgBox d

The bx is a destination given when it encounters an error after msgbox D write down the following code,
Code:
Sub Sample2() On Error GoTo bx Dim i As Integer, b As Integer, c As Integer, d As Integer i = 2 b = 0 c = i + b MsgBox c d = i / b MsgBox d DOne: Exit Sub

Now we need to define the destination Bx what it should do when it encounters an error, So write down the following code,
Code:
Sub Contoh2 () Pada Kesalahan GoTo bx Dim i As Integer, b As Integer, c As Integer, d As Integer i = 2 b = 0 c = i + b MsgBox cd = i / b MsgBox d DOne: Exit Sub bx: MsgBox "Ini Kesalahan Lain" & Err.Deskripsi Akhir Sub

Sekarang apabila kita melaksanakan kod, kita dapat melihat bahawa excel terlebih dahulu memberi kita nilai untuk C.

Sekarang dalam langkah lain, ini akan memberi kita arahan yang kami berikan ketika menghadapi ralat.

Ini adalah bagaimana kita menangani ralat runtime biasa di Excel VBA.
Perkara yang Perlu Diingat
Terdapat beberapa perkara yang perlu kita ingat mengenai Pengendalian Ralat:
- Pada Resume Ralat Seterusnya, Mengabaikan kesalahan
- On Error GoTo Gives unggul destinasi ketika menghadapi ralat.
- Penerangan digunakan untuk menunjukkan kesalahan tepat yang berlaku kepada pengguna.