Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/11/2011, 16h48   #1
Invité de passage
 
Inscription : août 2002
Messages : 31
Détails du profil
Informations forums :
Inscription : août 2002
Messages : 31
Points : 3
Points : 3
Envoyer un message via MSN à antezi Envoyer un message via Yahoo à antezi
Par défaut Modification enregistrement d'une table à partir d'un formulaire

Bonjour,

J'ai une table "Membres" comprenant les données des membres. J'ai fait une requête qui me permet d'avoir l'enregistrement d'un membre à modifier. Mon formulaire de modification est basé sur cette requête, car après avoir saisir le nom du membre à modifier dans la requête, mon formulaire s'ouvre automatiquement avec les champs remplis de l'enregistrement à modifier.
Jusque là tout va bien!

Le problème c'est que j'ai fait un code vba basé sur l’événement "sur clic" du formulaire pour confirmer les informations modifiées et fermer le formulaire.
Voici ce code:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Private Sub Commande23_Click()

Dim t As Recordset
Set db = CurrentDb
Set t = db.OpenRecordset("Membres", DB_OPEN_DYNASET)
t.AddNew

t(NumMembre) = Me.NumMembre
t(Nom) = Me.Nom
t(Prenom) = Me.Prenom
t(Rue) = Me.Rue
t(NumeroRue) = Me.NumeroRue
t(CodePostal) = Me.CodePostal
t(Ville) = Me.Ville
t(Pays) = Me.Pays
t.Update

End Sub
Quand je clique sur "confirmer la modification" qui est un bouton de commande, il me donne les erreurs suivantes:

Erreur d'exécution 13
Incompatibilité de type


Et quand je clique sur déboguage, je trouve qu'il a marqué en rouge dans le code ceci
Code :
1
2
Set db = CurrentDb
Set t = db.OpenRecordset("Membres", DB_OPEN_DYNASET)
Quelqu'un peut m'aider à corriger ce code?
Merci d'avance
Antezi
antezi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/11/2011, 18h07   #2
Membre confirmé
 
Avatar de lelensois16
 
Homme Romain M.
Étudiant
Inscription : avril 2009
Messages : 167
Détails du profil
Informations personnelles :
Nom : Homme Romain M.
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Étudiant
Secteur : Conseil

Informations forums :
Inscription : avril 2009
Messages : 167
Points : 204
Points : 204
Bonjour,

Une autre manière de répondre aux besoins , passer par une requête d'action avec INSERT INTO


Code :
1
2
3
4
5
6
 
Dim SQL as String 
SQL = " INSERT INTO MEMBRES ( ... ) VALUES ( ... ) "
DoCmd.SetWarnings = False
DoCmd.RunSQL SQL 
DoCmd.SetWarnings = True
Après je suppose que vous avez déja vérifié que le numéro n'existe pas dans la table de départ ( pas de doublons ! )

Cdt
RM
lelensois16 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h47.


 
 
 
 
Partenaires

Hébergement Web