Bonjour à tous,
je vous expose ce que je veux faire .
Donc je pars d'un formulaire où j'ai simplement une listBox pour choisir le nom d'une commande, une fois validé, cela a pour effet de créer la requête en s'appuyant sur un modèle. Voici le code de se formulaire :
Ensuite, cela m'ouvre un état qui doit afficher la requête créé ci-dessus. J'aimerai sur cet état, afficher la valeur choisis dans le formulaire (ici, nom de la commande). J'ai pensé à faire passer l'info par arguments
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 Dim Db As DAO.Database Dim QryModele As DAO.QueryDef Dim strSQLModele As String Dim NomCmd As String NomCmd = lstCommande Set Db = CurrentDb Set QryModele = Db.QueryDefs("qryChxCommande_modele") strSQLModele = QryModele.SQL strSQLModele = Replace(strSQLModele, "[Sélectionnez une commande]", Chr(34) & Nz(lstCommande) & Chr(34)) 'Si la requête existe déjà alors If TesteExistenceRequete("qryChxCommande") Then 'alors modifier le code de la requête Db.QueryDefs("qryChxCommande").SQL = strSQLModele 'Sinon Else 'Créer la nouvelle requête Db.CreateQueryDef "qryChxCommande", strSQLModele End If 'Ferme le formulaire DoCmd.Close acForm, Me.Name 'Ouvre le rapport stDocName = "RptCommande" DoCmd.OpenReport stDocName, acPreview, , , , NomCmd End SubLors de l'ouverture de l'état, une procédure se déclenche, pour remplir une textBox :
Code : Sélectionner tout - Visualiser dans une fenêtre à part DoCmd.OpenReport stDocName, acPreview, , , , NomCmd
Mon argument est bien visible sur Me.openArgs (mode debug), mais lors de l'affectation de txtNameCmd, il y a un message d'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Private Sub Report_Open(Cancel As Integer) If IsNull(Me.OpenArgs) Then 'ne rien faire Else txtNameCmd = Me.OpenArgs End If End Sub
Pourtant ma textbox attend bien un string non?You can't assign a value to this object
Je vous remercie de prendre la peine de me lire, et j'espère que vous pourriez m'éclairer sur ce message d'erreur, ou de al solution à entreprendre.
Cdt
Partager