*Bonjour*,
je suis en train de construire une base de données sous Access 2010 afin d'orienter les magasiniers sur les fournisseurs qu'on stocke et ceux chez qui on doit se dépanner dans le cas où le fournisseur pour lequel on garde les références en stock ne peut pas nous fournir la référence commander. J'ai fais une table "famille" (famille de produits) et dans chaque famille de produits on a une ou plusieurs sous-famille. J'ai fait une autre table "fournisseurs" (id_frs, nom_frs, tel, site_web,...) et une table "produit" qui fait l'interaction entre un groupe article et ses-familles.
Le processus de fonctionnement attendu de ma base est le suivant: on part du menu de famille de produits (sélection d'une famille de produits) => on arrive au menu des sous-familles de la famille de produits qu'on a sélectionné au départ=> on sélectionne une sous-famille données puis on arrive sur un formulaire => le formulaire contient une liste déroulante multisélection (liste de tous les fournisseurs avec lesquels on travail) => on sélectionne le ou les fournisseurs de la sous-famille et lorqu'on valide notre sélection j'aimerai avoir les informations (id_frs, nom_frs, tel, site_web,...) concernant le ou les fournisseurs sélectionnés. Ce processus concerne les fournisseurs stockés et il en sera de même pour le dépannage.
Voici le code VBA que j'ai mis en place (et qui marche pas bien):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 Private Sub btnListe_Click() Dim varI As Variant Dim strFiltre As String Dim MonCtl As Variant 'défini un controle nommé MonCtl Dim Element As Variant strFiltre = "" If Me.lstFOURNISSEURS.ItemsSelected.Count = 0 Then MsgBox "Aucun fournisseur n'a été sélectionné" Else For Each varI In Me!lstFOURNISSEURS.ItemsSelected If strFiltre <> "" Then strFiltre = strFiltre & " or " strFiltre = strFiltre & "[Code frs]='" & _ Me!lstFOURNISSEURS.ItemData(varI) & "'" Next varI DoCmd.OpenForm "stock", acNormal, strFiltre End If 'applique le controle à la liste déroulante du formulaire Set btnListe = Form!stock!code_frs 'affiche l'ensemble des éléments sélectionés de la liste For Each Element In lstFOURNISSEURS.ItemsSelected MsgBox lstFOURNISSEURS.Column(0, Element) Next End Sub
J'ai vraiment besoin de votre aide pour voir ma base de données fonctionner correctement.
Merci
Dany
Partager