VBA Loops

VBA Loops

Apa itu VBA Loops di Excel?

Loop VBA di excel adalah instruksi untuk menjalankan kode atau mengulangi tindakan beberapa kali. Tindakan (tugas) ini dapat diulangi untuk kumpulan objek seperti rentang sel, lembar kerja atau buku kerja, larik, bagan lembar kerja, dan sebagainya. Karena kode terpisah untuk setiap tugas tidak perlu dibuat, loop bekerja jauh lebih cepat daripada pengulangan tugas secara manual.

Misalnya, loop VBA dapat digunakan untuk menyorot sel yang berisi string teks tertentu, menghapus baris kosong dari kumpulan data, menyembunyikan atau menampilkan lembar kerja, membuka atau menutup buku kerja, mengatur warna bagan, dan sebagainya.

Dengan loop, seseorang dapat melalui objek (elemen) yang berbeda satu per satu. Oleh karena itu, dimungkinkan untuk menganalisis dan bekerja dengan setiap elemen.

Dalam VBA, pernyataan dieksekusi secara berurutan. Ini menyiratkan bahwa pernyataan pertama dieksekusi terlebih dahulu, diikuti oleh pernyataan kedua, ketiga, dan seterusnya. Namun, loop VBA mengeksekusi dan mengulang satu pernyataan atau sekelompok pernyataan sampai titik tertentu tercapai.

Loop biasanya digunakan di semua bahasa pemrograman.

templat
, dll., Harap berikan kami tautan atribusi

4 Jenis Loop VBA Teratas

Ada berbagai jenis loop di VBA. Empat teratas terdaftar sebagai berikut:

  1. Untuk putaran Berikutnya
  2. Untuk Setiap putaran
  3. Lakukan perulangan While
  4. Lakukan Hingga putaran

Mari kita bahas masing-masing jenis loop Excel VBA satu per satu.

#1–Untuk Putaran VBA Selanjutnya

For Next loop memungkinkan untuk mengulang daftar angka dan kumpulan objek. Objek ini mencakup rentang sel, lembar kerja, buku kerja, bentuk, atau objek lain di lembar kerja.

Saat melakukan perulangan melalui rentang sel, tugas yang sama dilakukan untuk setiap sel yang ditentukan dalam perulangan. Pada loop For Next, nomor awal dan akhir perlu disebutkan.

Dengan For Next loop, blok kode dijalankan untuk beberapa kali tertentu. Oleh karena itu, loop ini harus digunakan ketika jumlah iterasi (pengulangan) yang akan dilakukan telah diketahui sebelumnya.

Contoh 1

Kami ingin memasukkan nomor seri 1 hingga 10 di sel A1 hingga A10. Ini harus dilakukan dengan cara-cara berikut:

  1. a) Dengan teknik tradisional
  2. b) Dengan loop Untuk Selanjutnya
  3. a) Kode untuk memasukkan nomor seri dengan cara tradisional ditulis sebagai berikut:

Sub Nomor Seri ()

Rentang(“A1”).Nilai = 1
Rentang(“A2”).Nilai = 2
Rentang(“A3”).Nilai = 3
Rentang(“A4”).Nilai = 4
Rentang(“A5”).Nilai = 5
Rentang(“A6”).Nilai = 6
Rentang(“A7”).Nilai = 7
Rentang(“A8”).Nilai = 8
Rentang(“A9”).Nilai = 9
Rentang(“A10”).Nilai = 10

Akhir Sub

Di sini, kami telah menulis sepuluh baris kode. Namun, jika 100 atau 1000 angka yang akan dimasukkan, akan membutuhkan beberapa baris kode. Karena ini akan menjadi sangat sulit, loop For Next VBA digunakan untuk memudahkan proses.

  1. b) Langkah-langkah untuk memasukkan nomor seri dengan loop For Next VBA tercantum sebagai berikut:

Langkah 1: Buka makro dan nyatakan variabel ‘i’ sebagai bilangan bulat.

Sub Masukkan_Serial_Number ()

Dim i Sebagai Integer

Akhir Sub

Langkah 2: Buka loop For. Tentukan awal dan akhir loop menggunakan variabel ‘i.’ Hal yang sama ditunjukkan pada gambar berikut.

Langkah 3: Tulis kode untuk tugas yang akan dilakukan. Terapkan properti sel untuk memasukkan nomor seri.

