VBA Break For Loop - Bagaimana Keluar Untuk Gelung di Excel VBA?

Excel VBA Break For Loop

Dalam VBA Break For Loop juga dikenali sebagai pintu keluar untuk gelung, setiap gelung dalam mana-mana prosedur telah diberikan beberapa set arahan atau kriteria untuk menjalankan nuber of time tetapi sangat umum bahawa beberapa gelung masuk ke gelung tak terbatas sehingga merosakkan kod dalam senario seperti itu, kita memerlukan rehat atau keluar untuk gelung untuk keluar dari situasi tertentu.

Katakan kita telah mengarahkan gelung untuk berjalan selama 10 kali, dan berdasarkan keadaan yang diberikan, jika nilai sel atau kriteria lain yang dibekalkan berjaya, maka ia harus keluar dari gelung excel sebelum menyelesaikan kuota gelung penuh sebanyak 10. Dalam artikel ini, kami akan menunjukkan kepada anda cara keluar dari gelung berdasarkan kriteria yang diberikan.

Bagaimana Memecahkan / Keluar Gelung di VBA?

# 1 - Break Untuk Gelung Seterusnya

VBA For Next Loop digunakan untuk menggulung sel dan melakukan sekumpulan tugas tertentu. Sebagai contoh, lihat kod VBA di bawah.

Kod:

Sub Exit_Loop () Dim K Selagi K = 1 Hingga 10 Sel (K, 1). Nilai = K Seterusnya K Akhir Sub

Ini akan memasukkan nombor siri dari sel A1 hingga A10.

Ini adalah perkara yang jelas dengan For Next Loop.

Sekarang saya mahu memecahkan gelung apabila ada nilai yang terdapat dalam 10 sel pertama. Untuk ini, saya telah memasukkan beberapa nilai teks di sel A8.

Sekarang saya ingin memerintahkan ini dalam kod, dengan mengatakan, "jika sel gelung mempunyai nilai tertentu, ia harus keluar dari gelung sebelum had yang ditentukan sebelumnya."

Kod:

Sub Exit_Loop () Dim K Selagi K = 1 Hingga 10 Jika Sel (K, 1). Nilai = "" Kemudian Sel (K, 1). Nilai = K Lain-lain Keluar Untuk Akhir Jika Selanjutnya K Akhir Sel

Lihat baris kod berikut:

Jika Sel (K, 1). Nilai = "" Kemudian
Sel (K, 1). Nilai = K
Lain
Keluar Untuk
Akhir Jika

Ia mengatakan Jika Sel (K, 1). Nilai = "sel gelung tidak sama dengan meneruskan gelung memasukkan nombor siri dari 1 hingga 10.

Bahagian terakhir gelung mengatakan:

Lain

Keluar Untuk

Sekiranya keadaan di atas tidak BENAR, maka gelung "Keluar Untuk".

Sekarang jalankan kod. Ia akan memasukkan nombor siri sehingga sel A7.

Kod di atas langsung keluar dari gelung tanpa mengatakan apa-apa; bagaimana kita tahu bahawa ia telah keluar dari gelung.

Untuk membersihkan kekaburan ini, kita perlu meletakkan satu kotak mesej VBA ringkas di bawah.

Kod:

Sub Exit_Loop () Dim K Selagi K = 1 Hingga 10 Jika Sel (K, 1). Nilai = "" Kemudian Sel (K, 1). Nilai = K Lain-lain MsgBox "Kami mendapat sel kosong, dalam sel" & Sel (K, 1). Alamat & vbNewLine & "Kami keluar dari gelung" Keluar Untuk Akhir Jika Selanjutnya Akhir K Akhir

Ketika melingkar melalui sel, jika ada sel yang tidak kosong, ia akan memaparkan pesan yang mengatakan, "Kami mendapat sel yang tidak kosong, di sel A8. Kami keluar dari gelung ”.

Ini akan memberitahu pengguna mengenai keluarnya gelung dengan alamat sel juga. Sekiranya ada nilai yang dimasukkan secara tidak sengaja, maka kita dapat memeriksa alamat sel yang dikembalikan di kotak pesan.

# 2 - Break Do Sampai Gelung

Seperti bagaimana kita keluar dari Next Loop, kita juga dapat keluar dari gelung "Do Sampai". Contohnya, lihat kod di bawah.

Kod:

Sub Exit_DoUntil_Loop() Dim K As Long K = 1 Do Until K = 11 Cells(K, 1).Value = K K = K + 1 Loop End Sub

This code also performs the task of inserting serial numbers. For example, if we wish to exit the loop when the variable “k” value becomes 6, we need to enter the criteria as IF k = 6 then exit the loop.

Code:

Sub Exit_DoUntil_Loop() Dim K As Long K = 1 Do Until K = 11 If K < 6 Then Cells(K, 1).Value = K Else Exit Do End If K = K + 1 Loop End Sub

This will run the loop until the variable value becomes 6. After that, it will exit the loop. If you wish to show the message to the user, then you can add the message box as well.

Code:

Sub Exit_DoUntil_Loop() Dim K As Long K = 1 Do Until K = 11 If K 5" Exit Do End If K = K + 1 Loop End Sub

This will show the message below.

Seperti ini, berdasarkan kriteria yang diberikan, kita dapat keluar dari gelung jika kriteria itu BENAR, atau jika tidak, kita dapat meneruskan gelung tersebut.

Artikel menarik...