condition avec case select

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 !

gerard55

XLDnaute Occasionnel
Bonjour à tous
Je cherche à mettre des cellules en colonne "C" en couleur en fonction de critères situer en colonne "M"
le code suivant ne fonctionne que pour le premier case Pourquoi?
merci pour votre aide
à+

Sub CouleurActi()
For i = 1 To 63
i = i + 1
Sheets("planning").Select
Cells(i, 3).Select
Select Case Sheets("planning").Cells(i, 3).Offset(0, 10).Value
Case "sport"
Selection.Interior.ColorIndex = 6
Case "bénévole"
Selection.Interior.ColorIndex = 13
Case "sacat"
Selection.Interior.ColorIndex = 21
Case ""
Selection.Interior.ColorIndex = xlNone
End Select
Next
End Sub
 
Re : condition avec case select

Bonsoir Gérard55,

Peux-tu essayer le code ci-dessous ?

Code:
Sub CouleurActi()
    Sheets("planning").Select
    For i = 1 To 63
        Cells(i, 3).Select
        
        Select Case Sheets("planning").Cells(i, 3).Offset(0, 10).Value
            Case "sport"
                Selection.Interior.ColorIndex = 6
            Case "bénévole"
                Selection.Interior.ColorIndex = 13
            Case "sacat"
                Selection.Interior.ColorIndex = 21
            Case Else
                Selection.Interior.ColorIndex = xlNone
        End Select
    Next
End Sub

Je ne sais pas si cela correspond à ce que tu attends. Si cela ne va pas, peux-tu joindre un fichier ?

Merci

@+
 
Re : condition avec case select

bonsoir,

essaie ce code ça devrait aller

amicalement

chantal



Sub CouleurActi()

Sheets("planning").Select

For i = 1 To 63

Cells(i, 3).Select
Select Case Sheets("planning").Cells(i, 3).Offset(0, 10).Value
Case "sport"
Selection.Interior.ColorIndex = 6
Case "bénévole"
Selection.Interior.ColorIndex = 13
Case "sacat"
Selection.Interior.ColorIndex = 21
Case ""
Selection.Interior.ColorIndex = xlNone
End Select
Next
End Sub
 
Re : condition avec case select

Ta macro me semble bizarre
le i=i+1 revient à sauter une ligne sur 2. Si c'est réellement ce que tu veux faire, il vaudrait mieux écrire For i=1 to 63 step 2. Si tu veux la formule sur toutes les lignes, il faut enlever cette instruction.

Essaye de modifier la ligne select case comme ci-dessous.


Sub CouleurActi()
For i = 1 To 63
Sheets("planning").Select
Cells(i, 3).Select
Select Case ActiveCell.Offset(0, 10).Value 'LIGNE MODIFIEE
Case "sport"
Selection.Interior.ColorIndex = 6
Case "bénévole"
Selection.Interior.ColorIndex = 13
Case "sacat"
Selection.Interior.ColorIndex = 21
Case ""
Selection.Interior.ColorIndex = xlNone
End Select
Next
End Sub

Par contre, dans la mesure où ta 4ème condition est sans format, tu pourrais encore plus facilement passer par une mise en forme conditionnelle.

Bonne soirée
 
Re : condition avec case select

Bonsoir
Merci pour votre aide. Seul le code de Chantal fonctionne. Le recours à CASE s'impose car il y a plus de 3 conditions donc le format conditionnel n'est pas suffisant.
Par contre si je ne veux pas que la boucle i = 1 to 10 . cells(i,3) commence ligne 1 comment dois-je l'indiquer.
Merci Chantal
à+
 
Re : condition avec case select

Bonsoir le fil,

S'ont été tous plus rapide que moi hier.... mais mêmes constations au début...

Pour répondre : for i = x (ce que tu veux comme début) to....

Puisque le i est indexé dans la suite de ton premier exemple, tu peux commencer à i = 4 par exemple....

Je te signale, tout de même, que si ton exemple donne 4 conditions, seules 3 sont attachées à une couleur... Déjà dit d'ailleurs... Tu pouvais mettre un ETC.... ensuite qui aurait permis de comprendre qu'il y avait une suite.

Pour te dire aussi, que, dans un exemple, il ne faut pas être trop minimaliste.

A te lire eeet pour plus tard, de meilleures explications.

Jean-Pierre
 
- 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

  • Question Question
Microsoft 365 Probléme VBA
Réponses
8
Affichages
499
Réponses
5
Affichages
755
Réponses
4
Affichages
496
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
828
Retour