MENCARI BARIS DATA TERAKHIR TABEL EXCEL DENGAN PENGULANGAN PROSEDUR “Do…Loop” [MACRO VBA EXCEL TUTORAL SERIES] – Belajar Microsoft Excel : Tips, Tricks & Tutorial

MENCARI BARIS DATA TERAKHIR TABEL EXCEL DENGAN PENGULANGAN PROSEDUR “Do…Loop” [MACRO VBA EXCEL TUTORAL SERIES]

VBA microsoft visual basic for application excel

Assalamulaikum Warohmatullahi Wabarokatuh

Sodara2 sekaliyan para pembatja jang boediman … melanjutkan topik cara mencari baris terakhir dalam sebuah tabel … setelah dibahas dalam dua artikel sebelomnya tentang cara mencari baris terakhir yang berisi data dalam sebuah tabel Excel yang memanfaatkan metode “Range.End(XlDown)klik disini dan “Range.End(XlUp) klik disini … metode berikutnya dalam  artikel ini adalah “Do … Loop

Metode “Do … Loop” digunakan untuk melakukan pengulangan langkah2 prosedur yang berada diantara statement “Do” dan “Loop” … agar pengulangan prosedur dijalankan harus memenuhi syarat yang ditetapkan … Syntaxnya sebagai berikut :

Do [{While | Until} Syarat]
[prosedur]
[Exit Do]
[prosedur]
Loop

Atau bisa juga pakai Sintaks seperti berikut :

Do
[prosedur]
[Exit Do]
[prosedur]
Loop [{While | Until} Syarat]

Sintaks diatas mempunya 2 bagian yang perlu mendapat perhatian :
Prosedur yang akan dijalankan/diulang jika memenuhi Syarat/Kondisi yang ditetapkan
Syarat/Kondisi … berupa ekspresi yang hasilnya TRUE atau FALSE … jika ekspresi syarat tersebut hasilnya NULL akan dianggap sebagai FALSE ... Syarat diletakkan setelah statement “While” atau “Until” … jika Syarat pengulangan tidak ditetapkan dengan “While” atau “Until” maka untuk membatasi pengulangan prosedur bisa dilakukan dengan statemen “Exit Do”

Ada beberapa alternatip yang bisa sOdara pakai untuk mengaplikasikan metode “Do…Loop” ini … penggunaanya dalam kasus untuk mencari baris terakhir yang berisi data dalam sebuah tabel ada beberapa variasi yang bisa sOdara pilih

  1. “Do While … Loop” kalau diartkan secara ngawur adalah “lakukan PROSEDUR saat memenuhi SYARAT PENGULANGAN … sebelomnya kita identifikasi dulu Prosedur yang akan dijalankan dan Syarat Pengulanggannya

Prosedur yang akan dijalankan adalah “menentukan/menetapkan baris berikutnya yang akan dievaluasi” … nilai baris berikutnya disimpan dalam Variabel BarisTerakhir (nama Variabel boleh sesuai selera sOdara) … untuk menentukan/menetapkan baris berikutnya kodenya sebagai berikut :

BarisTerakhir = BarisTerakhir + 1

Syarat Pengulangan adalah “Jika baris berikutnya TIDAK KOSONG” … syarat diletakkan setelah statemen “Do While”

Do While Not .Cells(BarisTerakhir + 1, Kolom).Value = Empty

Dan berikut adalah untaian kode selengkapnya

do ... loop

2. “Do … Loop While” kembali saya memberanikan diri untuk mengartikannya secara ngawur yaitu “ulangi PROSEDUR saat memenuhi SYARAT PENGULANGAN”Prosedur dan Syarat Pengulangan masih sama dengan metode nomor 1 … jadi kodenya jugaK beda dikit aja

• Prosedur

BarisTerakhir = BarisTerakhir + 1

• Syarat Pengulangan adalah “Jika baris berikutnya TIDAK KOSONG” … syarat diletakkan setelah statemen “Loop While”

Loop While Not .Cells(BarisTerakhir + 1, Kolom).Value = Empty

Do ... Loop While

3. “Do Until … Loop” yang arti ngawurnya “lakukan PROSEDUR sampai memenuhi SYARAT BERHENTI ULANGI” … Prosedur masih sama dengan nomor2 sebelomnya namun Syaratnya beda

• Prosedur

BarisTerakhir = BarisTerakhir + 1

• Syarat Berhenti Ulangi merupakan kebalikan dari Syarat Pengulangan … adapun Syarat Berhenti Ulangi adalah jika “baris yang dievaluasi kosong” dan diletakkan setelah statemen “Do Until”

Do Until .Cells(BarisTerakhir + 1, Kolom).Value = Empty

Dan kode selengkapnya sebagai berikut

Do Until ... Loop

4. “Do … Loop Until” yang arti ngawurnya “ulangi PROSEDUR sampai memenuhi SYARAT BERHENTI ULANGI”Prosedur dan Syarat masih sama dengan metode nomor 3 sehingga kodenya tinggal modip dikit saja yaitu mindahin syarat yang tadinya dibelakang “Do” sekarang dibelakang “Loop”

• Prosedur

BarisTerakhir = BarisTerakhir + 1

• Syarat Berhenti Ulangi diletakkan setelah statemen “Loop Until”

Loop Until .Cells(BarisTerakhir + 1, Kolom).Value = Empty

Do ... Loop Until

5. “Do … Exit Do … Loop” yang saya terjemahkan menjadi “keluar dari Do…Loop jika memenuhi SYARAT BERHENTI ULANGI”Prosedur dan Syarat sebagai berikut

• Prosedur

BarisTerakhir = BarisTerakhir + 1

• Syarat Berhenti Ulangi adalah jika “baris berikutnya kosong” … evaluasi dilakukan sebelum prosedur menentukan baris berikutnya

If .Cells(BarisTerakhir + 1, Kolom).Value = Empty Then
Exit Do
End If

Do ... exit Do .... Loop

evaluasi bisa juga dilakukan setelah prosedur menentukan baris berikutnya kodenya beda dikit

Do ... Exit Do ... Loop

contoh2 diatas adalah untuk tabel yang dimulai dari cell A1 … jika tabel tidak dimulai dari A1 silahkan sOdara sesuaikan nilai konstanta Kolom dan nilai awal Variabel BarisTerakhir … saya hanya bikinkan 1 contoh kode untuk tabel yang saja tidak dimulai dari A1 menggunakan “Do … Exit Do … Loop” kayak berikut ini

Do ...Exit Do ...Loop

akhirnya selesai jugak artikel ini … untuk contoh file TheLastRowDoLoop.xlsm bisa sOdara download dari halaman Download sub Page 2016 bulan November … bisa klik disini  untuk selanjutnya saya kan sharing  metode lainnya yaitu Range.CurrentRegion yang bisa sOdara baca disini …. sekiYan semoga manpaat dan MDLMDL 😉

bingung cara downloadnya ??

Baca aja halaman download dengan klik icon di samping

feed , email and my social media

8 Comments

Jika sOdara menemukan sesuatu yang bermanpaat di marih .... silahkan kasih komennya