Excel supprimer ligne si couleur
Résolu
james405
Messages postés
173
Statut
Membre
-
james405 Messages postés 173 Statut Membre -
james405 Messages postés 173 Statut Membre -
Bonjour tout est dans le titre, si la couleur de ma cellule est verte je veux supprimer toute la ligne.
J('avais pensé a cel mais ca ne marche pas (je débute en macro!)
Merci pour votre aide
Sub car()
Dim i
For i = 1 To 2000
If Worksheets(1).Range("A" & i).Interior.ColorIndex = 6 Then Range("A" & i)Row.Delete
Next i
End Sub
James405
J('avais pensé a cel mais ca ne marche pas (je débute en macro!)
Merci pour votre aide
Sub car()
Dim i
For i = 1 To 2000
If Worksheets(1).Range("A" & i).Interior.ColorIndex = 6 Then Range("A" & i)Row.Delete
Next i
End Sub
James405
7 réponses
-
Bonjour,
C'est étrange chez moi c'est correct.
Essayer cette procédure:Sub supprimerligne() Dim i As Long For i = 1 To 2000 If Cells(i, 1).Interior.ColorIndex = 6 Then Rows(i).Delete i = i - 1 End If Next i End Sub--
Salutations.
Le Pingou -
Bonjour,
Au passage remplacer la ligne du If par :If Range("A" & i).Interior.ColorIndex = 6 Then Rows(i).Delete
Autre possibilité:Sub supprimerligne() For Each c In Range("a1:a2000") If c.Interior.ColorIndex = 6 Then c.Rows.Delete Next c End Sub--
Salutations.
Le Pingou -
Bonsoir,
Sub carrièresss()
Dim i
For i = 1 To 2000
If Range("A" & i).Interior.ColorIndex = 6 Then Rows(i).Delete
Next i
End Sub
FOnctionne, mais je suis obliger d'appuyer plusieurs fois sur la macro pour tous les enlever ...
et l'autre ne fonctionne pas . .. une explication ?
Merci pour ton aide pingou -
bonjour
Pour supprimer des lignes sans se préoccuper des lignes supprimées qui modifient l'index le plus simple est de supprimer en remontant :
Sub car() Dim i as Long For i = 2000 to 1 step -1 If Worksheets(1).Range("A" & i).Interior.ColorIndex = 6 Then Rows(i).Delete Next i End Sub
Toujours zen -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
ET ca marche !!!!!!!!
Merci à vous deux !!!!
SI je mets avec plusieurs couleurs cela marchera aussi?
Sub car()
Dim i as Long
For i = 2000 to 1 step -1
If Worksheets(1).Range("A" & i).Interior.ColorIndex = 6 Then Rows(i).Delete
If Worksheets(1).Range("A" & i).Interior.ColorIndex = 9 Then Rows(i).Delete
Next i
End Sub
Bonne journée à vous,
Cordialement,
James -
bonjour
SI je mets avec plusieurs couleurs cela marchera aussi?
Bien sûr que tu peux enchainer les tests et pour des modifications plus faciles, tu peux l'écrire ainsi et il te suffit de rajouter les conditions que tu veux sélectionner
Sub car() Dim i As Long For i = 20 To 1 Step -1 Select Case Worksheets(1).Range("A" & i).Interior.ColorIndex Case 6, 9 Rows(i).Delete Case Else End Select Next i End Sub -