[Déplacé .Net --> VBA] Requete Update sous ACCESS VBA

kktd Messages postés 2 Date d'inscription lundi 2 novembre 2009 Statut Membre Dernière intervention 2 mars 2010 - 2 mars 2010 à 10:59
kktd Messages postés 2 Date d'inscription lundi 2 novembre 2009 Statut Membre Dernière intervention 2 mars 2010 - 2 mars 2010 à 14:33
Bonjour,

J'ai un souci avec mon code, je voudrais modifier ma base de donnée mais cela ne fonctionne pas.

voici mon code:

Dim StrSql As String
Dim Req As QueryDef

StrSql "UPDATE Porteur SET NomPorteur " & NomNewPorteur.Value & ", " _
& "PrenomPorteur = " & PrenomNewPorteur.Value & ", " _
& "NumEtablissement = " & EtablissementNewPorteur.Value & ", " _
& "Fonction = " & FonctionNewPorteur.Value & ", " _
& "Telephone = " & "'" & TelephoneNewPorteur.Value & "'" & ", " _
& "Email = " & "'" & MailNewPorteur.Value & "'" & " " _
& "WHERE NumPorteur =" & porteurSelectionPorteur.Value & ";"

MsgBox StrSql
Set Req = CurrentDb.CreateQueryDef("", StrSql)

Req.Execute dbFailOnError


et j'ai une erreur trop peu de paramètre, 3 attendu au niveau de Req.Execute dbFailOnError

Est ce que quelqu'un pourrait m indiquer mon erreur ?
Merci.

2 réponses

cs_Jack Messages postés 14007 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
2 mars 2010 à 12:32
Salut
Je pense que tu n'utilises pas le bon type d'objet.
Pour moi (*), QueryDef sert à définir une requète qui restera stockée dans ta base de données et à laquelle on accédera par le passage de paramètres.
(*) pas trop sûr
Si tu ne souhaites que lancer une demande d'Update, cela se fait directement sur la connexion :
Exemple : maConnexion.Execute "Update ..."

Cette syntaxe est aussi valable pour les Delete (SQL)

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
kktd Messages postés 2 Date d'inscription lundi 2 novembre 2009 Statut Membre Dernière intervention 2 mars 2010
2 mars 2010 à 14:33
Salut merci pour la reponse,

CurrentDb.Execute StrSql ne marche pas non plus

Mais je passe par un recordset pour faire les modification du coup.

++
0