Excel VBA Supprimer la ligne
Normalement, dans la feuille de calcul Excel, nous avons deux méthodes différentes pour supprimer des lignes, l'une étant le raccourci clavier et l'autre en utilisant le clic droit et la méthode d'insertion, mais dans VBA, nous devons utiliser la commande de suppression et l'instruction de feuille de calcul pour supprimer toutes les lignes ensemble, l'astuce pour c'est que si nous devons supprimer une seule ligne, nous donnons une seule référence de ligne, mais pour les colonnes multiples, nous donnons plusieurs références de ligne.
En utilisant la méthode de suppression de ligne VBA, nous pouvons supprimer toutes les lignes vides et nous pouvons supprimer la ligne en fonction de la valeur de la cellule. Nous pouvons également supprimer la ligne entière si l'une des cellules est vide.
Dans cet article, nous aborderons la méthode «VBA Delete Row». Restez occupé pendant les 15 à 20 prochaines minutes pour en savoir plus sur le concept.

Comment supprimer une ligne?
Exemple 1
Dans VBA, nous devons mentionner la ligne que nous supprimons.
Code:
Sub DeleteRow_Example1 () Cellules (1, 1) End Sub

Les cellules (1, 1) désignent la première colonne de la première ligne, c'est-à-dire la cellule A1. Ensuite, nous utilisons la méthode «supprimer».
Code:
Sub DeleteRow_Example1 () Cells (1, 1) .Delete End Sub

Maintenant, cela supprimera la première cellule. Toutes les valeurs du côté droit se déplaceront d'une cellule vers la gauche.

Exemple # 2
Si vous souhaitez supprimer la ligne entière, nous devons utiliser la propriété «Ligne entière», puis nous devons utiliser la méthode «supprimer» pour supprimer la ligne entière de la cellule que nous avons sélectionnée.
Code:
Sub DeleteRow_Example2 () Cells (1, 1) .EntireRow.Delete End Sub

Par exemple, j'ai entré quelques caractères dans une feuille Excel comme suit.

Maintenant, si j'exécute ce code, il supprimera la ligne entière, pas une seule cellule.

Exemple # 3
Nous pouvons supprimer la ligne de plusieurs manières. Dans l'exemple ci-dessus, nous avons supprimé la ligne en utilisant la propriété CELLS. Nous allons maintenant voir comment supprimer en utilisant la propriété ROWS.

Nous devons maintenant mentionner quelle est la ligne que nous devons supprimer. Disons que nous devons supprimer la 5 e ligne.

Maintenant, utilisez la propriété "EntierRow".

Après avoir sélectionné la propriété, ce que nous devons faire, c'est-à-dire la méthode. Nous devons supprimer la ligne.
Code:
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 ("Veuillez sélectionner la plage", "Suppression de lignes de cellules vides", Type: = 8) Set DeletionRange = RangeToDelete RangeToDelete.SpecialCells (xlCellTypeRowRow) .Supprimer End Sub

Lorsque vous exécutez ce code, tout d'abord, il vous demandera de sélectionner la plage avec une zone de saisie apparaissant devant vous.

Après avoir sélectionné la gamme, vous devez cliquer sur OK. Il supprimera toutes les lignes de cellules vides dans la plage sélectionnée.