Case à cocher + changement de couleur

Bonjour,

J’ai regardé de nombreux tuto mais je suis dans une impasse pour le probleme qui va suivre.

Quand je coche une case, je souhaite que la cellule passe du rouge au vert.

J’ai reussi (apres des heures d’essais…) en liant la case à cocher avec la cellule + une mise en forme conditionnelle.

Le souci c’est que je souhaite dubliquer cette case à cocher sur d’autre cellule ou d’autre feuille mais ca ne marche pas car tout est lié, donc quand je coche une case, toutes les autres cases se cochent.

Est il possible de m’aider pour copier facilement cette case à cocher sans les liens ou il y a peut etre une autre methode pour passer de rouge à vert juste en cochant.

Je vous remercie par avance pour tout l’aide apportée.

Cdlt.

Bonjour,

""dites nous de quoi vous avez besoin, on vous expliquera comment vous en passer" Coluche

Dis-nous pourquoi tu as une case à cocher, pourquoi tu en voudrais plein, et on arrivera peut-être à te dire comment t'en passer aussi et te simplifier la tâche.

Bonjour,

Les cases à cocher servent de check list pour voir si l'etape a été faite ou non et le changement de couleur sera plus du confort pour voir plus rapidement.

Alors peut-être est-il envisageable de simplement rentrer une valeur dans une cellule (à la place de la case à cocher), un X par exemple, ou autre. Et quand cette cellule ne sera pas vide, alors tout le reste se déclenchera.

Merci pour votre réponse. En effet ça semble bien simple.

Donc toutes les cases voulues sont en rouge et des que je mets un x ça passe au vert. J ai maintenant une dernière question :que dois je faire dans Excell pour avoir ce résultat ?

Re,

N'hésite pas à poster un fichier sans données confidentielles, qui reprend la structure de ton fichier réel.

Pour le moment, n'étant pas médium, je n'en sais fichtrement rien, de comment tu peux faire.

J imagine bien ^^

Je joins demain le fichier en édulcorant les données sensible de ce que j ai fait. Ça sera bcp plus simple.

Ça roule !

Salut le fil...

Si j'ai tout bien compris.

Avec un controle activeX tu peux utiliser ce type de code

' // Code à mettre dans le module de la feuille1
Private Sub CheckBox1_Click()
' // On défini la cellule cible
Dim Myrange As Range
    Set Myrange = Worksheets("Feuil1").Range("C7")
    With Myrange
        CheckBox1.Top = .Top    ' // A mettre plutot dans l'évènement activate de la feuille
        CheckBox1.Left = .Left
        CheckBox1.Height = .Height
        CheckBox1.Width = .Width
        CheckBox1.BackStyle = fmBackStyleTransparent
        CheckBox1.SpecialEffect = fmButtonEffectFlat

        .Interior.Color = IIf(CheckBox1 = True, vbGreen, vbRed)

    End With
End Sub

Avec un controle de formulaire :

Dans Format de controle tu définis la cellule liée sur la cellule juste en dessous de lui.

Puis Ok, Puis affecter une macro, nouvelle et tu colles ce code

' // Code à mettre dans un module
Sub Caseàcocher1_Cliquer()
Dim rng As Range
    Set rng = Worksheets("Feuil1").Range("C5")
    With rng
        .Interior.Color = IIf(.Value = True, vbGreen, vbRed)
        .Font.Color = IIf(.Value = True, vbGreen, vbRed)
    End With
End Sub
44test.xlsx (108.68 Ko)

Bonjour,

Merci pour les lignes de code, je vais essayer si cela fonctionne.

Sinon, voici le tableau sur lequel je travail. Pour chaque commande, il y a des check list qui me permet de savoir ou j'en suis sur les dossiers et chaque feuille correspond une semaine (A voir si je ne vais pas tout regrouper sur une seule et masquer les activités terminées).

Je souhaite quand je coche la cellule passe de rouge à vert.

Merci par avance pour votre aide.

Hello,

On peut imaginer un truc du genre.

Je te l'ai fait pour S24. Si tu double cliques dans une cellule où il y avait avant une case à cocher, la case se met en rouge et OK apparaît dedans.

Je ne sais cependant pas comment le faire marcher sur les cellules fusionnées.

À voir déjà si c'est à peu près ce que tu cherches.

63test.xlsm (97.91 Ko)

Bonjour,

Je ne sais cependant pas comment le faire marcher sur les cellules fusionnées.

Comme ceci :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, [L4:R20]) Is Nothing Then
        Cancel = True
        If Target.Cells(1, 1).Value = "" Then
            Target.Value = "OK"
            Target.Interior.ColorIndex = 3
        Else
            Target.Cells(1, 1).Value = ""
            Target.Interior.ColorIndex = xlNone
        End If
    End If
End Sub

Damned, génial 😊

Merci pour l'info !

Parfait.

J'ai remplacé le double clique rouge par du vert.

Ce code devra etre mis manuellement sur chaque feuille ou il y a une formule pour le mettre automatiquement des que je cree une nouvelle feuille ?

Sur toutes les feuilles du classeur?

Si oui, dans le module ThisWorkbook :

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, [L4:R20]) Is Nothing Then
        Cancel = True
        If Target.Cells(1, 1).Value = "" Then
            Target.Value = "OK"
            Target.Interior.ColorIndex = 3
        Else
            Target.Cells(1, 1).Value = ""
            Target.Interior.ColorIndex = xlNone
        End If
    End If
End Sub

Pour éviter une ou plusieurs feuilles :

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
If Sh.Name = "Feuil1" Or Sh.Name = "Feuil2" Then Exit Sub 'évite les feuil1 et feuil2
    If Not Intersect(Target, [L4:R20]) Is Nothing Then
        Cancel = True
        If Target.Cells(1, 1).Value = "" Then
            Target.Value = "OK"
            Target.Interior.ColorIndex = 3
        Else
            Target.Cells(1, 1).Value = ""
            Target.Interior.ColorIndex = xlNone
        End If
    End If
End Sub
Rechercher des sujets similaires à "case cocher changement couleur"