Menghapus Baris dan Kolom

VBA (Visual Basic for Applications) adalah bahasa pemrograman yang terintegrasi di dalam Excel untuk mengotomatisasi tugas-tugas dan membuat makro.

VBA memiliki kemampuan untuk menghapus baris dan kolom dengan mudah.

Sedikit catatan yang harus diingat, setiap aksi yang dijalankan VBA tidak bisa dilakukan Undo. Jadi pastikan jika akan menghapus baris atau kolom, sudah benar-benar yakin ingin menghapus baris dan kolom.

karena jika sudah terhapus data yang ada pada kolom atau baris tersebut tidak bisa di undo atau dikembalikan.

Untuk menghapus baris maupun kolom dalam VBA yaitu sama-sama menggunakan perintah .delete . Yang berbeda adalah Object penyertanya.

Baik menghapus baris ataupun kolom ada 2 metode yang bisa digunakan.

Pertama menggunakan Object dari Row atau Column dan yang kedua menggunakan Object dari Range. kedua Metode ini memiliki cara penghapusan yang berbeda.

Menghapus Dengan Object Rows dan Columns

Untuk menghapus dengan menggunakan object Rows atau Columns parameter yang diisi adalah sebuah Index dari baris atau kolom yang dihapus.

Misalnya sebagai contoh ingin menghapus baris ke 10, maka notasi scriptnya bisa dibuat seperti dibawah ini

Sub HapusBaris()
   ' Ganti angka 3 dengan nomor baris yang ingin dihapus 
    Rows(10).Delete
End Sub

Sedangkan untuk kolom, ganti object Rows dengan Columns

Sub HapusBaris()
   ' Ganti angka 10 dengan nomor baris yang ingin dihapus 
    Columns(10).Delete
End Sub

Pada dua contoh script diatas, keduanya akan menghapus baris atau kolom pada sheet yang aktif, karena nama sheet tidak explisit dituliskan dalam script.

Jika ingin menghapus pada sheet tertentu misalnya sheet yang bernama “Report” maka notasinya bisa dibuat seperti dibawah ini:

Sub HapusBaris()
   ' Ganti angka 10 dengan nomor baris yang ingin dihapus 
    Worksheets("Report").Rows(10).Delete
End Sub

Menghapus Dengan Object Dari Range

Cara kedua adalah menghapus baris atau kolom menggunakan Object dari Range.

Cara ini tidak memerlukan sebuah index dari Baris atau kolom.

Misalnya, jika kita ingin menghapus baris seluruh baris di A3, tentunya berdasarkan Object Range("A3") maka notasi scriptnya bisa dibuat seperti ini:

Sub HapusBaris()
   ' Ganti angka A3 dengan Range baris yang ingin dihapus 
    Range("A3").EntireRow.Delete
End Sub

begitupun jika ingin menghapus kolom A, maka notasinya adalah

Sub HapusBaris()
   ' Ganti angka A3 dengan Range kolom yang ingin dihapus 
    Range("A3").EntireColumn.Delete
End Sub

Contoh Kasus 1

  • Bagaimana menghapus baris, tetapi hanya baris yang berisi apel saja yang dihapus di Range A1 sampai A100

Jawaban :

Sub HapusBerdasarkanKriteria()
    Dim Kriteria As String
    Dim i As Integer

    Kriteria = "apel" 
    ' Ganti dengan kriteria yang ingin Anda gunakan
    
    For i = 100 To 1 Step -1
        If lcase(Cells(i, 1).Value) = Kriteria  Then
            Rows(i).Delete
        End If
    Next i
End Sub

Untuk menghapus baris dengan Looping, penghapusan harus dimulai dari bawah ke atas

vba.co.id

Leave a Reply

Your email address will not be published. Required fields are marked *

Chat WhatsApp
WhatsApp