VBA sorok törlése - Példák az Excel-sorok törlésére a VBA használatával

Tartalomjegyzék

Excel VBA sor törlése

Az excel munkalapon általában kétféle módszer áll rendelkezésre a sorok törlésére, amelyek közül az egyik a billentyűparancs, a másik pedig a jobb gombbal kattintva és beillesztve, de a VBA-ban a delete parancsot és a munkalap utasítást kell használnunk a sorok törléséhez. ez az, hogy ha egyetlen sort törölnünk kell, akkor egy sor hivatkozást adunk meg, de a több oszlop esetében több sor hivatkozást adunk meg.

A VBA Row Delete módszer alkalmazásával törölhetjük az összes üres sort, és a cellaérték alapján törölhetjük a sort. Törölhetjük a teljes sort is, ha bármelyik cella üres.

Ebben a cikkben a „VBA sor törlése” módszert tárgyaljuk. Tartsa magát elfoglalva a következő 15-20 percben, hogy megismerje a koncepciót.

Hogyan lehet törölni a sort?

1. példa

A VBA-ban meg kell említenünk azt a sort, amelyet törölünk.

Kód:

Sub DeleteRow_Example1 () Cellák (1, 1) Vége Sub

A cellák (1, 1) az első sor első oszlopát, azaz A1 cellát jelentenek. Ezután a „törlés” módszert alkalmazzuk.

Kód:

Sub DeleteRow_Example1 () Cellák (1, 1). Törölje a Sub Sub elemet

Ez törli az első cellát. A jobb oldali értékek egy cellát balra tolnak.

2. példa

Ha a teljes sort törölni kívánja, akkor az „EntireRow” tulajdonságot kell használnunk, majd a „törlés” módszerrel törölni kell a kiválasztott cella teljes sorát.

Kód:

Sub DeleteRow_Example2 () cellák (1, 1) .EntireRow.Delete End Sub

Például beírtam néhány karaktert egy excel lapba az alábbiak szerint.

Most, ha futtatom ezt a kódot, az a teljes sort törli, nem egyetlen cellát.

3. példa

Többféle módon törölhetjük a sort. A fenti példában a CELLS tulajdonság használatával töröltük a sort. Most látni fogjuk, hogyan lehet törölni a ROWS tulajdonság használatával.

Most meg kell említenünk, hogy mi az a sor, amelyet törölnünk kell. Tegyük fel, hogy törölnünk kell az ötödik sort.

Most használja az „EntireRow” tulajdonságot.

A tulajdonság kiválasztása után mit kell tennünk, azaz módszer. Törölnünk kell a sort.

Kód:

Sub DeleteRow_Example3() Rows(5).EntireRow.Delete End Sub

So, this code will delete the 5th row.

Example #4

Delete Multiple Rows by Using Range Object

How do we delete multiple rows?

We can use the VBA RANGE object to delete more than one row. Assume you have some values from A1 to A6 cells.

Now I want to delete the first 5 rows, so I can reference these rows by using the Range object as “Range (“A1: A5”)”

Code:

Sub DeleteRow_Example4() Range ("A1: A5") End Sub

Now I want to use the word “EntireRow” property.

Code:

Sub DeleteRow_Example4() Range("A1:A5").EntireRow End Sub

In this entire row, we need to perform the method of deleting, so use the Delete method.

Code:

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

Now this will delete the selected rows.

Example #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:

Sub DeleteRow_Example7 () Dim RangeToDelete As Range Dim DeletionRange As Range Set RangeToDelete = Application.InputBox ("Kérjük, válassza ki a tartományt", "Üres cellák sorainak törlése", Típus: = 8) Set DeletionRange = RangeToDelete RangeToDelete.SpecialCells (xlCellTell). .Törölje a Vége alcsoportot

Amikor futtatja ezt a kódot, először arra kéri, hogy válassza ki a tartományt úgy, hogy egy beviteli mező jelenik meg előtted.

A tartomány kiválasztása után kattintson az OK gombra. Törli az összes üres cellasort a kiválasztott tartományból.

érdekes cikkek...