Excel VBA Do Loop
VBA Do loop , ini adalah sekumpulan instruksi di dalam sub prosedur di mana kode menjalankan beberapa kali hingga kriteria yang diinginkan tercapai atau ambang batas apa pun terlampaui atau aman untuk dikatakan hingga data yang diperlukan diperoleh.
Sementara loop bekerja pada hasil logis, loop terus berjalan bolak-balik sementara kondisi pengujian TRUE. Saat kondisi pengujian mengembalikan FALSE, itu akan keluar dari loop. Loop adalah inti dari semua bahasa pemrograman. Dalam artikel kami, kami menunjukkan pentingnya loop dan cara mengkodekannya. Pada artikel ini, kami menunjukkan kepada Anda bagaimana menggunakan Do Loop.

Bagaimana cara menggunakan VBA Do Loop?
Contoh # 1 - Kondisi di akhir Loop
Kami telah melihat uji kondisi di awal loop. Pada kode sebelumnya, kita telah melihat contoh memasukkan nomor seri, dan kodenya seperti itu.
Kode:
Sub Do_While_Loop_Example1 () Dim k As Long k = 1 Do While k <= 10 Cells (k, 1). Nilai = kk = k + 1 Loop End Sub

Sekarang Anda dapat menjalankan kode ini secara manual atau melalui tombol pintas F5 untuk melihat hasilnya.
Kode ini akan memasukkan nomor seri dari 1 hingga 10.

Tapi kita juga bisa menguji kondisi di akhir loop juga. Kita perlu menggunakan kata "while" dan tes kondisi di akhir setelah kata Loop.
Satu-satunya perubahan di sini adalah menerapkan tes di akhir, seperti yang ditunjukkan di bawah ini.
Kode:
Sub Do_While_Loop_Example1 () Dim k As Long k = 1 Do Cells (k, 1). Value = kk = k + 1 Loop While k <= 10 End Sub

Seperti ini, kita juga bisa menguji kondisi di akhir pernyataan loop.
Catatan: Kode akan berjalan, kemudian menguji kondisi untuk kembali ke loop sekali lagi atau tidak. Ini berarti ini akan berjalan terlebih dahulu dan kemudian mencoba situasi tersebut nanti.Contoh # 2 - Penjumlahan Menggunakan Do While Loop
Asumsikan Anda memiliki data penjualan dan biaya di lembar excel Anda. Di bawah ini adalah kumpulan data dummy yang telah saya buat untuk kalkulasi.

Sekarang kita perlu mendapatkan nilai keuntungan di kolom C. Saya sudah membuat kode yang akan melakukan pekerjaan untuk saya.
Kode:
Sub Do_While_Loop_Example2 () Dim k As Long Redup LR As Long k = 2 LR = Cells (Rows.Count, 1). End (xlUp) .Row Do While k <= LR Cells (k, 3). Value = Cells (k , 1) + Sel (k, 2) k = k + 1 Loop End Sub

LR = Sel (Rows.Count, 1) .End (xlUp) .Row
Kode ini akan mengidentifikasi baris yang terakhir digunakan di kolom pertama. Ini membuat kode menjadi dinamis karena jika ada penambahan atau penghapusan data, ini akan menyesuaikan waktu urutan saya untuk menjalankan loop.
k = 2
Kami ingin penghitungan dilakukan dari sel kedua dan seterusnya. Jadi nilai awal k adalah 2.
Do While k <= LR
Seperti yang saya katakan, LR akan menemukan baris terakhir yang digunakan di kolom pertama. Artinya loop akan berjalan sedangkan k <= ke nilai LR. Dalam hal ini, saya memiliki 10 baris, jadi LR = 10.
Loop akan berjalan hingga nilai k mencapai 10. Setelah jumlahnya melewati 10 loop, loop akan berhenti.
Sekarang Anda dapat menjalankan kode ini menggunakan tombol pintas F5 atau secara manual untuk melihat hasilnya.

Contoh # 3 - Pernyataan Keluar di Do While Loop
Kita juga bisa keluar dari loop saat kondisinya masih TRUE saja. Misalnya, ambil juga data di atas di sini.

Asumsikan Anda tidak ingin melakukan perhitungan penuh, tetapi Anda hanya perlu menghitung 5 baris pertama keuntungan, dan begitu mencapai baris ke- 6 , Anda ingin keluar dari lingkaran. Ini dapat dilakukan dengan menggunakan fungsi IF di excel. Kode di bawah ini termasuk pernyataan keluar.
Kode:
Sub Do_While_Loop_Example3 () Dim k As Long Redup LR As Long k = 2 LR = Cells (Rows.Count, 1). End (xlUp) .Row Do While k 6 Kemudian Exit Do Cells (k, 3). Value = Cells ( k, 1) + Sel (k, 2) k = k + 1 Loop End Sub

“If k> 6 Then Exit Do”
Baris kode ini akan memulai proses keluar. Loop akan terus berjalan hingga nilai k mencapai 6. Saat melebihi 6, If condition akan mengeksekusi kode, “Exit Do.”
Sekarang Anda dapat menjalankan kode ini menggunakan tombol pintas F5 atau secara manual untuk melihat hasilnya.

Hal-hal untuk diingat
- Melakukan. Perulangan bekerja pada hasil logika, dan terus menjalankan perulangan bolak-balik sementara kondisi pengujian TRUE. Saat kondisi pengujian mengembalikan FALSE, itu akan keluar dari loop.
- Kita dapat keluar dari pengulangan pada waktu tertentu dengan menyesuaikan satu tes logis lagi di dalam lingkaran dengan menggunakan fungsi IF.
- Jika kondisi atau tes diberikan di bagian atas loop, pertama-tama akan memeriksa tes dan maju lebih jauh hanya jika BENAR.
- Jika kondisi atau pengujian diberikan di akhir loop, pertama-tama akan mengeksekusi blok kode di dalam pernyataan loop, dan di masa mendatang, akan menguji kondisi untuk memutuskan apakah akan kembali menjalankan loop sekali lagi atau tidak.