Langkah 4: Masukkan ‘i’ sebagai nomor baris dan ‘1’ sebagai nomor kolom. Variabel ‘i’ telah dideklarasikan sebagai bilangan bulat.

Langkah 5: Nilai sel pertama harus satu. Jadi, alih-alih menulis ‘1’, masukkan ‘i’ sebagai nilainya. Setiap kali loop Excel VBA berjalan, nilai ‘i’ bertambah 1.

Langkah 6: Tekan tombol F8 untuk mengeksekusi satu baris kode sekaligus. Tombol ini harus ditekan hingga loop For tercapai, seperti yang ditunjukkan pada gambar berikut.

Catatan: Dengan tombol F8, seseorang dapat mengamati dampak setiap baris kode pada lembar kerja.

Dalam petunjuk berikut (langkah 6a ke langkah 6b), nilai ‘i’ yang berbeda dibahas.

Langkah 6a: Tempatkan kursor pada ‘i,’ seperti yang ditunjukkan pada gambar berikut. Nilai ‘i’ muncul sebagai nol. Selain itu, sebuah garis ditampilkan dengan warna kuning dengan panah kuning yang menunjuk ke sana.

Warna kuning menunjukkan bahwa baris kode ini (ditunjukkan pada gambar berikut) akan dijalankan.

Langkah 6b: Tekan tombol F8 lagi. Tempatkan kursor pada ‘i’ dan nilainya muncul sebagai 1, seperti yang ditunjukkan pada gambar berikut. Karena nilai ‘i’ adalah 1, ‘cells (i, 1).value = i’ menyiratkan ‘cells (1, 1).value = 1.’

Langkah 7: Tekan tombol F8. Nilai ‘1’ muncul di sel A1, seperti yang ditunjukkan pada gambar berikut.

Langkah 8: Tekan tombol F8 lagi. Excel VBA kembali ke loop For lagi. Ini karena batas akhir variabel ‘i’ ditetapkan pada 10. Tempatkan kursor pada ‘i’ dan nilainya muncul sebagai 2.

Langkah 9: Demikian juga, perulangan For Next berjalan sepuluh kali. Oleh karena itu, nomor seri 1 hingga 10 dimasukkan ke dalam sel A1:A10, seperti yang ditunjukkan pada gambar berikut.

#2–Untuk Setiap Putaran VBA

Loop Untuk Setiap juga dikenal sebagai loop Untuk Setiap-Berikutnya.

Untuk Setiap loop Untuk Setiap Loop Di VBAVBA Untuk Setiap Loop membantu pengguna untuk memeriksa dan menganalisis grup objek atau nilai secara individual. VBA bahkan memfasilitasi pelaksanaan aktivitas tertentu untuk setiap objek atau nilai dengan mengirimkan pernyataan atau kumpulan pernyataan dalam referensi ini. Baca lebih lanjut VBA membantu dalam pengulangan melalui kumpulan objek. Objek-objek ini termasuk lembar kerja, bagan, buku kerja, bentuk, rentang sel, dan sebagainya.

Dengan perulangan Untuk Setiap, seseorang dapat menelusuri setiap objek koleksi dan melakukan tugas di atasnya. Misalnya, seseorang dapat melakukan tugas di setiap lembar kerja buku kerja. Tugas ini bisa untuk menyembunyikan atau memperlihatkan satu atau lebih lembar kerja.

Loop Untuk Setiap VBA di Excel digunakan saat jumlah objek (atau elemen) dalam koleksi tidak diketahui. Oleh karena itu, jumlah iterasi (pengulangan) yang akan dilakukan tidak diketahui sebelumnya.

Contoh #2

Kami ingin melakukan tugas-tugas berikut dengan bantuan Untuk Setiap loop:

  1. a) Sembunyikan semua lembar kerja kecuali lembar berjudul ‘utama.’
  2. b) Perlihatkan lembar kerja tersembunyi (tersembunyi di tugas a)
  3. a) Kode untuk menyembunyikan semua lembar kerja kecuali lembar ‘utama’ ditulis sebagai berikut:

Sub To_Hide_All_Sheet()

Dim Ws Sebagai Lembar Kerja

Untuk Setiap W Di ActiveWorkbook.Worksheets

Jika Ws.Name <> “Main” Maka
Ws.Visible = xlSheetVeryHidden
End If

