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 :

Initialisation de ToggleButton à partir d'une liste Excel


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Septembre 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2013
    Messages : 1
    Par défaut Initialisation de ToggleButton à partir d'une liste Excel
    Bonjour,
    Je travaille avec VB pour applications 7.0

    J'ai un userform integrant pas mal de ToggleButtons.Ces derniers sont listés dans une feuille Excel (col 1) et leur dernier état connu (False/True) dans une seconde colonne (col 2).
    A l'initialisation du userform, je souhaite prendre le nom du toggleButton, et lui adresser son état.
    Mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    For Each Cellule In Range("G2:G" & Range("a65536").End(xlUp).Row)
        nom_toggle = Cellule.Value
        val_toggle = Cellule.Offset(0, 1).Value
        nom_toggle.Value = val_toggle
    Next Cellule
    Mon probleme:
    La commande "nom_toggle.Enabled = val_toggle" ne fonctionne pas et me renvoie une erreur de compilation

    Si j'inscris en dur à la place la commande avec les noms et valeurs de ce qui est souhaité, "ToggleButton_1.Enabled = False", celà fonctionne.

    Merci d'avance pour votre aide

  2. #2
    Membre Expert
    Femme Profil pro
    Ingénieur
    Inscrit en
    Octobre 2016
    Messages
    1 703
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2016
    Messages : 1 703
    Par défaut
    Essaie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Shapes(nom_toggle).Enabled = val_toggle
    Mais je ne promets rien

    Cependant, personnellement j'aurais procédé d'une autre façon.J'aurais utilisé la cellule de controle (LinkedCell dans les propriétés) du togglebutton. Ainsi tu peux changer la valeur de la cellule de controle ce qui affectera ton bouton.
    Connais-tu les LinkedCell?

    EDIT : une précision par rapport à LinkedCell :
    Nom : toggle.png
Affichages : 240
Taille : 142,0 Ko
    On peut changer directement la valeur de K1 (VRAI/FAUX) et ceci affecte le togglebutton.

  3. #3
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    On ne le répètera jamais assez : pour faire un code propre, il faut déclarer ses variables avec leur type.

    Ta variable nom_toggle n'est pas un objet mais une simple chaine de caractères.
    A ce titre, elle ne peut donc pas avoir de propriété et encore moins changer la valeur d'une propriété d'un objet dont elle contient le nom.
    C'est un peu comme apporter à un garagiste la photo de ta voiture et lui demander de changer le pot d'échappement.

    Par contre, ToggleButton_1 désigne (je suppose) un réel objet. C'est pour ça que ça fonctionne.

Discussions similaires

  1. Réponses: 0
    Dernier message: 01/09/2012, 16h42
  2. Réponses: 1
    Dernier message: 27/06/2012, 00h43
  3. Création d'une combobox auto rempli à partir d'une liste excel
    Par kyros21 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 25/11/2011, 15h46
  4. [XL-2007] envoyer des email via outlook a partir d'une liste excel
    Par kaayna dans le forum Excel
    Réponses: 1
    Dernier message: 10/02/2010, 16h53
  5. Réponses: 0
    Dernier message: 09/02/2010, 10h52

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