Bonjour à tous ,
Je suis un grand débutant sous access et suis "coincé" dans l'appli que ce j'essai de monter (un grand merci par avance pour votre aide).
Dans un sous formulaire j'ai 3 listes modifiables "en cascade" me permettant :
1- d'alimenter les champs de ma table liée au sous formulaire,
2- de filtrer une autre table .
liste1: nom commune ( critère 1)
liste 2: type établissement ( critère 2)
liste 3: nom de l'établissement ( choix dans la liste, du nom recherché par l'utilisateur)
Pour ma liste 3 (modifiable24), la requête SQL suivante:
Je pense que j'ai un soucis sur le VBA mais je n'arrive pas à l'identifier:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT Table_etab.id_etab, Table_etab.nom_etab, Table_etab.id_commune, Table_etab.id_type_etab FROM [Table_type _etab] INNER JOIN (Table_commune INNER JOIN Table_etab ON Table_commune.id_commune=Table_etab.id_commune) ON [Table_type _etab].id_type_etab=Table_etab.id_type_etab WHERE (((Table_etab.id_commune)=Forms!Form_eleve!SForm_sco!Crit1_nom_etab) And ((Table_etab.id_type_etab)=Forms!Form_eleve!SForm_sco!Crit2_nom_etab));
Donc ma liste 3 ne se met pas à jour quand Crit 1 ou 2 change et quand on change d'enregistrement dans le formulaire "père" ou sous formulaire "fils".
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
28
29
30
31
32
33
34
35 Option Compare Database Private Sub id_annee_scolaire_AfterUpdate() Me.Requery End Sub Private Sub Crit1_nom_etab_AfterUpdate() Modifiable24.RowSource = "SELECT Table_etab.id_etab, Table_etab.nom_etab, Table_etab.id_commune, Table_etab.id_type_etab FROM [Table_type _etab] INNER JOIN (Table_commune INNER JOIN Table_etab ON Table_commune.id_commune = Table_etab.id_commune) ON [Table_type _etab].id_type_etab = Table_etab.id_type_etab WHERE (((Table_etab.id_commune)=[Forms]![Form_eleve]![SForm_sco]![Crit1_nom_etab]) AND ((Table_etab.id_type_etab)=[Forms]![Form_eleve]![SForm_sco]![Crit2_nom_etab]));" Me.Crit1_nom_etab.Requery End Sub Private Sub Crit2_nom_etab_AfterUpdate() Modifiable24.RowSource = "SELECT Table_etab.id_etab, Table_etab.nom_etab, Table_etab.id_commune, Table_etab.id_type_etab FROM [Table_type _etab] INNER JOIN (Table_commune INNER JOIN Table_etab ON Table_commune.id_commune = Table_etab.id_commune) ON [Table_type _etab].id_type_etab = Table_etab.id_type_etab WHERE (((Table_etab.id_commune)=[Forms]![Form_eleve]![SForm_sco]![Crit1_nom_etab]) AND ((Table_etab.id_type_etab)=[Forms]![Form_eleve]![SForm_sco]![Crit2_nom_etab]));" Me.Crit2_nom_etab.Requery End Sub Private Sub Modifiable24_AfterUpdate() Modifiable24.RowSource = "SELECT Table_etab.id_etab, Table_etab.nom_etab, Table_etab.id_commune, Table_etab.id_type_etab FROM [Table_type _etab] INNER JOIN (Table_commune INNER JOIN Table_etab ON Table_commune.id_commune = Table_etab.id_commune) ON [Table_type _etab].id_type_etab = Table_etab.id_type_etab WHERE (((Table_etab.id_commune)=[Forms]![Form_eleve]![SForm_sco]![Crit1_nom_etab]) AND ((Table_etab.id_type_etab)=[Forms]![Form_eleve]![SForm_sco]![Crit2_nom_etab]));" Me.Modifiable24.Requery End Sub Private Sub Modifiable24_Change() Modifiable24.RowSource = "SELECT Table_etab.id_etab, Table_etab.nom_etab, Table_etab.id_commune, Table_etab.id_type_etab FROM [Table_type _etab] INNER JOIN (Table_commune INNER JOIN Table_etab ON Table_commune.id_commune = Table_etab.id_commune) ON [Table_type _etab].id_type_etab = Table_etab.id_type_etab WHERE (((Table_etab.id_commune)=[Forms]![Form_eleve]![SForm_sco]![Crit1_nom_etab]) AND ((Table_etab.id_type_etab)=[Forms]![Form_eleve]![SForm_sco]![Crit2_nom_etab]));" Me.Modifiable24.Requery End Sub
En espérant avoir été compréhensible...
Partager