Bonjour,
Me voici à nouveau face à un problème dont je n'arrive pas à trouver la solution.
J'ai une relation Many to Many,
Table1 liée en One to many à TableLien
Table2 liée en One to Many à TableLien
J'ai un formulaire (Formulaire1) basé sur la Table1, et un formulaire (Formulaire2) basé sur la Table2.
Sur le Formulaire2, j'ai un sous formulaire, basé sur la TableLien. Sur ce sous formulaire, il y a une combo box qui permet de selectionner les ID de la table 1.
La combo box est basée sur une query "Select ID from Table1".
J'aimerais pouvoir ouvrir le Formulaire1, avec l'enregistrement correspondant à l'ID selectionné dans la combobox, grâce à un boutton.
Voici les codes que j'ai essayé, mais rien ne marche!
Qui donne une "erreur d'exécution 2501, l'action OpenForm a été annulée"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Private Sub cmdOpenForm1_Click() DoCmd.OpenForm "Formulaire1", , , "[ID]=" & Me.ID Exit_Command20_Click: Exit Sub MsgBox Err.Description End Sub
Idem lorsque j'essaye avec une variable:
Lorsque je tente d'associer le texte de la combobox à une variable, le formulaire s'ouvre avec le premier enregistrement, non pas l'ID sélectionnée dans la combobox.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Private Sub cmdOpenForm1_Click() Dim rsID As String rsID = "[ID]=" & Me![ID] DoCmd.OpenForm "Formulaire1", , , rsID Exit_Command20_Click: Exit Sub MsgBox Err.Description End Sub
Lorsque je tente de "hardcoder" l'id, le bon enregistrement s'ouvre...
Alors comment faire?
Code : Sélectionner tout - Visualiser dans une fenêtre à part DoCmd.OpenForm "Formulaire1", , , "[ID]=" & "'001'"
Merci!
a.
Partager