Selanjutnya Ws

Akhir Sub

  1. b) Kode untuk memperlihatkan semua lembar tersembunyi (tersembunyi di tugas a) ditulis sebagai berikut:

Sub To_UnHide_Specific_Sheet()

Dim Ws Sebagai Lembar Kerja

Untuk Setiap W Di ActiveWorkbook.Worksheets

Ws.Visible = xlSheetVisible

Selanjutnya Ws

Akhir Sub

#3–Lakukan Saat VBA Loop

Do While loop mengulangi pernyataan atau blok pernyataan saat kondisi yang diberikan benar. Dengan kata lain, perulangan berjalan selama kondisinya benar. Setelah kondisi menjadi salah, perulangan berhenti dan VBA keluar dari perulangan.

Kondisi While dapat diuji baik di awal maupun di akhir perulangan. Ini menyiratkan bahwa kondisi dapat diperiksa sebelum eksekusi blok kode atau setelahnya.

Pengujian kondisi While menentukan hal berikut:

  • Jika kondisinya salah dan diuji di awal perulangan, pernyataan di dalam perulangan mungkin tidak berjalan sekali pun.
  • Jika kondisinya salah dan diuji di akhir perulangan, pernyataan di dalam perulangan selalu dijalankan setidaknya sekali.

Catatan: Kondisi adalah ekspresi apa pun yang mengevaluasi nilai Boolean, benar atau salah.

Contoh #3

Kami ingin memasukkan nomor seri 1 sampai 10 di sel A1:A10. Gunakan loop Do While VBA.

Kode untuk memasukkan nomor seri yang ditentukan dengan loop Do While ditulis sebagai berikut:

Sub Do_While_Example()

Dim i Sebagai Integer

i = 1
Do While i < 11
Cells(i, 1).Value = i
i = i + 1
Loop

Akhir Sub

Loop berjalan selama ‘i’ kurang dari 11. Jadi, kode terus memasukkan nomor seri sampai i<11. Saat ‘i’ menjadi 11, perulangan berhenti.

#4–Lakukan Hingga VBA Loop

Loop Do until VBA di excel mengulangi pernyataan atau blok pernyataan hingga kondisi yang ditentukan benar. Dengan kata lain, perulangan berjalan selama kondisi salah. Perulangan berhenti setelah kondisi menjadi benar.

Seperti kondisi While, kondisi Hingga juga dapat diuji baik di awal maupun di akhir perulangan.

Pengujian kondisi Hingga menentukan hal berikut:

  • Jika kondisinya benar dan diperiksa di awal perulangan, pernyataan di dalam perulangan mungkin tidak berjalan sekali pun.
  • Jika kondisi benar dan dicentang di akhir perulangan, pernyataan di dalam perulangan akan selalu berjalan paling tidak satu kali.

Catatan 1: Untuk menentukan kondisi, While atau While dapat digunakan. Namun, keduanya tidak dapat digunakan secara bersamaan.

Catatan 2: Do VBA loop digunakan saat pernyataan atau blok pernyataan perlu diulang untuk waktu yang tidak terbatas. Pengulangan pernyataan ini tunduk pada terpenuhi atau tidak terpenuhinya suatu kondisi.

Contoh #4

Kami ingin memasukkan nomor seri 1 sampai 10 di sel A1:A10. Gunakan loop Do until VBA.

Kode untuk menyisipkan nomor seri yang diberikan dengan loop Do until ditulis sebagai berikut:

Sub Lakukan_Sampai_Contoh()

Dim i Sebagai Integer

i = 1
Lakukan Hingga i = 11
Sel(i, 1).Nilai = i
i = i + 1
Loop

Akhir Sub

Perulangan berjalan selama ‘i’ kurang dari 11. Setelah ‘i’ menjadi 11, perulangan berakhir. Ini karena, pada i=11, kondisi Hingga menjadi benar.

