Probleme Fichier VBA

davos

XLDnaute Nouveau
Bonjour à tous,

A force de chercher sur le net, j'ai pu trouver ici et là des bouts de code me permettant d'arriver tant bien que mal au résultat que vous trouverez en PJ.

Cependant, j'ai un problème dans mon fichier.

Normalement, les données de ma base devraient apparaitre dans "recherche partenaire" et les combobox au dessus me permettent de tri ces données. Sauf que rien ne se passe. Rien n'apparait dans la zone de recherche

N'étant pas du tout un pro du VBA, j'ai beau tourner le problème dans tous les sens je ne trouve pas de solution.

Quelqu'un aurait il une idée ?

Je vous en remercie par avance,

Très sincèrement,

David.
 

Pièces jointes

  • Base DA.xls
    89 KB · Affichages: 37

davos

XLDnaute Nouveau
Re : Probleme Fichier VBA

Alors sur le principe, les données de la feuil2 apparaissent bien dans la listbox et c'est le but recherché.
Par contre dans l'esprit, lorsqu'un "client" est sélectionné dans la listbox, les données devraient apparaitre dans les textbox (comme c'était le cas dans le fichier d'origine avec l'option "Modifier". Les combobox ne servent qu'a "trier" la base pour selectionner rapidement l'information.

En fait, j'ai l'option "Modifier" d'un côté qui sert à faire une modif sur une fiche puis la listbox recherche pour rechercher les données sans avoir besoin de les modifier (et là je cherche à les faire apparaitre dans les textbox).

Je ne sais pas si je suis clair désolé :/

En tout cas merci de votre aide.
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : Probleme Fichier VBA

Ajoutez cette procédure, ça a l'air pas mal.
VB:
Private Sub ListBoxLocataire_Click()
Dim L As Long, VLgn(), C As Long
L = TLgn(ListBoxLocataire.ListIndex + 1)
VLgn = CL.PlgTablo.Rows(L).Resize(, 30).Value
For C = 1 To 30: Me("TextBox" & C).Text = VLgn(1, C): Next C
End Sub
 

davos

XLDnaute Nouveau
Re : Probleme Fichier VBA

Bonjour Dranreb,

Pour commencer, merci pour tes premiers conseils, une belle avancée.

Maintenant, quelques questions me viennent à l'esprit :

Dans "mon" ancien code, je savais ajouter des combobox pour effectuer le tri sur la listboxloataire, je ne suis pas certain d'avoir compris comment en ajouter avec ton code :/

Par ailleurs, sur l'ancien code, je savais affecter les combobox aux bonnes colonnes, c'est à dire que je choisissais d'effectuer le tri sur des colonnes bien particulières, là j'avoue ne pas comprendre comment naviguer dans ton code.

Au plaisir de te lire ou d'échanger,

très sincèrement,

David
 

Dranreb

XLDnaute Barbatruc
Re : Probleme Fichier VBA

Bonsoir.

N'hésitez pas à me poser des questions sur d'autres points qui ne seraient pas immédiatement clairs. Je me suis efforcé de documenter tous mes modules de service du mieux que j'ai pu, mais je ne peux me mettre complètement à la place de celui qui les découvre. De fait d'habitude je mets plutôt "A", "B", "C", pourquoi là 1, 2, 3 ? Parce que c'est ainsi que finissent les noms des ComboBox peut être, je ne sais pas.
 

davos

XLDnaute Nouveau
Re : Probleme Fichier VBA

Alors tant que j'y suis j'ai deux autres questions :

La les données apparaissent bien dans la Listboxlocataire à partir des combos. Est il possible de rendre les données des listbox accessibles qu'en affichage (c'est à dire que pour la modification il faut automatiquement passer par mon module de modification ?)


Autre question,
Comment faire pour remplacer certaines de mes TextBox par des ListBox et que ça ait la même finalité ? Est-ce possible ?
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : Probleme Fichier VBA

Je suppose qu'on peut mettre la propriété Enabled d'une ListBox à False. Mais je ne vois pas pourquoi tant de complication. Je ne prévois jamais de bouton destiné à annoncer une intention, à utiliser avant d'avoir isolé une fiche existante ou construit une nouvelle fiche. Je ne mets toujours que des boutons d'exécution finale "Ajouter"/"Modifier" (c'est le même bouton puisque c'est au programme d'informer l'usager de la façon dont ça va être validé), "Supprimer".

À propos, très important: ne pas oublier après toute modification de la base, de refaire un CL.Actualiser.

Il devrait être possible d'utiliser WorksheetFunction.Index et peut être WorksheetFunction.Transpose pour affecter d'un coup à la List d'un ListBox une séries de valeurs consécutive prises en plein milieu d'un tableau de variant représentant la Value d'une plage horizontale. Mais ce serait peut être tout aussi simple de faire une boucle soit avec des AddItem soit préparant un petit tableau représentant son List tout entier comme j'ai fait dans la CL.Résultat.
 
Dernière édition:

Discussions similaires

Réponses
1
Affichages
155
Compte Supprimé 979
C
Réponses
21
Affichages
486

Statistiques des forums

Discussions
312 493
Messages
2 088 952
Membres
103 989
dernier inscrit
jralonso