J
JCA06
Guest
Bonjour le Forum,
Je me permet de replacer une réponse que j'ai faite à David parce qu'elle contenait une question :
Je vous replace le contexte : dans une plage A2 à H25, David mettait une couleur de fond dans certaines cellules et voulait ensuite compter celles dont la couleur était celle de K5 et K6
Re: additionner des couleurs
Auteur: JCA06 (195.78.3.---)
Date: 26-07-04 16:31
Rebonjour David, le Forum,
J'ai voulu profiter de ton exemple pour essayer de rédiger le code dont tu avais besoin, mais une fois de plus je m'aperçois que je suis encore un gros nul ! Bon, je m'en suis tout de même tiré :
Option Explicit
Sub Compte_couleur()
Dim i As Integer, j As Integer, C As Long, C1 As Long, C2 As Long
Dim Nb1 As Integer, Nb2 As Integer
C1 = Range("K5").Interior.ColorIndex
C2 = Range("K6").Interior.ColorIndex
For i = 2 To 25
For j = 1 To 8
C = Cells(i, j).Interior.ColorIndex
Select Case C
Case C1
Nb1 = Nb1 + 1
Case C2
Nb2 = Nb2 + 1
End Select
Next j
Next i
Range("L5").Value = Nb1
Range("L6").Value = Nb2
End Sub
Ce qui m'énerve, c'est que je ne suis pas arrivé à rédiger ce code avec un If...Then...Elseif...Endif
J'avais essayé comme ceci, à la place du bloc Select Case...End Select :
If C = C1 Then Nb1 = Nb1 + 1
ElseIf C = C2 Then Nb2 = Nb2 + 1
End If
Et ça ne fonctionne pas ! Et je n'arrive pas à comprendre pourquoi !!!!
Si quelqu'un peut m'expliquer, avant que je renonce aux If... qui sont pourtant bien pratiques..
A plus
Je me permet de replacer une réponse que j'ai faite à David parce qu'elle contenait une question :
Je vous replace le contexte : dans une plage A2 à H25, David mettait une couleur de fond dans certaines cellules et voulait ensuite compter celles dont la couleur était celle de K5 et K6
Re: additionner des couleurs
Auteur: JCA06 (195.78.3.---)
Date: 26-07-04 16:31
Rebonjour David, le Forum,
J'ai voulu profiter de ton exemple pour essayer de rédiger le code dont tu avais besoin, mais une fois de plus je m'aperçois que je suis encore un gros nul ! Bon, je m'en suis tout de même tiré :
Option Explicit
Sub Compte_couleur()
Dim i As Integer, j As Integer, C As Long, C1 As Long, C2 As Long
Dim Nb1 As Integer, Nb2 As Integer
C1 = Range("K5").Interior.ColorIndex
C2 = Range("K6").Interior.ColorIndex
For i = 2 To 25
For j = 1 To 8
C = Cells(i, j).Interior.ColorIndex
Select Case C
Case C1
Nb1 = Nb1 + 1
Case C2
Nb2 = Nb2 + 1
End Select
Next j
Next i
Range("L5").Value = Nb1
Range("L6").Value = Nb2
End Sub
Ce qui m'énerve, c'est que je ne suis pas arrivé à rédiger ce code avec un If...Then...Elseif...Endif
J'avais essayé comme ceci, à la place du bloc Select Case...End Select :
If C = C1 Then Nb1 = Nb1 + 1
ElseIf C = C2 Then Nb2 = Nb2 + 1
End If
Et ça ne fonctionne pas ! Et je n'arrive pas à comprendre pourquoi !!!!
Si quelqu'un peut m'expliquer, avant que je renonce aux If... qui sont pourtant bien pratiques..
A plus