Padam Baris VBA

Excel VBA Padam Baris

Biasanya dalam lembaran kerja excel, kami mempunyai dua kaedah yang berbeza untuk menghapus baris satu adalah pintasan papan kekunci dan yang lain dengan menggunakan kaedah klik kanan dan sisipkan tetapi di VBA kita harus menggunakan perintah hapus dan pernyataan lembaran kerja untuk menghapus semua baris bersama, silap mata untuk ini adalah bahawa jika kita perlu menghapus satu baris, kita memberikan rujukan satu baris tetapi untuk beberapa lajur kita memberikan sebilangan rujukan baris.

Dengan menggunakan Metode Delete Row VBA, kita dapat menghapus semua baris kosong, kita dapat menghapus baris berdasarkan nilai sel, kita juga dapat menghapus keseluruhan baris jika ada sel yang kosong.

Dalam artikel ini, kita akan membincangkan kaedah "VBA Delete Row". Biarkan diri anda sibuk selama 15 hingga 20 minit seterusnya untuk mengetahui konsepnya.

Bagaimana Menghapuskan Baris?

Anda boleh memuat turun Templat VBA Delete Row Excel ini di sini - Templat VBA Delete Row Excel

Contoh # 1

Di VBA, kita perlu menyebutkan baris yang sedang kita hapuskan.

Kod:

 Sub DeleteRow_Example1 () Sel (1, 1) Sub Akhir 

Sel (1, 1) bermaksud lajur pertama baris pertama iaitu sel A1. Kemudian kami menggunakan kaedah "delete".

Kod:

 Sub DeleteRow_Example1 () Sel (1, 1). Hapus Sub Akhir 

Sekarang ini akan memadamkan sel pertama. Semua nilai sisi kanan akan mengalihkan satu sel ke kiri.

Contoh # 2

Sekiranya anda ingin menghapus keseluruhan baris, kita perlu menggunakan sifat "EntireRow" maka kita perlu menggunakan kaedah "delete" untuk menghapus keseluruhan baris sel yang telah kita pilih.

Kod:

Sub DeleteRow_Example2 () Sel (1, 1). SeluruhRow. Padam Sub Akhir

Sebagai contoh, saya memasukkan beberapa watak dalam helaian excel seperti berikut.

Sekarang jika saya menjalankan kod ini, ia akan menghapus keseluruhan baris bukan satu sel.

Contoh # 3

Kita boleh menghapus baris dengan menggunakan beberapa cara. Dalam contoh di atas, kami telah menghapus baris dengan menggunakan harta CELLS, sekarang kami akan melihat cara menghapus dengan menggunakan harta ROWS.

Sekarang kita perlu menyebut apa baris yang perlu kita hapus, katakan kita perlu menghapus baris ke-5.

Sekarang gunakan harta tanah "EntireRow".

Setelah memilih harta benda apa yang perlu kita lakukan iaitu kaedah. Kita perlu memadam baris.

Kod:

 Sub DeleteRow_Contoh3 () Baris (5). SeluruhRow. Hapus Sub Akhir 

Jadi, kod ini akan menghapus baris ke-5.

Contoh # 4

Padam Beberapa Baris dengan Menggunakan Objek Julat

Bagaimana kita memadamkan beberapa baris?

Kita boleh menggunakan objek VBA RANGE untuk menghapus lebih dari satu baris. Andaikan anda mempunyai beberapa nilai dari sel A1 hingga A6.

Sekarang saya ingin menghapus 5 baris pertama, jadi saya dapat merujuk baris ini dengan menggunakan objek Range sebagai "Range (" A1: A5 ")"

Kod:

 Sub DeleteRow_Example4 () Julat ("A1: A5") Sub Akhir 

Sekarang saya mahu menggunakan perkataan "EntireRow".

Kod:

 Sub DeleteRow_Example4 () Julat ("A1: A5"). Seluruh Sub End End 

Dalam keseluruhan baris ini, kita perlu melakukan kaedah penghapusan, jadi gunakan kaedah Hapus.

Kod:

 Sub DeleteRow_Example4 () Julat ("A1: A5"). SeluruhRow. Hapus Sub Akhir 

Sekarang ini akan menghapus baris yang dipilih.

Contoh # 5

Padam Baris Berdasarkan Nilai Sel

Kita juga dapat menggunakan kaedah "EntireRow.Delete" ini untuk menghapus baris berdasarkan nilai sel di VBA. Sebagai contoh, saya mempunyai nilai Ya & Tidak dari sel A1 hingga A10.

Sekarang kita perlu menghapus baris yang mempunyai nilai "Tidak". Untuk melakukan tugas ini, kita perlu menggunakan fungsi "IF" dengan loop untuk menghapus semua baris yang memiliki nilai "Tidak".

Kod di bawah ini akan berfungsi untuk kita.

Kod:

 Sub DeleteRow_Example5() Dim k As Integer For k = 10 To 1 Step -1 If Cells(k, 1).Value = "No" Then Cells(k, 1).EntireRow.Delete End If Next k End Sub 

Example #6

Delete All the Blank Cells Rows

There are situations where we need to delete the entire row if any of the cells in the range is blank. For example, I have below set of data.

All the colored cells are blank, so I need to delete the entire row. We can perform this task with two sets of code. Below is the code.

Code:

 Sub DeleteRow_Example6() Range("A1:F10").SpecialCells(xlCellTypeBlanks).EntireRow.Delete End Sub 

This will identify the blank cells in the range A1 to F10.IF any blank cells found will delete the entire row.

The problem with this code is it will only delete the blank cell’s row only in the range A1 to F10, but if any cells are blank in any other cells it will not delete. So keeping this in mind I have written one more code.

Code:

 Sub DeleteRow_Example7() Dim RangeToDelete As Range Dim DeletionRange As Range Set RangeToDelete = Application.InputBox("Please select the range", "Blank Cells Rows Deletion", Type:=8) Set DeletionRange = RangeToDelete RangeToDelete.SpecialCells(xlCellTypeBlanks).EntireRow.Delete End Sub 

When you run this code firstly it will ask you to select the range with an input box appearing in front of you.

After selecting the range you need to click on OK, it will delete all the blank cells rows in the selected range.