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 :

[E-07] Checkbox indicée : "CheckBox" & j


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Février 2009
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 13
    Par défaut [E-07] Checkbox indicée : "CheckBox" & j
    Bonjour
    Je voudrais faire une opération sur les checkbox 1,2,3.....n.
    C'est pourquoi j'aimerais réussir à faire tourner le code suivant.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub programme()
    Dim j As Integer
    j=1
        If Evaluate("ActiveSheet.CheckBox" & j).Value = True Then
                    Worksheets("Feuil1").Cells(5, 2).Value = 1
                                                    Else
                    Worksheets("Feuil1").Cells(5, 2).Value = 0
        End If
    End Sub
    Mon problème est surement du au fait que:
    ActiveSheet.CheckBox" & j) est reconnu comme une chaine de caractères
    et donc ("ActiveSheet.CheckBox" & j).Value n'a plus de sens.

    Avez-vous une idée ou la réponse?.
    Merci d'avance pour vos réponses avisées.

  2. #2
    Membre chevronné Avatar de drakkar_agfa
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    618
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 618
    Par défaut
    Bonjour,

    Essais ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Controls("CheckBox" & j).Value
    Ça devrait fonctionner!

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Février 2009
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 13
    Par défaut
    Merci d'avoir répondu si vite.
    Cependant, mon problème n'est pas résolu.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub programme()
    Dim j As Integer
    j = 1
    If Me.Controls("CheckBox" & j).Value = True Then
    Worksheets("Feuil1").Cells(1, 1).Value = 1
    Else
    Worksheets("Feuil1").Cells(1, 1).Value = 0
    End If
    End Sub
    Ce code me met comme message d'erreur: "Utilisation incorrecte du mot clé Me"

    Si ce code marche chez toi c'est peut-etre une histoire de librairie.
    De plus, il existe plusieurs types de checkbox sous Excel.
    Est-ce que ca peut jouer?

  4. #4
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Bonjour, astorix,

    drakkar_agfa t'a répondu en croyant que tu étais sur un userform, qui utilise la collection Controls.
    Sur une feuille, la collection est Shapes et Me est ActiveSheet

    Remplace donc Me.Controls par ActiveSheet.Shapes dans le code que t'a montré drakkar_agfa

  5. #5
    Membre chevronné Avatar de drakkar_agfa
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    618
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 618
    Par défaut
    Merci pour la correction ucfoutu, j'avais lu un peu vite!

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 57
    Par défaut
    Bonjour ucfoutu,

    je suis moi même bloqué face à des checkbox ("boite à outils controle") sur ma feuille Excel. Je n'arrive pas à récupérer la valeur des checkbox dans cette boucle :

    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
    18
    19
    20
    21
    22
     
    Public Sub ctrl_pavenum_0()
     
    Dim i As Long
    Dim val_bool_chk As Boolean
    Dim toto As Variant
     
    For i = 1 To 8
        toto = Feuil2.Shapes("chk_s" & i).Name ' Fonctionne : donne le nom
     
        If (ActiveSheet.Shapes("chk_s" & i).Value = True) Then ' Ne fonctionne pas : renvoie l'erreur "Propriété ou méthode non gérée par cet objet"
     
        End If
     
        Select Case val_bool_chk
            Case True: val_bool_chk = False
            Case False: val_bool_chk = True
        End Select
     
    Next i
     
    End Sub
    Une petite idée ?

+ Répondre à la discussion
Cette discussion est résolue.

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