Problème VBA + Procedure sql server

Fermé
Toti - Modifié par jordane45 le 25/06/2016 à 14:26
jordane45 Messages postés 38149 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 avril 2024 - 25 juin 2016 à 14:33
Bonjour,
j'essaye d’exécuter une procédure sql qerver à partir de excel VBA, j'ai inserer un bouton commande dans excel pour exécuter la procédure mais il m'affiche l'erreur suivante " erreur d’exécution '9' : l'indice n'appartient pas a la sélection. "
Pouvez vous m'aider c'est urgent.
ci dessous mon code VBA :

Private Sub Test_Click()
Dim requete As String

requete = "" _
& "execute FINAN.dbo.BUDVBA '" & 20160331 & "' "

connstring = "ODBC;DRIVER=SQL Server;SERVER=xx.xxxx.xx.xx\xxxxxxx;UID=xxxxxx;PWD=xxxxxxx"


ActiveSheet.QueryTables(1).Connection = connstring
ActiveSheet.QueryTables(1).CommandText = requete


ActiveSheet.QueryTables(1).Refresh BackgroundQuery:=False
End Sub



EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.




A voir également:

1 réponse

jordane45 Messages postés 38149 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 avril 2024 4 651
25 juin 2016 à 14:33
Bonjour,

il te met l'erreur sur la/les lignes
ActiveSheet.QueryTables(1).Connection = connstring
ActiveSheet.QueryTables(1).CommandText = requete

Es-tu sûr d'avoir une QueryTable dans la feuille active ?

Sinon tu n'as qu'a en créer une nouvelle via :
.QueryTables.Add(Connection:=connstring, Destination:=Range("A1"), Sql:=requete)



Ou sur la ligne :
requete = "" _
& "execute FINAN.dbo.BUDVBA '" & 20160331 & "' "

Et d'où vient cette serie de chiffres .... placée entre & & .....
Il vaudrait mieux écrire :
requete =  "execute FINAN.dbo.BUDVBA '20160331' "


0