XL 2019 appel formulaire depuis ListBox contenue dans un userform

youpi457032

XLDnaute Occasionnel
bonjour,
Je voudrais appeler un formulaire (Formulaire_élève) et les données qu'il doit contenir, depuis une listBox (Résultat_Filtre) qui contient des entrées en ligne...
L'idée de base serait la suivant :
Ma listbox m'affiche des résultats élèves... élève1 à élèveX....
si je double click sur elève 1 dans cette listBox (Résultat_filtre) alors ouvrir Formulaire_élève et afficher les données de l'élève1.
si je double click sur élève 200 dans cette ListBox (Résultat_filtre) alors ouvrir Formulaire élève et afficher les données de l'élève 200
etc....
Ma base de données qui contient les données est nommée BD. Les données appelées dans le formulaire elèves importent depuis colonne A à colonne BO, ligne après ligne
toutes mes textbox du formulaire élève sont nommés T1, T2, T3....etc..... (T1 appelle colonne A, T2 appelle colonne B, etc....)
voici mon code que j'ai écris... mais rien ne se passe
[CODE\] :
'MODULE USERFORM FILTRE
private sub Résultat_Filtre_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
if me.Résultat_filtre.listindex > -1 then Formulaire_élève.show
End sub
'MODULE DE L'USERFORM Formulaire_élève
private sub formulaire_élève_initialize()
with Filtre.Résultat_filtre
pos = application.match(.list(.Listindex, 0), range("BD[A2:BO]"), 0) ' le 0 du listindex correspond à colonne A
end with
with range("BD")
for k = 1 to .columns.count
me.controls("T" & k) = .cells(pos, k)
next k
end with
end sub
[CODE/]:
Je joins un fichier test anonymisé....
Si quelqu'un peut m'aider à faire fonctionner tout cela ...;
Merci
 

Pièces jointes

  • test1.xlsm
    660.8 KB · Affichages: 10

youpi457032

XLDnaute Occasionnel
ah ok... je vais renommer les colonnes par leur intitulé...
et mettre une Maj comme indiqué.... et je reviens vers vous une fois les colonnes renommées et réécrites...
Je vais récrire tout le code du classeur..; et je reviens vers vous avec le nouveau fichier proprement réécris comme demandé.... et ensuite je vous solliciterai pour les difficultés restantes.... et ma question initiale...l'appel du formulaire elève depuis un double clic listBox userform filtre....
Je vous remercie... je fais tout cela...
 

Dranreb

XLDnaute Barbatruc
Bonsoir.
C'est bien long je trouve. Ça fait une semaine que j'attends votre classeur.
Je peux vous dire que le mieux pour appeler l'UFmÉlève c'est de l'équiper d'une méthode :
VB:
Public Sub AfficherLigne(ByVal Ligne As Long)
   LCou = Ligne
   TVL = CL.Lignes(LCou).Range.Value
   CL.ValeursDepuis TVL
   CA.ValeursDepuis TVL
   Me.Show
   End Sub
Dans l'UFmFiltre :
VB:
Private Sub LBxFiltre_Click()
   UFmÉlève.AfficherLigne TLFilt(LBxFiltre.ListIndex + 1)
   End Sub
Pas pu tester: j'ai toujours une version pourrie de votre 'Formulaire_élève' qui plante dans la Sub UserForm_Initialize.
 

Discussions similaires

Statistiques des forums

Discussions
314 719
Messages
2 112 181
Membres
111 452
dernier inscrit
christine64