Insérer le champ sélectionné d'une listbox dans une textbox

Résolu
cs_Tony1201 Messages postés 4 Date d'inscription vendredi 2 janvier 2009 Statut Membre Dernière intervention 9 février 2009 - 6 févr. 2009 à 10:28
cs_Tony1201 Messages postés 4 Date d'inscription vendredi 2 janvier 2009 Statut Membre Dernière intervention 9 février 2009 - 9 févr. 2009 à 11:47
Bonjour,
Je suis débutant sur VBA et je dois créer une mini comptabilité pour un projet.
J'ai créer une feuille pour remplir mes écritures et une feuille où dans la 1ère colonne j'ai le numéro de cpte et dans la 2è, j'ai le libellé de compte associé.

J'ai créer un formulaire pour remplir mes écritures et dans une listbox je fais apparaitre les libellés de compte.
Dans une textbox juste au dessous j'aimerai que, lorsque je click sur le libellé, il aille cherché  le numéro de compte qui est associé à ce libellé et qu'il le mette dans cette textbox.

Quelqu'un peut-il m'aider?

Tony

5 réponses

cnt Messages postés 219 Date d'inscription lundi 21 novembre 2005 Statut Membre Dernière intervention 20 décembre 2010 1
6 févr. 2009 à 18:56
Bonjour

On peut utiliser la méthode "FIND" --> recherche dans une PLAGE (Range)
    Dim maCellule As Range

    Dim monTexte As String

    Set maCellule = Range("maZoneSource").Find(maListBox.Text, LookIn:=xlValues)

    If Not maCellule Is Nothing Then

        monTexte = maCellule.Offset(0, -1).Value

    End If

Salut
3
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
6 févr. 2009 à 13:12
Salut
(modif catégorie question --> VBA)

Il te faut echercher la ligne dans ta feuille correspond à l'élément sélectionné
- Définis un Range de la zone où se trouvent les éléments contenus dans ta ListBox "maZoneSource"
- Fait une recherche avec une boucle For-Next
- Prendre le texte de la cellule située à gauche

Exemple :
   Dim maCellule As Objext
   Dim monTexte As String
   For Each maCellule In Range("maZoneSource")
      If maCellule.Value = maListBox.Text Then
         monTexte = maCellule.Offset(0, -1).Value
         Exit For
      End If
   Next

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
6 févr. 2009 à 13:13
Bien sûr, tu mets ça dans l'évènement maListBox_Click
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
7 févr. 2009 à 20:39
Oui, beaucoup plus judicieux, CNT
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Tony1201 Messages postés 4 Date d'inscription vendredi 2 janvier 2009 Statut Membre Dernière intervention 9 février 2009
9 févr. 2009 à 11:47
Merci, ca marche

Tony
0
Rejoignez-nous