jose.carreira
XLDnaute Junior
Bonjour
Avec quelques difficultés pour l’élaboration d’une macro, je sollicite votre aide.
Sur une feuille Excel de plusieurs colonnes et plusieurs lignes (A1 :K122), je colorie les cellules des colonnes C, D et G sur trois critères, Vert pour les items ok, Orange pour les Items à surveiller et rouge pour les items non Ok.
Il me reste une série de lignes qui ne sont pas trié ou catégorisée.
J’utilise cette ligne de code.
Mais cela ne fonctionnes pas toujours.
Comment puis-je filtrer mes colonnes C, D et G pour n’afficher que les lignes dont il n’y a pas de couleur, donc le restant des cellules à trier.
Ci joint les code complet.
Merci d’avance
Avec quelques difficultés pour l’élaboration d’une macro, je sollicite votre aide.
Sur une feuille Excel de plusieurs colonnes et plusieurs lignes (A1 :K122), je colorie les cellules des colonnes C, D et G sur trois critères, Vert pour les items ok, Orange pour les Items à surveiller et rouge pour les items non Ok.
Il me reste une série de lignes qui ne sont pas trié ou catégorisée.
J’utilise cette ligne de code.
Code:
ActiveSheet.Range("$A$1:$K$122").AutoFilter Field:=3, Criteria1:=RGB(0, _
255, 0), Operator:=xlFilterCellColor
Mais cela ne fonctionnes pas toujours.
Comment puis-je filtrer mes colonnes C, D et G pour n’afficher que les lignes dont il n’y a pas de couleur, donc le restant des cellules à trier.
Ci joint les code complet.
Code:
Sub Trie_des_données()
' Recherche si l'onglet existe
For n = 1 To Sheets.Count
If Sheets(n).Name = "FS" Then
trouve = True
Exit For
End If
Next n
If trouve Then
'Set fe = Sheets("FT")
Sheets("FS").Select
' Maquette et MNU
With Range("C:C,D:D,G:G")
.Replace What:="Maquette", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=True
.Replace What:="MNU", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=True
With Application.ReplaceFormat.Interior
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorAccent5
.TintAndShade = 0.599963377788629
.PatternTintAndShade = 0
End With
End With
' PCP
With Range("C:C,D:D,G:G")
.Replace What:="pcp", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=True
With Application.ReplaceFormat.Interior
.PatternColorIndex = xlAutomatic
.Color = 65535
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End With
' Coût 0
With Range("C:C,D:D,G:G")
.Replace What:="Cout 0", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=True
.Replace What:="Coût 0", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=True
.Replace What:="Coût zero", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=True
.Replace What:="Coût zéro", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=True
.Replace What:="Cout zéro", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=True
.Replace What:="Cout zero", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=True
With Application.ReplaceFormat.Interior
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorAccent5
.TintAndShade = 0.599963377788629
.PatternTintAndShade = 0
End With
End With
' Crée filtres
If Not ActiveSheet.AutoFilterMode Then Range("A1:K1").AutoFilter ' Créer filtre ci absent
' MEP des filtres
ActiveSheet.Range("$A$1:$K$122").AutoFilter Field:=3, Criteria1:=RGB(0, _
255, 0), Operator:=xlFilterCellColor
ActiveSheet.Range("$A$1:$K$122").AutoFilter Field:=7, Criteria1:=RGB(0, _
255, 0), Operator:=xlFilterCellColor
ActiveSheet.Range("$A$1:$K$122").AutoFilter Field:=4, Criteria1:=RGB(0, _
255, 0), Operator:=xlFilterCellColor
Derlig = Cells.Find("*", , , , xlByRows, xlPrevious).Row
MsgBox "Filtrée sur les colonnes ( C, D et G)" & Chr(10) & "Valider les autres données"
MsgBox "Il reste (" & Range("B1:B" & Derlig).SpecialCells(xlCellTypeVisible).Count - 1 & ") solutions a trier"
Else
MsgBox "pas se solution à trier" & Chr(10) & "Traitement abandoner"
End If
End Sub
Merci d’avance