spamito
Messages postés183Date d'inscriptionsamedi 24 mars 2007StatutMembreDernière intervention30 mars 2013
-
15 mai 2008 à 18:01
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 2018
-
15 mai 2008 à 23:58
Bonjour,
J'ai mis en place un code qui permettra à sauvegarder mes informations dans une table, le voici :
Public Sub enregistrer()
Set cn = New Connection
cn.Open "File Name=" & App.Path & "\connect.Udl"
s = "SELECT Agences.Code, Agences.Agence, Agences.Adresse, Agences.cp, Villes.Code, Pays.Cpays, Agences.Tel, Agences.Fax, Agences.Email, Agences.heure_o, Agences.heure_f"s s + " FROM Villes INNER JOIN (Pays INNER JOIN Agences ON Pays.Cpays Agences.Pays) ON Villes.Code = Agences.Ville;"
Set rs = New Recordset
rs.CursorLocation = adUseClient
rs.Open s, cn, adOpenDynamic, adLockOptimistic
k = MsgBox("Désirez-vous sauvegarder cet enregistrement ?", vbYesNo, "INFORMATION")
If k = 6 Then
rs.AddNew
rs.Fields(1) = agence
rs.Fields(2) = adresse
rs.Fields(3) = cp
rs.Fields(4) = ville
rs.Fields(5) = pays
rs.Fields(6) = tel
rs.Fields(7) = fax
rs.Fields(8) = email
rs.Fields(9) = heureo
rs.Fields(10) = heuref
rs.Update
rs.Requery
MsgBox "Enregistrement effectué avec succès", vbInformation, "OPERATION EFFECTUEE"
cn.Close
End If
End Sub
Quand j'exécute l'opération de sauvegarde, je reçoie le bug suivant :
Une opération en plusieurs étapes a généré des erreurs. Vérifier chaque valeur d'état.
Je pense que l'erreur provient du code SQL. Mais j'ai essayé de rectifier cette erreur à plusieurs reprises mais sans résultats.
Aidez moi SVP et merci.
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 15 mai 2008 à 23:58
Sur quele ligne reçois-tu le message ?
sur la ligne de requête ?
Je n'utilise jamais les Join... j'essaierais donc comme suit
s = "SELECT Agences.Code, Agences.Agence,
Agences.Adresse, Agences.cp, Villes.Code, Pays.Cpays, Agences.Tel,
Agences.Fax, Agences.Email, Agences.heure_o, Agences.heure_f"
s = s & " FROM Villes, Agences, Pays"s s & " Where Pays.Cpays Agences.Pays AND Villes.Code = Agences.Ville"
Autrement, avant de faire une modification ou autre, je vérifierais que rs contient bien quelque chose. Soit avec RecordCount, soit avec BOF et EOF
MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI