A voir également:
- Excel - Macro - Supprimer ligne si G = "NON"
- Aller à la ligne excel - Guide
- Si et excel - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Supprimer une page word - Guide
2 réponses
f894009
Messages postés
17206
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 novembre 2024
1 710
22 avril 2018 à 08:34
22 avril 2018 à 08:34
Bonjour,
Sub Supp_lig_NON_G() Dim Col_G As Range Dim NL As Long, Derlig As Long, lig As Long, NBre As Long Dim Mot As String On Error GoTo fin Application.ScreenUpdating = False With Worksheets("feuil1") 'nom de feuille a adapter Derlig = .Columns("G").Find("*", , , , , xlPrevious).Row 'derniere cellule non vide colonne G Mot = "NON" 'Definition Plage de cellule pour recherche occurences dans SubRoutine reporter Set Col_G = .Range("G1:G" & Derlig) 'nombre d'occurence NBre = Application.CountIf(Col_G, Mot) If NBre > 0 Then 'si au moins 1 'boucle de recherche For NL = 1 To NBre lig = 1 'lookat:=xlWhole valeur exacte 'lookat:=xlPart valeur contenue dans la cellule, ou la feuille par défaut lig = .Columns("G").Find(Mot, .Cells(lig, "G"), , lookat:=xlWhole).Row 'Effacement ligne .Rows(lig).Delete Next NL End If End With Set Col_G = Nothing fin: Application.ScreenUpdating = True End Sub
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
Modifié le 22 avril 2018 à 12:32
Modifié le 22 avril 2018 à 12:32
Bonjour
autre méthode par récursivité..
autre méthode par récursivité..
Option Explicit
'-------------
Sub vvv()
Dim Mot As String, Lig As Long
Application.ScreenUpdating = False
On Error GoTo fin
Mot = "NON"
Lig = Columns("G").Find(what:=Mot, lookat:=xlWhole).Row
Rows(Lig).Delete
Call vvv
fin:
MsgBox "suppression du mot " & "Mot" & " terminée"
End Sub
22 avril 2018 à 14:29