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 :

Récupérer la valeur d'un label


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Par défaut Récupérer la valeur d'un label
    Bonjour à tous !

    Je suis entrain de créer un petit programme, j'ai donc fouillé un peu partout dans VB (pas évident ) mais là je ne sais pas !

    Voilà ma question :

    Comment récupérer, via une macro, le contenu d'un Label qui est géré par un SpinButton, et le tout à l'intérieur d'une Frame ?

    Je pensai faire un truc du style : UserForm2.Label1.caption = ... Mais ca ne fonctionne pas et je suis un peu (beaucoup) perdu

    Merci d'avance pour vos réponses

  2. #2
    Membre Expert Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Par défaut
    Salut,
    Tu n'étais pas loin...si tu veux récupérer tu dois donner à la variable la "valeur" et non l'inverse donc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MyLabel = UserForm2.Label2.Caption
    MyLabel devrait te renvoyer la "valeur" du champ Caption de ton Label

    A+

  3. #3
    Membre averti
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Par défaut
    Merci de ta réponse

    Et donc je voulais savoir aussi, mon spinbutton il change le Caption de mon label automatiquement ou pas quand je l'incrémente ?

  4. #4
    Membre Expert Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Par défaut
    Re,
    Ben impossible de te répondre, ça dépend du code que tu associe à ton SpinButton (enfin je crois)
    A+

  5. #5
    Membre averti
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Par défaut
    ok ok, parce que j'ai bien l'impression que ça ne fonctionne pas

    Si quelqu'un sait m'expliquer comment ça marche je suis preneur... !

    Merci !

  6. #6
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Un spin buton a une valeur (value) un nom (name) mais pas de label. Donc nom c'est a toi de changer la valeur du label que tu place a coté dans la sub

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub SpinButton1_Change()
    Label1.Caption = SpinButton1.Value
    End Sub

  7. #7
    Membre averti
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Par défaut
    Merci pour le code !

    Tout ne fonctionne toujours pas mais je pense avoir fait des erreurs dans mon code...

  8. #8
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    si tu parle de mon code, il faut avoir un spinbutton1 et un label 1 c'est difficile de se tromper. Après pour ce qui est des erreurs dans ton code on ne pourras pas vraiment t'aider si tu ne le donne pas. Mais oui tu doit avoir des erreurs puisque le code fait ce que tu lui demande (pas forcément ce que tu pense demander )

  9. #9
    Membre averti
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Par défaut
    Concernant les OptionButton ca fonctionne comment ?

    J'en ai aussi et je suis pas sûr...

    J'ai fait des trucs du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    If UserForm2.OptionButton12.Value = True Then
        CodeAbandon = "0"
     
            If UserForm2.OptionButton13.Value = True Then
            CodeAbandon = "1"
     
            End If

  10. #10
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    tu peux enlever le =true
    a=b renvoie la valeur vrai ou faux
    si a est un booléen
    a=vrai
    renvoie vrai si a=vrai et sinon renvoie Faux
    Autant mettre directement
    a
    donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    If UserForm2.OptionButton12 Then
    CodeAbandon = "0"
    end if
    If UserForm2.OptionButton13 Then
    CodeAbandon = "1"
    End If
    En gros sur le fonctionnement sil est coché il renvoie True sinon il renvoie False. Ya pas grand chose a dire de plus si ce n'est que bien entendu il y a des évènement associé (dans l'éditeur de macro place ton dans le code de ton userform, en haut il y a deux liste dans celle de gauche choisie ton option button dans celle de droite tu aura la liste des évènements disponible)

    Pour plus d'info
    http://silkyroad.developpez.com/VBA/...serForm/#LII-C

  11. #11
    Membre averti
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Par défaut
    Merci pour le lien, j'ai trouvé ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub CommandButton1_Click()
        Dim Ctrl As Control
     
        For Each Ctrl In Frame1.Controls
            If Ctrl.Object.Value = True Then
                MsgBox Ctrl.Object.Caption
                Exit For
            End If
        Next Ctrl
    End Sub
    Par contre il y a une erreur je pense ce n'est pas CommandButton1 mais OptionButton1 !

    Est-ce que je dois mettre ce code là pour chaque bouton ?

  12. #12
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    non ce n'est pas une erreur. Ce code se lance quand on clique sur commandebutton1

    Après je ne sais pas ce que toi tu veux faire.... tu peux essayer de faire un fichier exemple simple et des essais, lire la totalité du tuto et essayer de faire quelque exemple pour comprendre. Et si ca ne suffit pas expliquer clairement ce que tu veux faire car la on a pratiquement 0 infos. Tu es parti de récupérer le contenue d'un label et la tu nous montre une macro qui affiche le texte des différent controe d'un userform. Personnellement je ne te suis pas.

  13. #13
    Membre averti
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Par défaut
    En fait, dans ma macro je veux dire que si mon optionbutton est coché il faut documenter un fichier excel.
    Je vais essayer d'ici demain de vous filer le fichier

  14. #14
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if optionbutton1 then
    'tu ouvre ton fichier
    end if
    Après a toi de voir comment tu déclenche ta macro, si c'est en cliquand sur l'optionbutton en cliquant sur un autre bouton en fermant le user forme, en faisant croix croix rond carre haut bas et triangle deux fois (je suis sure que c'est possible de faire ca en interceptant les touches claviers )
    Quoi qu'il en soit c'ets de ca que dépendra le nom de ta sub
    pour connaitre la liste des évènement disponible
    En haut de la zone ou tu tape ton code il y a deux liste celle de gauche te permet de choisir lobjet (ta feuille un bouton une liste) celle de droite les évènement associé cliquer dessus, passer la sourie le modifier double cliqué.... A chaque fois ca te crée la macro qui corespond a toi de mettre le bon code dedans

  15. #15
    Membre averti
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Par défaut
    Voilà l'aspect de mon interface graphique !

    Je met un bout de mon code concernant les optionbutton, je sais pas si mon code est correct...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    If UserForm2.OptionButton3 Then
    UET = "Synthèse véhicule"
    Feuil4.Cells(19, 20) = "Synthèse véhicule"
    If UserForm2.OptionButton13 Then
        Feuil4.Cells(16, 2) = "Analyses en cours"
        Else
        Feuil4.Cells(16, 2) = "Questions abandonnées"
        End If
    End If
    Images attachées Images attachées  

  16. #16
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    le code est corecte (enfin il me semble) Mais si je me souvient bien ton problème est le contenu du code ou le lancement de la macro?

    Tu veux réaliser un truc, tu veux que cela se fasse QUAND? quand ou clique sur l'optionbuton ou quand on clique sur un bouton a la fin? (la deuxième solution me semble plus simple pour un formulaire

    EN fait j'ai beaucoup de mal a suivre cette discuttion est ce que tu pourrais reprendre depuis le début. Quest ce que tu veux faire exactement et quest ce que tu n'arrive pas a faire?

  17. #17
    Membre averti
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Par défaut
    Re !

    Bon en fait mes boutons d'options fonctionnent, ce sont mes SpinButton qui ne fonctionnent pas...

    J'ai ça comme code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub SpinButton1_Change()
     
        Label1.Caption = SpinButton1.Value 
     
    End Sub
    Quand je veux récupérer la valeur du label je dois pointer vers le caption du label ou vers le SpinButton ? :/

    Arf désolé je viens de voir qu'il y avait 2 pages de conversation :s

    En fait, Je souhaite que l'utilisateur choisisse ses propres paramètres (voir le screenshot) et quand il click sur "Lancer le traitement" tous les paramètres soient prit en compte.

    Pour le moment mes OptionButton sont prit en compte mais pas mes SpinButton !

  18. #18
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Pour prendre en compte les spinbutton tu doit récupérer leur valeur.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    valeur=spinbutton.value
    Après a toi de faire ce que tu veux avec la valeur en question

  19. #19
    Membre averti
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Par défaut
    Oui c'est ce que je fais, mais quand je pointe vers ma "valeur" ça ne me ressort rien. Comme si le caption de mon label ne s'incrémentait pas en fonction du SpinButton ! Bizarre

  20. #20
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Ou se situe ton code?
    essaye
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    valeur=userform1.spinbutton1.value
    msgbox valeur
    Est ce que tu ferme ton userform avant de lancer ce code?

Discussions similaires

  1. Comment récupérer la valeur d'un Label dans un tableau ?
    Par MissHey dans le forum C++Builder
    Réponses: 3
    Dernier message: 22/04/2015, 10h17
  2. Réponses: 1
    Dernier message: 23/08/2011, 13h39
  3. Récupérer valeur d'un label
    Par crapouye dans le forum ASP.NET
    Réponses: 1
    Dernier message: 20/01/2010, 10h59
  4. Réponses: 0
    Dernier message: 15/12/2008, 17h14
  5. comment récupérer le valeur mise dans le label puis afficher
    Par aliosys dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 27/12/2005, 20h00

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