Suppression de couleurs dans cellules spécifique
Bonjour à tous,
Sur un fichier comportant 3 macros distinctes, dans la troisième, une partie de l'action demandée est de supprimer, recréer et mettre dans la bonne position une feuille nommé "J" mais également des demandes mises en formes et autres.
Tout fonctionne sauf une partie que j'ai essayé de changer plusieurs fois mais aucune ne fonctionne. L'action qui ne fonctionne pas est la demande de suppression des mises en couleurs sur cellule afin qu'une nouvelle mise en couleur des cellules soit mise par la suite. J'aimerai tout simplement supprimer les couleurs existantes dans les cellules de la colonne X pour faire une sorte de "réinitialisation" pour refaire des mise en couleurs.
Voici plusieurs exemples de mes essais sans bon déroulement :
1)
Range("X2").Select Range(Selection, Selection.End(xlDown)).Select Range("X2:X1048576").Select With Selection.Interior .Pattern = xlNone .TintAndShade = 0 .PatternTintAndShade = 0 End With
2)
Dim plage As Range Dim ligneDepart As Long Dim ligneFin As Long 'Définir la plage de cellules à supprimer les couleurs With Sheets("J") ligneDepart = 2 'définir la première ligne à supprimer les couleurs ligneFin = .Cells(.Rows.Count, "X").End(xlUp).Row 'définir la dernière ligne non vide de la colonne X Set plage = .Range("X" & ligneDepart & ":X" & ligneFin) End With 'Supprimer les couleurs de la plage de cellules plage.Interior.ColorIndex = xlNone
3)
Dim ligne As IntegerDim derniereligne As Integer'Déterminer la dernière ligne utilisée dans la colonne Xderniereligne = Sheets("J").Cells(Rows.Count, "X").End(xlUp).Row 'Parcourir les lignes de la colonne X (à partir de la deuxième ligne) For ligne = 2 To derniereligne 'Mettre en forme la cellule en blanc Sheets("J").Cells(ligne, "X").Interior.Color = RGB(255, 255, 255) Next ligne
Cette dernière action met la cellule en blanc en supprimant les contours des cellules donc ce n'est pas bon.
J'espère avoir donné assez d'informations pour que vous puissiez m'aider.
Je vous remercie par avance pour votre temps !
Bonjour
Un fichier est TOUJOURS le bienvenu
Sheets("J").Cells(ligne, "X").interior.Pattern = xlNoneA+ François
Bonjour,
Une proposition.
Cdlt.
Sub RemovePatterns()
Dim lastRow As Long, rngData As Range
With Worksheets("J")
lastRow = .Cells(.Rows.Count, 24).End(xlUp).Row
Set rngData = .Cells(2, 24).Resize(lastRow - 1)
With rngData.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End With
End Sub