Microsoft 365 Surligner les lignes si valeur d'une cellule de même valeur

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

akira21

XLDnaute Occasionnel
Bonjour,

Je bloque sur une macro qui doit me surligner les lignes en couleurs si les cellules dans la colonne F ont la même valeur.

Cela m'envoie une erreur Erreur d'exécution '13': incompatibilité de type

Qq'un peut il m'aider ?

Merci de votre aide :)

Capture.PNG
 

Pièces jointes

Rouge

XLDnaute Impliqué
Bonjour,

Ceci:
VB:
Sub test()
    Dim cel As Range
    Dim Couleur As Long
    Dim Couleur2 As Long
    Dim Transit As Long
   
    i = 0
    Couleur = 10213316
    Couleur2 = 16777215
   
    For i = 5 To Range("F" & Rows.Count).End(xlUp).Row
        If Cells(i, "F") = Cells(i - 1, "F") Then
            Range(Cells(i, "A"), Cells(i, "M")).Interior.Color = Couleur
        Else
            Range(Cells(i, "A"), Cells(i, "M")).Interior.Color = Couleur2
            Transit = Couleur
            Couleur = Couleur2
            Couleur2 = Transit
        End If
    Next
End Sub

Cdlt
 

Staple1600

XLDnaute Barbatruc
Bonjour le fil

=>akira21
Tu peux faire cela sans macro
Avec la Mise en Forme conditionnelle
Accueil->Mise en forme conditionnelle
Nouvelle règle
Utiliser une formule...
Et mettre cette formule
=NB.SI($F$5:$F$31;$F5)>1

PS: test OK sur ton fichier exemple

EDITION: Bonjour Rouge
 
Dernière édition:

akira21

XLDnaute Occasionnel
Bonjour,

Ceci:
VB:
Sub test()
    Dim cel As Range
    Dim Couleur As Long
    Dim Couleur2 As Long
    Dim Transit As Long
  
    i = 0
    Couleur = 10213316
    Couleur2 = 16777215
  
    For i = 5 To Range("F" & Rows.Count).End(xlUp).Row
        If Cells(i, "F") = Cells(i - 1, "F") Then
            Range(Cells(i, "A"), Cells(i, "M")).Interior.Color = Couleur
        Else
            Range(Cells(i, "A"), Cells(i, "M")).Interior.Color = Couleur2
            Transit = Couleur
            Couleur = Couleur2
            Couleur2 = Transit
        End If
    Next
End Sub

Cdlt

Super, un grand merci :)
 

Staple1600

XLDnaute Barbatruc
Re

Quand à l'erreur, ce petit test l'explique, non ?
VB:
Sub Achtung_Baby()
XX = "C10-97"
XXX = "C10-97"
ZZ = Application.WorksheetFunction.RoundDown(XX, 0)
ZZZ = Application.WorksheetFunction.RoundDown(XXX, 0)
MsgBox ZZ
MsgBox ZZZ
End Sub

EDITION: Là plus d'erreur, car valeur numérique (ce qu'il n'y a pas dans la colonne F du fichier exemple)
VB:
Sub Achtung_Baby_OK()
XX = 1.4839
XXX = 1.4849598425
ZZ = Application.WorksheetFunction.RoundDown(XX, 3)
ZZZ = Application.WorksheetFunction.RoundDown(XXX, 3)
MsgBox ZZ
MsgBox ZZZ
End Sub
 

Staple1600

XLDnaute Barbatruc
Re

=>akira21
Ouf, j'ai cru que j'étais invisible
Ou que mon hygiène laissait à désirer

Le titre de ta discussion parlait de cellule de même valeur
Or on est bien d'accord que dans ton exemple il n'y a qu'une seule fois C10-97
Or la MFC de mapomme la met en couleur.

Ce que je ne comprends donc pas.
 

Discussions similaires

Réponses
14
Affichages
328
Réponses
1
Affichages
355

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
315 283
Messages
2 118 012
Membres
113 408
dernier inscrit
lausablk