bloucle pour compter le nbre de fois qu'apparaît une couleur

  • Initiateur de la discussion Initiateur de la discussion licwimi
  • 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 !

licwimi

XLDnaute Nouveau
Bonjour à tous,
Selon mes paramètres, mes cellules ont un fond vert, orange, ou rouge.
J'aimerais mettre en début de ligne une cellule verte, orange ou rouge en fonction des couleurs de fond des cellules de cette ligne.
Si il y a au moins une case rouge dans la ligne, mettre la cellule de début en rouge
sinon si il y a au moins une case orange dans la ligne, mettre la cellule de début en orange
sinon si il y a au moins une case vert dans la ligne, mettre la cellule de début en vert
sinon mettre la cellule de début en blanc
Voici mon ébauche de code qui ne marche pas...
Code:
cellvert = 0
    cellorange = 0
    cellrouge = 0
    For j = 2 To 100
        If Cells(i, j).Interior.ColorIndex = vert Then
            cellvert = cellvert + 1
            Else
            If Cells(i, j).Interior.ColorIndex = orange Then
                cellorange = cellorange + 1
                Else
                If Cells(i, j).Interior.ColorIndex = rouge Then
                    cellrouge = cellrouge + 1
                End If
            End If
        End If
        Next j
    If cellrouge > 1 Then
        Cells(i, 1).Interior.ColorIndex = 3
        Else
        If cellorange > 1 Then
            Cells(i, 1).Interior.ColorIndex = 46
            Else
            If cellvert > 1 Then
                Cells(i, 1).Interior.ColorIndex = 10
                Else
                Cells(i, 1).Interior.ColorIndex = blanc
            End If
        End If
    End If
PS: mes cellcouleurs sont initialisées en Integer, i est la ligne en cours
 
Re : bloucle pour compter le nbre de fois qu'apparaît une couleur

il manque les déclarations de variables avant:
Dim i As Long
Dim cellvert As Integer
Dim cellorange As Integer
Dim cellrouge As Integer
Dim cellblanche As Integer
Dim vert As Integer
Dim orange As Integer
Dim rouge As Integer
Dim blanc As Integer

Je ne cherche pas à tester mes cellules en colonne, mais en ligne. Du coup c'est pour ça que je n'ai pas mis For i = ... C'est en fait la ligne en cours qui est affectée à i.
la boucle For J= est là pour aller de la colonne 2 à la 100 pour la ligne i
 
Re : bloucle pour compter le nbre de fois qu'apparaît une couleur

Re,


je persiste à dire que le code montré au post #1 est incomplet
Code:
cellvert = 0
    cellorange = 0
    cellrouge = 0
    For j = 2 To 100
        If Cells(i, j).Interior.ColorIndex = vert Then
            cellvert = cellvert + 1
            Else
            If Cells(i, j).Interior.ColorIndex = orange Then
                cellorange = cellorange + 1
                Else
                If Cells(i, j).Interior.ColorIndex = rouge Then
                    cellrouge = cellrouge + 1
                End If
            End If
        End If
        Next j
    If cellrouge > 1 Then
        Cells(i, 1).Interior.ColorIndex = 3
        Else
        If cellorange > 1 Then
            Cells(i, 1).Interior.ColorIndex = 46
            Else
            If cellvert > 1 Then
                Cells(i, 1).Interior.ColorIndex = 10
                Else
                Cells(i, 1).Interior.ColorIndex = blanc
            End If
        End If
    End If
PS: mes cellcouleurs sont initialisées en Integer, i est la ligne en cours
je ne vois nulle part une ligne de code qui donne une valeur à I
et si I ne prends pas quelque part une valeur, le code ne pourra pas fonctionner correctement

ce serait plus facile à comprendre si il y avait une fichier joint à la question

à+
Philippe
 
- 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

Réponses
5
Affichages
312
Réponses
4
Affichages
225
Réponses
8
Affichages
490
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
563
  • Question Question
Microsoft 365 Probléme VBA
Réponses
8
Affichages
339
Réponses
4
Affichages
554
Retour