problème d'exécution d'une requete ADODB
Bonjour,
Je dois créer un classeur Excel qui automatisera une tâche.
Pour le moment j'ai réussi à coder ceci, en prenant ici où là des infos.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
| Dim ODBC_Cmd As ADODB.Command
Dim ODBC_Cnx As ADODB.Connection
' Ouvrir la connexion la base
On Error GoTo NotOpen
Set ODBC_Cnx = New ADODB.Connection
Set ODBC_Cmd = New ADODB.Command
Dim Prm1 As ADODB.Parameter, Prm2 As ADODB.Parameter
'Dfinition de la chane de connexion
ODBC_Cnx.ConnectionString = "DSN=Base;UID=sa;PWD=Pass;"
'Ouverture de la base de donnes
ODBC_Cnx.Open
If ODBC_Cnx.State = adStateOpen Then
MsgBox "connexion russie"
' Prparer l'objet Commande
On Error GoTo ErrCmd
ODBC_Cmd.ActiveConnection = ODBC_Cnx
ODBC_Cmd.CommandType = adCmdStoredProc
ODBC_Cmd.CommandText = "sp_Recod_Article"
Set Prm1 = ODBC_Cmd.CreateParameter("@AncCodeArticle", adChar, adParamInput, 50)
Set Prm2 = ODBC_Cmd.CreateParameter("@NouvCodeArticle", adChar, adParamInput, 50)
ODBC_Cmd.Parameters.Append Prm1
Prm1.Value = "02ETI3947"
ODBC_Cmd.Parameters.Append Prm2
Prm2.Value = "ZZ02ETI3947"
' Excuter la commande
ODBC_Cmd.Execute
End If
GoTo EndSub
NotOpen:
MsgBox "Connexion la base errone", ODBC_Cnx.ConnectionString
GoTo EndSub
ErrCmd:
MsgBox "Commande non exécutée"
EndSub:
ODBC_Cnx.Close
Set ODBC_Cmd = Nothing
Set ODBC_Cnx = Nothing |
Pour le moment, l'ancien et le nouveau code est fixe mais plus tard, il faudra que je parcours une feuille Excel.
Mon but est de faire appel à une procédure stockée appelée "sp_Recod_Article" en sachant que cette procèdure accepte deux entrées, l'ancien et le nouveau code.
Le souci c'est qu'il m'affiche le message d'erreur "commande non exécuté" et je ne comprends pas d'où peut provenir l'erreur.
Merci de votre aide