Perbedaan antara kode (ditulis dalam contoh #3 dan #4) dari loop Do While dan Do until adalah penggunaan operator logika. Yang pertama, operator ‘kurang dari’ (<) digunakan, sedangkan yang terakhir, operator ‘sama dengan’ (=) digunakan.

Pertanyaan yang Sering Diajukan

  1. Tentukan loop VBA.

VBA loop adalah instruksi yang membantu mengulangi tindakan beberapa kali. Dengan kata lain, pernyataan dieksekusi lebih dari satu kali. Jumlah iterasi (pengulangan) bisa tetap atau fleksibel tergantung pada jenis loop yang digunakan.

Sebagai contoh, perulangan For Next biasanya tetap, sedangkan perulangan Do tidak tetap.

Sebuah loop membantu dalam melewati sejumlah objek dan menganalisis masing-masing objek. Objek-objek ini bisa berupa rentang sel, buku kerja, lembar kerja, bagan, dan sebagainya. Loop lebih disukai di VBA karena kecepatannya. Jauh lebih cepat dan lebih mudah untuk bekerja dengan loop daripada mengulang tugas secara manual.

  1. Apa saja macam-macam loop pada VBA dan kapan sebaiknya digunakan?

Macam-macam loop dan kegunaannya adalah sebagai berikut:

a. For Next loop: Ini digunakan ketika sebuah pernyataan atau sekelompok pernyataan harus diulang beberapa kali.
b. Untuk Setiap loop: Ini digunakan ketika pernyataan atau sekelompok pernyataan harus diulang untuk setiap objek (elemen) dalam koleksi.
c. Do While loop: Digunakan ketika pernyataan atau sekelompok pernyataan harus diulangi selama kondisinya benar. Perulangan berakhir ketika kondisi tidak lagi benar.
d. Do until loop: Digunakan ketika pernyataan atau sekelompok pernyataan akan diulangi selama kondisinya salah. Perulangan berakhir ketika kondisi menjadi benar.
e. While Wend loop: Digunakan ketika pernyataan atau sekelompok pernyataan harus diulangi selama kondisi yang ditentukan benar. Loop ini dibuat untuk kompatibilitas dengan bahasa sebelumnya.

Catatan: Loop While Wend tidak sefleksibel loop Do While. Oleh karena itu, disarankan untuk menggunakan loop Do While daripada loop While Wend.

  1. Bagaimana cara keluar dari Do loop VBA?

Untuk keluar dari loop Do, tempatkan pernyataan Exit Do di mana saja di dalam loop Do. Biasanya, pernyataan Exit Do dimasukkan setelah kondisi dievaluasi.

Loop Do While dan Do until dapat dikeluarkan dengan bantuan pernyataan Exit Do. Pernyataan Exit Do sering digunakan dalam situasi berikut:

• Ketika tidak diperlukan untuk melanjutkan iterasi lebih lanjut • Ketika suatu kondisi telah menyebabkan perulangan berjalan tanpa batas

Dengan pernyataan Exit Do, kontrol dipindahkan ke pernyataan yang mengikuti putaran. Pernyataan Exit Do membuat cara alternatif untuk keluar dari loop Do.

Artikel yang Direkomendasikan

Ini telah menjadi panduan untuk loop VBA. Di sini kita membahas 4 jenis loop VBA Excel teratas (Untuk Selanjutnya, Untuk Setiap, Lakukan Sementara, dan Lakukan Hingga) dengan contoh dan penggunaan praktis. Artikel bermanfaat lainnya yang terkait dengan VBA dapat ditemukan di sini-

  • Break For Loop di Excel VBABreak For Loop Di Excel VBASetiap loop dalam prosedur apa pun diberikan beberapa set instruksi atau kriteria untuk menjalankannya beberapa kali, tetapi sangat umum untuk beberapa loop masuk ke loop tak terbatas, oleh karena itu, merusak kode. Dalam skenario seperti itu, kami memerlukan VBA Break For Loop untuk keluar dari situasi tertentu.baca lebih lanjut
  • Rentang VBA Rentang Rentang VBA adalah properti di VBA yang membantu menentukan sel tertentu, rentang sel, baris, kolom, atau rentang tiga dimensi. Dalam konteks lembar kerja Excel, objek rentang VBA menyertakan sel tunggal atau beberapa sel yang tersebar di berbagai baris dan kolom.baca lebih lanjut
  • Array di VBA
  • VLookup di VBA
  • VBA LCaseVBA LCaseVBA LCase mengonversi string masukan yang diberikan padanya dalam huruf kecil. Satu hal yang perlu diingat adalah bahwa fungsi ini mengubah semua fungsi menjadi huruf kecil, bukan sembarang karakter.baca lebih lanjut

Related Posts