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-03] Lier un ComboBox à un TextBox pour renvoyer l'info sur un tableau à 2 entrées.


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 8
    Par défaut [E-03] Lier un ComboBox à un TextBox pour renvoyer l'info sur un tableau à 2 entrées.
    bonjour à tous,
    Je suis complètement novice, mais essaie de progresser dans VB, là je suis complètement bloqué, et ne sais comment aborder le problème.

    Voilà j'aimerai dans renvoyer des valeurs que j'aurais saisie dans mes TextBox en fonction de l'élément sélectionné dans mon ComboBox.... ça doit surement vous paraitre simple, mais alors pour moi encore une fonction à apprendre!!!

    je joins le fichier, je suis sur un excel de 2003!!
    Merci à vous !!

    Jul

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    753
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 753
    Par défaut
    Je comprends que tu veuilles remplir la textbox de gauche, mais je ne comprends pas comment tu veux qu'elle soit remplie en fonction de ta combobox.

    Explique toi un peu plus, stp.

  3. #3
    Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 8
    Par défaut
    merci de t'intéresser à mon cas....alors en fait dans mon tableau recapitulatif "saisie" je retrouve tous mes éléments "meubles" où je dois leurs associées des heures selons les évènements Prod / Reg / Manut ..... par atelier.
    Dans mon Userform, je voudrais pouvoir selectionner un meuble dans la liste et lui renseigner tous les temps selon les ateliers pour que les valeurs se reportent bien dans le tableau recapitulatif " saisie".
    j'espère avoir été suffisemment explicite
    merci

    Jul

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    753
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 753
    Par défaut
    Ah d'accord j'ai compris.

    Eh bien ce que tu peux faire, c'est utiliser la procédure évènementielle Meuble_Change et changer la valeur de tous tes champs en fonction de la nouvelle valeur de ta combobox.

    Petit exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub Meuble_Change()
        If Meuble.Value = ThisWorkbook.Sheets(2).Range("A7").Value Then
            TextBox1.Value = "Truc"
            TextBox2.Value = "Ordinaire"
            ' etc...
        End If
        If Meuble.Value = ThisWorkbook.Sheets(2).Range("A8").Value Then
            TextBox1.Value = "Bidule"
            TextBox2.Value = "Original"
            ' etc...
        End If
        ' etc...
    End Sub
    Ceci dit, plutôt que de faire comme ça, je te recommande vivement de mettre toutes infos à remplir sur la même feuille que ta liste de meubles, et ainsi programmer de cette manière:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Private Sub Meuble_Change()
        Dim i As Integer, j As Integer, derniere_ligne As Integer
        derniere_ligne = Feuil1.Cells(Rows.Count, 1).End(xlUp).Row
        For i = 1 To derniere_ligne
            ' Les meubles sont dans la colonne 1
            If Meuble.Value = ThisWorkbook.Sheets(2).Cells(i, 1).Value Then
                ' Changement des valeurs des 71 textbox
                For j = 1 To 71
                    UserForm1.Controls("Textbox" & j).Value = _
                    ThisWorkbook.Sheets(2).Cells(i, j + 1).Value
                Next
            End If
        Next
    End Sub
    Cette méthode suppose que tu as le contenu de tes 71 textbox dans les 71 colonnes qui suivent ton nom de meuble sur ta feuille Excel.
    Je n'ai rien testé je ne suis absolument pas sûr de ma réponse car tu ne m'as donné aucune valeur à remplir.

    En revanche la première méthode fonctionn à coup sûr, mais elles est beaucoup plus lourde à implémenter.

Discussions similaires

  1. des API pour recuperer des infos sur les films, séries, etc
    Par mapmip dans le forum Webmarketing
    Réponses: 4
    Dernier message: 29/09/2014, 10h46
  2. Réponses: 1
    Dernier message: 08/12/2013, 20h56
  3. Réponses: 6
    Dernier message: 06/12/2013, 15h06
  4. Lier combobox et textbox dans datasheet
    Par polonius dans le forum VBA Access
    Réponses: 2
    Dernier message: 16/07/2008, 10h57
  5. AIDE pour lier un combobox avec le listbox a l'aide d'un bouton
    Par dricks dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 25/07/2007, 15h42

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