[RESOLU]Supression de lignes d une colonne

  • Initiateur de la discussion Initiateur de la discussion Yaniv
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Yaniv

XLDnaute Junior
Bonjour je dispose d une base de données sur la colonne B de ma feuille 1 , je souhaiterais supprimer les lignes en fond noir ou ecrites en rouge,pour cela j ai fait le code suivant
Code:
Sub test2()
 Dim LastLig As Long, i As Long
Application.ScreenUpdating = False
With Worksheets("Feuil1")
    LastLig = .Cells(.Rows.Count, 2).End(xlUp).Row
    For i = LastLig To 2 Step -1
         If .Range("B" & i).Interior.Color = 0 Or .Range("B" & i).Font.Color = 255 Then .Rows(i).Delete
    Next i
End With
 End Sub

Or le probleme c est lorsque j execute cette macro , toute ma colonne est effacée (meme les lignes sur fond blanc ou ecrite en noir)
 
Dernière édition:
Re : Supression de lignes d une colonne

Bonjour Yaniv, et bienvenue,

C'est normal, puisque tu effaces la ligne complète. Si j'ai bien compris, tu ne veux effacer que les cellules alors peut-être comme ceci :

Code:
Sub test2()
 Dim LastLig As Long, i As Long
Application.ScreenUpdating = False
With Worksheets("Feuil1")
    LastLig = .Cells(.Rows.Count, 2).End(xlUp).Row
    For i = LastLig To 2 Step -1
         If .Range("B" & i).Interior.Color = 0 Or .Range("B" & i).Font.Color = 255 Then .Range("B" & i).Delete
    Next i
End With
 End Sub
Cordialement.
 
Re : Supression de lignes d une colonne

RE

Voilà, c'est beaucoup plus parlant avec un exemple sous les yeux.

Modifie ton code comme ceci :

Code:
Sub test2()
Dim LastLig As Long, i As Long
Application.ScreenUpdating = False
With Worksheets("Feuil1")
    LastLig = Range("B" & Application.Rows.Count).End(xlUp).Row
    For i = LastLig To 2 Step -1
         If .Range("B" & i).Interior.ColorIndex = 1 Or .Range("B" & i).Font.Color = 255 Then .Range("B" & i).Delete
    Next i
End With
End Sub
Cordialement.
 
Re : Supression de lignes d une colonne

je pense qu il y a une erreur un and au lieu du or ds le code de cet exemple (mais le probleme n est pas la car deja modifie)

Effectivement, il fallait remplacer And par Or, car une seule des conditions est suffisante pour supprimer la cellule.

Autre point : j'ai utilisé ColorIndex au lieu de Color et ai remplacé sa valeur par 1 qui correspond au noir.

Cordialement.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
650
Réponses
10
Affichages
799
Retour