VBA Izbriši retke - Primjeri za brisanje Excel redova pomoću VBA

Excel VBA Izbriši redak

Obično u Excelovom radnom listu imamo dvije različite metode za brisanje redaka, jedan je tipkovni prečac, a drugi pomoću metode desnim klikom i umetanjem, ali u VBA moramo koristiti naredbu delete i naredbu radnog lista za brisanje svih redaka zajedno, trik je to je da ako trebamo izbrisati jedan redak dajemo referencu jednog retka, ali za više stupaca dajemo više referenci retka.

Korištenjem VBA metode brisanja reda možemo izbrisati sve prazne retke i redak na temelju vrijednosti ćelije. Također možemo izbrisati cijeli redak ako je neka od stanica prazna.

U ovom ćemo članku razgovarati o metodi "VBA Delete Red". Budite zaokupljeni sljedećih 15 do 20 minuta kako biste naučili o konceptu.

Kako izbrisati redak?

Primjer # 1

U VBA moramo spomenuti redak koji brišemo.

Kodirati:

Sub DeleteRow_Example1 () Ćelije (1, 1) Kraj Sub

Stanice (1, 1) označavaju prvi redak prvog stupca, tj. A1 ćeliju. Tada koristimo metodu "izbriši".

Kodirati:

Sub DeleteRow_Example1 () Ćelije (1, 1) .Izbriši kraj Sub

Sada će ovo izbrisati prvu ćeliju. Sve vrijednosti s desne strane pomaknut će jednu ćeliju ulijevo.

Primjer # 2

Ako želite izbrisati cijeli redak, trebamo upotrijebiti svojstvo "EntireRow", tada metodom "delete" moramo izbrisati cijeli redak ćelije koju smo odabrali.

Kodirati:

Sub DeleteRow_Example2 () Ćelije (1, 1) .EntireRow.Delete End Sub

Na primjer, unijeo sam nekoliko znakova u excel list kako slijedi.

Sada, ako pokrenem ovaj kod, on će izbrisati cijeli redak, a ne jednu ćeliju.

Primjer # 3

Redak možemo izbrisati na nekoliko načina. U gornjem primjeru izbrisali smo redak pomoću svojstva CELLS. Sada ćemo vidjeti kako izbrisati pomoću svojstva ROWS.

Sada moramo spomenuti koji je red koji moramo izbrisati. Recimo moramo izbrisati 5 th red.

Sada koristite svojstvo "EntireRow" svojstvo.

Nakon odabira svojstva, što trebamo učiniti, tj. Način. Moramo izbrisati redak.

Kodirati:

Podređaj DeleteRow_Example3 () Redovi (5) .EntireRow.Delete End Sub

Dakle, ovaj kod će izbrisati 5 -og reda.

Primjer # 4

Izbrišite više redaka pomoću objekta dometa

Kako možemo izbrisati više redaka?

Objekt VBA RANGE možemo koristiti za brisanje više redaka. Pretpostavimo da imate neke vrijednosti od A1 do A6 stanica.

Sada želim izbrisati prvih 5 redaka, tako da se na njih mogu pozivati ​​pomoću objekta Range kao "Raspon (" A1: A5 ")"

Kodirati:

Sub DeleteRow_Example4 () Raspon ("A1: A5") Kraj Sub

Sada želim koristiti svojstvo "EntireRow".

Kodirati:

Podrazmak DeleteRow_Example4 () Raspon ("A1: A5"). EntireRow End Sub

U cijelom ovom retku moramo izvršiti metodu brisanja, pa upotrijebite metodu Delete.

Kodirati:

Podrazmak DeleteRow_Example4 () Raspon ("A1: A5"). EntireRow.Delete End Sub

Sada će ovo izbrisati odabrane retke.

Primjer # 5

Delete Rows Based On Cell Value

We can also use this “EntireRow.Delete” method to delete the row based on cell value in VBA. For example, I have Yes & No values from cell A1 to A10.

Now we need to delete the rows which have the value “No.” To perform this task, we need to use the function “IF” with loops to delete all the rows which have the value of “No.”

The below code will do the job for us.

Code:

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 are 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 are found, they 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:

Pod DeleteRow_Example7 () Dim RangeToDelete As Range Dim DeletionRange As Range Set RangeToDelete = Application.InputBox ("Odaberite raspon", "Brisanje redaka praznih ćelija", Tip: = 8) Postavite DeletionRange = RangeToDelete RangeToDelete.SpecialCellCellCellEnBellCeLeEnCellCeLeEnCellCeLeEnCellCellCellCeLeEnCellCeLe. .Izbriši krajnji pod

Kada pokrenete ovaj kôd, prvo će se tražiti da odaberete raspon s okvirom za unos koji se pojavljuje ispred vas.

Nakon odabira raspona, morate kliknuti na U redu. Izbrisat će sve retke praznih ćelija u odabranom rasponu.

Zanimljivi članci...