[access] ajout d'enregistrement requete

fl0 Messages postés 357 Date d'inscription   Statut Membre Dernière intervention   -  
 Apprenti -
salut a tous

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

8 réponses

blux Messages postés 27121 Date d'inscription   Statut Modérateur Dernière intervention   3 359
 
Salut,

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 Sub
Ca te fait pas de vilains messages d'ajout (comme ça, tu peux les gérer toi-même...)
5
fl0 Messages postés 357 Date d'inscription   Statut Membre Dernière intervention   209
 
Merci Blux g choisi la methode bourin ca marche comme il faut
merci de ton aide
1
fl0 Messages postés 357 Date d'inscription   Statut Membre Dernière intervention   209
 
salut

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)
0
blux Messages postés 27121 Date d'inscription   Statut Modérateur Dernière intervention   3 359
 
Soit il te manque une référence à DAO (menu outils/références dans la fenêtre de code, cocher les 'manquantes'), soit tu ne mets pas de type à matable (Dim MaTable), ça devrait passer, mais c'est plus bourrin !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
blux Messages postés 27121 Date d'inscription   Statut Modérateur Dernière intervention   3 359
 
Regarde quand même les histoires de références, un jour ou l'autre, tu vas tomber dessus sans contournement possible...
0
fl0 Messages postés 357 Date d'inscription   Statut Membre Dernière intervention   209
 
oui je m'en suis deja servi mais depuis le debut je ne declare aucune variables je c que ce n'est pas bien mais vu que je ne voi pas la difference
en tout cas merci de tes conseils
0
blux Messages postés 27121 Date d'inscription   Statut Modérateur Dernière intervention   3 359
 
Ca prend (beaucoup) plus de place en mémoire, c'est pas (trop) bien géré, pis c'est pas beau...
0
fl0 Messages postés 357 Date d'inscription   Statut Membre Dernière intervention   209
 
meme operation mais pour supprimé un enregistrement
0
blux Messages postés 27121 Date d'inscription   Statut Modérateur Dernière intervention   3 359
 
.delete après avoir trouvé le bon record en parcourant le recordset avec .movenext ou un positionnement par index...
0
fl0 Messages postés 357 Date d'inscription   Statut Membre Dernière intervention   209
 
salut et merci de ton aide

en fait ce qu'il faut que je fasse c'est la meme chose que pour ajouter maisa la place de .addnew il faut que je mette .delete
c'est ca
0
blux Messages postés 27121 Date d'inscription   Statut Modérateur Dernière intervention   3 359
 
Faut quand même se placer sur le record à supprimer...
0
adelzeg Messages postés 1 Date d'inscription   Statut Membre Dernière intervention  
 
bonjour,

j ai un probleme avec ACCESS. en faite j ai une table avec des codepart identiques pour des dates différentes.
Je voudrais sélectionner pour chaque codepart la derniere date.

c urgent svp
-4
blux Messages postés 27121 Date d'inscription   Statut Modérateur Dernière intervention   3 359
 
Salut,

merci de créer un nouveau message, celui-ci étant hors sujet pour ce post...
0
Apprenti
 
Bonjour,
Voulez-vous m'aider à ajouter des enregistrements sur ma base de données !
-6