[Excel] Alimenter textbox via listbox
Résolu
ced3c
Messages postés
237
Date d'inscription
Statut
Membre
Dernière intervention
-
ced3c Messages postés 237 Date d'inscription Statut Membre Dernière intervention -
ced3c Messages postés 237 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Une fois de plus je fais appel à vous
Je souhaite réalisé une divxthèque avec excel ( je sais qu'il existe plein de bons logiciels pour cela mais je veux le réaliser moi même surtout dans le but d'apprendre à mieux me servir d'excel)
J'ai en tout 3 éléments appelés :
combobox1
listbox1
textbox1
combobox1 me permet de choisir des répertoires. Une fois choisi il envoi dans ...
listbox1 les noms de fichiers contenu dans le repertoire choisi
textbox1 doit une fois un fichier choisi dans listbox1 afficher la description de celui ci
Mon problème viens de la relation entre listbox1 et textbox1 puisque les deux sont alimentés différemment.
Textbox1 est alimenté par une feuille appellée "Base" ou l'on trouve 4 colonnes:
NomDuRepertoire | NomDuFilm | Image | Description |
NomDuRepertoire contient bien sur les mêmes noms de répertoire que combobox1
NomDuFilm contient aussi les mêmes noms de fichiers que listbox1
J'espère que je suis pour l'instant clair et pas trop long
Un exemple (repertoire action film 300)
combobox1: Action
listbox1 : 300.avi
dans la base je trouve aussi
Action | 300.avi | Image | Description
Comment puis je faire pour dire à textbox1:
Affiche moi la description du film selectionner dans la listbox1
J'ai essayer
Mais il m'indique qi'il manque un "Objet"
Le fiichier en question: https://www.cjoint.com/?0AiltAqOOA2
Pouvez vous m'aider s'il vous plait ? (inutile de dire que je suis pour l'instant au tout début de l'apprentissage de VBA soit quasiment le niveau zéro)
Merci d'avance
Une fois de plus je fais appel à vous
Je souhaite réalisé une divxthèque avec excel ( je sais qu'il existe plein de bons logiciels pour cela mais je veux le réaliser moi même surtout dans le but d'apprendre à mieux me servir d'excel)
J'ai en tout 3 éléments appelés :
combobox1
listbox1
textbox1
combobox1 me permet de choisir des répertoires. Une fois choisi il envoi dans ...
listbox1 les noms de fichiers contenu dans le repertoire choisi
textbox1 doit une fois un fichier choisi dans listbox1 afficher la description de celui ci
Mon problème viens de la relation entre listbox1 et textbox1 puisque les deux sont alimentés différemment.
Textbox1 est alimenté par une feuille appellée "Base" ou l'on trouve 4 colonnes:
NomDuRepertoire | NomDuFilm | Image | Description |
NomDuRepertoire contient bien sur les mêmes noms de répertoire que combobox1
NomDuFilm contient aussi les mêmes noms de fichiers que listbox1
J'espère que je suis pour l'instant clair et pas trop long
Un exemple (repertoire action film 300)
combobox1: Action
listbox1 : 300.avi
dans la base je trouve aussi
Action | 300.avi | Image | Description
Comment puis je faire pour dire à textbox1:
Affiche moi la description du film selectionner dans la listbox1
J'ai essayer
Private Sub ListBox1_Click() With Sheets("Base") If ListBox1.ListIndex < 0 Then Exit Sub Me.TextBox1.Value = Ws.Range("D" & ListBox1.List(ListBox1.ListIndex, 1)).Value End With End sub
Mais il m'indique qi'il manque un "Objet"
Le fiichier en question: https://www.cjoint.com/?0AiltAqOOA2
Pouvez vous m'aider s'il vous plait ? (inutile de dire que je suis pour l'instant au tout début de l'apprentissage de VBA soit quasiment le niveau zéro)
Merci d'avance
A voir également:
- [Excel] Alimenter textbox via listbox
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel moyenne - Guide
6 réponses
Bonjour,
Me.TextBox1.Value = Ws.Range("D" & ListBox1.List(ListBox1.ListIndex, 1)).Value
Ws n'est pas defini.
Bonne suite
Me.TextBox1.Value = Ws.Range("D" & ListBox1.List(ListBox1.ListIndex, 1)).Value
Ws n'est pas defini.
Bonne suite
Merci pour ta reponse Patrice33740
J'ai remplacé le code par le tien mais j'obtiens :
erreur définie par l'application ou par l'objet
J'ai remplacé le code par le tien mais j'obtiens :
erreur définie par l'application ou par l'objet
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
bonjour,
ListBox1.List(ListBox1.ListIndex, 1) te donne la valeur (300.avi) et non la ligne
(au passage pourquoi le 1 ?)
si tu veux la ligne 2 moyens:
1/ Listbox1.listindex te donne l'index de l'occurence sélectionnée. Attention l'index commence à 0 (pas sûr de moi) et les lignes de données sur commence sur ta feuille à ?
2/ en gardant la valeur
film=ListBox1.List(ListBox1.ListIndex, 1)
With Ws
lig=.columns("D").find(film,.range("D1"), xlvalues).row
Texbox1=.cells(lig,"F")
end with
a noter qu'un textbox est destinée à la saisie et non à l'affichage. pour cela, il y les labels (qui ne mobilisent pas autant de mémoire) que tu peux mettre en forme style textbox; autre avantage: modification impossible de la donnée par l'utilisateur
Je t'avais indiqué un site particulièrement complet; vu ta demande, je me demande si tu l'as étudié ?
ListBox1.List(ListBox1.ListIndex, 1) te donne la valeur (300.avi) et non la ligne
(au passage pourquoi le 1 ?)
si tu veux la ligne 2 moyens:
1/ Listbox1.listindex te donne l'index de l'occurence sélectionnée. Attention l'index commence à 0 (pas sûr de moi) et les lignes de données sur commence sur ta feuille à ?
2/ en gardant la valeur
film=ListBox1.List(ListBox1.ListIndex, 1)
With Ws
lig=.columns("D").find(film,.range("D1"), xlvalues).row
Texbox1=.cells(lig,"F")
end with
a noter qu'un textbox est destinée à la saisie et non à l'affichage. pour cela, il y les labels (qui ne mobilisent pas autant de mémoire) que tu peux mettre en forme style textbox; autre avantage: modification impossible de la donnée par l'utilisateur
Je t'avais indiqué un site particulièrement complet; vu ta demande, je me demande si tu l'as étudié ?
merci pour votre réponse michel_m et désolé pour ma réponse tardive j'ai du m'absenter.
Je vais étudier cela de suite merci beaucoup.
Pour l adresse du site, encore merci je suis en train de l'étudier, j'ai juste été une peu trop hâtif dans ma démarche.
Je vais essayer d'apprendre un peu plus pour me débrouiller par moi même.
Je vais étudier cela de suite merci beaucoup.
Pour l adresse du site, encore merci je suis en train de l'étudier, j'ai juste été une peu trop hâtif dans ma démarche.
Je vais essayer d'apprendre un peu plus pour me débrouiller par moi même.