Bonjour tout le monde,
j'ai un problèmes avec mon formulaire quand je le ferme.
Je vous donne un peu plus d'information sur ce formulaire pour une meilleur compréhension.
j'ai un formulaire frm_mobile qui contient:
une zone de liste déroulante zl_marque.
contenu:
SELECT * FROM tbl_marque ORDER BY [nom_marque];
sur changement:
1 2 3
| Private Sub zl_marque_Change()
Me.zl_modele.Requery
End Sub |
qui met à jour la liste zl_modele selon la marque sélectionner.
et sur absence dans liste:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| Private Sub zl_marque_NotInList(NewData As String, Response As Integer)
'Ajoute l'element qui n'existe pas dans la table tbl_marque
If MsgBox("Voulez-vous ajouter " & NewData & " à la liste des marque ?", _
vbYesNo + vbQuestion + vbDefaultButton2, "Ajout") = vbYes Then
DoCmd.RunSQL "INSERT INTO tbl_marque ( nom_marque ) SELECT """ & NewData & """;"
Response = acDataErrAdded
Else
Response = acDataErrContinue
zl_marque.Undo
End If
End Sub |
une autre zone de liste déroulante zl_modele en cascade avec zl_marque
contenu:
SELECT tbl_modele.num_modele, tbl_modele.nom_modele FROM tbl_modele WHERE (((tbl_modele.num_marque)=forms!frm_mobile.zl_marque));
sur absence dans liste:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| Private Sub zl_modele_NotInList(NewData As String, Response As Integer)
'Ajoute l'element qui n'exsite pas dans la table tbl_modele
If MsgBox("Voulez-vous ajouter " & NewData & " à la liste des marque ?", _
vbYesNo + vbQuestion + vbDefaultButton2, "Ajout") = vbYes Then
DoCmd.RunSQL "INSERT INTO tbl_modele (nom_modele, num_marque) VALUES ('" & NewData & "','" & zl_marque & "');"
Response = acDataErrAdded
Else
Response = acDataErrContinue
zl_marque.Undo
End If
End Sub |
et sur clic
1 2 3
| Private Sub zl_modele_Click()
Me.Refresh
End Sub |
pour mettre à jour le sous formulaire.
une zone de texte imei qui va remplir le champ imei dans la table tbl_mobile
le sous_formulaire sfrm_imei qui est tout simplement une requête qui affiche le num_modele et l'imei.
avec pour champ père et fils: num_modele
et le dernier élément du formulaire un bouton btn_fermer
sur clic:
1 2 3
| Private Sub btn_fermer_Click()
DoCmd.Close
End Sub |
J'ai ajouté un bouton supplémentaire btn_nouveau qui rafraichi le formulaire.
avec sur clic:
1 2 3 4 5
| Private Sub Commande17_Click()
Me.Requery
End Sub |
Voici mon problèmes. Quand je sélectionne la marque du mobile, j'ai bien les modèles qui se mettent à jour dans zl_modele. Et quand je sélectionne le modèles mon sous formulaire se met bien à jour mais avec une ligne vide qui se rajoute et qui figure dans la table mobile.
Comment éviter que cette ligne ce créer quand on quitte le formulaire lorsque on ne rentre pas d'imei et sauvegarde quand on rentre l'imei.
quand l'imei et déjà rentré j'ai une erreur qui s'affiche "erreur 3022". Comment faire pour ne pas avoir cette erreur.
je vous remercie par avance pour cette aide précieuse.
Partager