IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Probleme Checkbox pour colorer une cellule


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2020
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Février 2020
    Messages : 3
    Par défaut Probleme Checkbox pour colorer une cellule
    Je suis débutant en VBA et je voudrais que quand je coche une checkbox située dans une case avec une formule, la case devienne verte.
    Malheureusement j’ai testé plusieurs solutions mais à chaque fois la valeur donnée dans la case est remplacée par VRAI ou FAUX ( lorsque je lie la checkbox avec ma cellule pour faire une mise en forme conditionnelle ).

    je met un fichier assez simple, c'est expliqué dedans, merci beaucoup !
    Fichiers attachés Fichiers attachés

  2. #2
    Membre Expert Avatar de Thautheme
    Homme Profil pro
    salarié
    Inscrit en
    Août 2014
    Messages
    1 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2014
    Messages : 1 373
    Par défaut
    Bonsoir Hacksion, bonsoir le forum,

    Le code ci-dessous est valable pour une seule ou quelques cellules. Si tu dois le faire sur plusieurs lignes, je te conseille de taper x dans la colonne E et de modifier F à l'aide de l'événementielle Change. Ça sera mois esthétique mais bien plus efficace...

    Le code adapté à ton exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub Caseàcocher2_Cliquer()
    With Worksheets("Feuil1").Shapes.Range(Array("Check Box 2"))
        .Select
        Worksheets("Feuil1").Range("F9").Interior.ColorIndex = IIf(Selection.Value = 1, 4, xlNone)
    End With
    Range("F9").Select
    End Sub

  3. #3
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 143
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 143
    Par défaut
    Bonjour à tous,
    Citation Envoyé par Hacksion Voir le message
    quand je coche une checkbox située dans une case avec une formule, la case devienne verte.
    Si tu n'as qu'une case à cocher je te propose ceci adapté à ton exemple et à associer à ton objet :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub Caseàcocher2_Clic()
        With Range(ActiveSheet.Shapes("Case à cocher 2").TopLeftCell.Address)
            If ActiveSheet.Shapes("Case à cocher 2").ControlFormat.Value = 1 Then
                .Interior.Color = 5296274
            Else
                .Interior.Color = xlNone
            End If
        End With
    End Sub
    Si tu as plusieurs cases à cocher sur ta feuille ce code les traitera toutes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub colore_cases()
    Dim shp As Shape
        With ActiveSheet
            For Each shp In .Shapes
                If shp.Type = 8 Then
                    If shp.ControlFormat.Value = 1 Then
                        .Range(shp.TopLeftCell.Address).Interior.Color = 5296274
                    Else
                        .Range(shp.TopLeftCell.Address).Interior.Color = xlNone
                    End If
                End If
            Next shp
        End With
    End Sub

  4. #4
    Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2020
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Février 2020
    Messages : 3
    Par défaut
    Bonjour,

    Merci beaucoup pour vos réponses mais malheureusement aucune ne fonctionne, soit il ne se passe rien, soit si j'execute la Macro la case se colorie en vert mais ne redevient pas blanche quand je décoche, ou alors il y a toujours "VRAI" ou "FAUX" qui apparait a la place du chiffre

  5. #5
    Membre Expert Avatar de Thautheme
    Homme Profil pro
    salarié
    Inscrit en
    Août 2014
    Messages
    1 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2014
    Messages : 1 373
    Par défaut
    Re,

    As-tu pensé à attribuer la macro à la case à cocher ou à l'adapter si le nom est différent ?!...
    En pièce jointe ton fichier fonctionnel.
    Fichiers attachés Fichiers attachés

  6. #6
    Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2020
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Février 2020
    Messages : 3
    Par défaut
    AAAh trop bien tu es un génie !! c'est exactement ce que je voulais merci !

    Parcontre effectivement je n'avais pas trop touché je suis vraiment débutant je ne sais pas trop comment activer la formule VBA.
    Et d'ailleurs je vois que tu as mis une ligne "option explicit", à quoi ça sert?

    Encore merci !!

  7. #7
    Membre chevronné
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 369
    Par défaut
    Bonjour à vous,

    Option Explicit est tout sauf une Option si l'on veut maîtriser son code, cela te permet notamment d'utiliser (dans mon cas) des variables en Public.

    Dans l'idée où tu aies 3 procédures utilisant chacune un tableau différent, tu peux faire de la sorte :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Option Explicit
    Dim t as ListObjects
     
    Private Sub PC1()
         Set t = t_data
         'Code...
    End Sub
     
    Private Sub PC2()
        Set t = t_budget
        'Code...
    End Sub
     
    Private Sub PC3()
       Set t = t_client
       'Code...
    End Sub
    Du moins c'est l'utilisation que j'en fais et cela m'évite de dimensionner mes variables en début de chaque procédure, seules celles spécifiques y sont inscrites. Toutes celles qui sont communes à plusieurs procédures sont définies sous Option Explicit. J'espère du moins en avoir saisi la bonne utilité, mais si je ne partage pas ma vision je ne pourrai savoir si j'ai bien compris son utilité

Discussions similaires

  1. [XL-2010] Macro pour colorer une cellule en fonction d'autres
    Par Fennec51 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 24/08/2014, 09h17
  2. [phpToPDF] Ajout de balises phpToPDF pour colorer une cellule
    Par Invité dans le forum Bibliothèques et frameworks
    Réponses: 0
    Dernier message: 30/08/2010, 11h37
  3. [XL-2007] Probleme pour selectionner une cellule
    Par pachi44 dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 24/06/2010, 15h16
  4. Problème pour verrouiller une cellule
    Par aJavaDeveloper dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 11/07/2007, 11h02
  5. [FLASH 8] Probleme de pour redimensionner une image
    Par julien.63 dans le forum Flash
    Réponses: 2
    Dernier message: 22/11/2006, 18h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo