[access] ajout d'enregistrement requete
Apprenti -
voila ce que je veut faire
a partir d'un formulaire ou je remplit des champ textes (nom,prenom,service) lorseque j'appui sur un bouton ajout que ca me creéé un enregistrement dans ma table utilisateur
voila mon code
Sql = "INSERT INTO Utilisateurs ( Nom, Prenom, Service )"
Sql = Sql & " VALUES (""" & Form_ajout!txtnom & """, """ & Form_ajout!txtprenom & """, """ & Form_ajout!lstservice & """)"
DoCmd.DeleteObject acQuery, "confirmationajout"
CurrentDb.CreateQueryDef "confirmationajout", Sql
Set Qry = CurrentDb.QueryDefs("confirmationajout")
jusqu'ici ca marche bien
ca la creer et quand je lance la requete comfirmajout que j'ai creer si dessus ca me créé un enregistrement
Mais quand je veut la lancer automatiquement dans VBa
Set rs = Qry.OpenRecordset
Set Qry = Nothing
Set rs = Nothing
la il ni veut pas
croyez vous que cela vienne des messages d'access
genre "vous etes sur le point d'ajouter un enregistrement etes vous sur? "
Si oui dite moi comment les annulé
Merci a ceux qui m'on lu
et merci d'avance pour votre aide
Configuration: Windows XP Internet Explorer 6.0
- Requete d'ajout access
- Access appdata - Guide
- Demande d'ajout snap qui disparait ✓ - Forum Snapchat
- Ajout rapide snap - Forum Snapchat
- Demande d'amis SNAPCHAT - Forum Snapchat
- Ajout snap sans rien d'écrit - Forum Snapchat
8 réponses
L’enjeu est d’ajouter un enregistrement dans la table Utilisateurs à partir d’un formulaire sans déclencher les messages d’alerte d’Access, en privilégiant une approche DAO qui gère les erreurs en interne. La solution recommandée emploie un recordset DAO via CurrentDb.OpenRecordset sur Utilisateurs, puis AddNew et Update pour insérer les champs Nom, Prenom et Service issus du formulaire, en gérant les erreurs sans les boîtes de dialogue. Des précautions incluent la fermeture du recordset et la gestion des erreurs, afin d’éviter les messages et de garantir l’intégrité des données, tout en assurant une reprise propre après ajout.
il y a beaucoup mieux pour ajouter un record.
Dim MaTable as RecordSet
Set MaTable = CurrentDb.OpenRecordset("Utiisateurs", dbOpenDynaset)
On Error Resume Next
With MaTable
.AddNew
!Nom = Form_ajout!txtnom
!Prenom = Form_ajout!txtprenom
!Service = Form_ajout!lstservice
.Update
.Requery
End With
If Err.Number <> 0 Then
MsgBox Err.Description, , Err.Number
GoTo Fin:
End If
MaTable.Close
Set MaTable = Nothing
Fin:
End SubCa te fait pas de vilains messages d'ajout (comme ça, tu peux les gérer toi-même...)
Merci c'est cool mais il y a un petit probleme il me dit qu'il y a une incompatibilité de type et il me surligne cette ligne
Set MaTable = CurrentDb.OpenRecordset("Utilisateurs", dbOpenDynaset)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionen tout cas merci de tes conseils