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 :

UserForm Dynamique - Récupérer valeur stocker dans un champ ajouter


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2016
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2016
    Messages : 29
    Par défaut UserForm Dynamique - Récupérer valeur stocker dans un champ ajouter
    Bonjour à tous,


    Je vous expose mon problème.
    J'ai créé un questionnaire via UserForm sur Excel avec pleins de petites fonctionnalités VBA.

    Lorsque je clique sur un bouton "Ajouter Experts", un nouveau userform "ADDEXPERTS" m'apparait avec 3 champs m'offrant la possibilité de renseigner le nom/prénom/mail de l'expert. Je les renseigne.
    Si j'appuie sur un bouton "enregistrer" (dans ce même userForm), ces informations sont reprises dans une feuille excel (database) qui stocke l'info.

    J'ai aussi dans ce userform un bouton "ajouter autre expert", quand je clique dessus je créé mes 3 champs via une boucle dans le userform qui s'agrandit en fonction (au max 10 experts à ajouter et j'ai bien blindé mon code pour ca)

    voici la partie du code pour ajouter mes 3 champs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     For i = 1 To 3
            Set Obj = TExperts.Controls.Add("forms.textbox.1")
            With Obj
                .Name = "OtherExpert" '& (CompteurDeClick + 1) 'nom de ta textbox (toto1, toto2, toto3, ...)
                .Left = 160 + (100 * (CompteurDeClick)) 'position par rapport au rebord gauche de l'UserForm
                .Top = 12 + PositionTop 'position par rapport au haut de l'UserForm
                .Width = 78 'largeur de la zone d'écriture
                .Height = 18 'hauteur de la zone d'écriture
                'tu peux rajouter ou enlever des propriétés de l'objet
            End With
            PositionTop = PositionTop + 30
        Next

    Mon problème est le suivant, je n'arrive pas à récupérer les valeurs stocker pour mon expert 2. C'est à dire que je crée 3 champs nommés "OtherExpert2" , "OtherExpert3" , "OtherExpert4" qui devrait reprendre le nom/prénom/mail de mon 2eme expert.
    Mon code est le suivant quand je clique sur le bouton "enregistrer" :
    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
     
    Private Sub RegisterExperts_Click()
     
    DB = "Database"
    NbLignesNonVideDB = Sheets(DB).Columns(1).Find("", LookIn:=xlFormulas, lookat:=xlWhole).Row
    NbExperts = Sheets("Technique").Cells(2, 2).Value
    If NbExperts = 0 Then
        Sheets(DB).Cells(NbLignesNonVideDB, 20).Value = ExpertName1 & ":" & ExpertRole1 & ":" & ExpertDepartment1 & ":" & ExpertMail1 'seulement 1expert de renseigner, facile à reprendre les infos vu que je connais les noms des champs. 
    Else
        Sheets(DB).Cells(NbLignesNonVideDB, 20).Value = ExpertName1 & ":" & ExpertRole1 & ":" & ExpertDepartment1 & ":" & ExpertMail1
        j = 2
        For j = 2 To NbExperts + 1
        Sheets(DB).Cells(NbLignesNonVideDB, 20).Value = Sheets(DB).Cells(NbLignesNonVideDB, 20).Value & "|" & TExperts.OtherExpert1 '+ (j) & ":" & OtherExpert(j) & ":" & OtherExpert(j) & ":" & OtherExpert(j)
        Next j
    End If
    J'ai essayé plusieurs possibilités : OtherExpert(j), TExperts.OtherExpert1, OtherExpert & (j) rien ne marche...

    Comment est-ce que je peux faire pour récupérer les petits noms techniques de mes 3 champs créés via le bouton ???

  2. #2
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    993
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 993
    Par défaut
    Salut, dans ta boucle For, essaie quelque chose comme TExperts.Controls("OtherExpert" & j).Text

Discussions similaires

  1. [MySQL] Récupérer les valeurs définies dans un champ ENUM
    Par Huntress dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 03/07/2010, 19h55
  2. [MySQL] Récupérer valeurs BDD dans champ formulaire
    Par romeskira dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 12/12/2008, 18h01
  3. Réponses: 10
    Dernier message: 03/11/2008, 17h15
  4. Réponses: 2
    Dernier message: 22/05/2007, 17h15
  5. Récupérer la valeur saisie dans un champ caché
    Par sheira dans le forum Langage
    Réponses: 14
    Dernier message: 03/04/2007, 18h06

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