Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3058 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Requête SQL sans résultat en VBA (ADO)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Requête SQL sans résultat en VBA (ADO)

n°2106728
Peanuty
Posté le 17-10-2011 à 15:11:30  profilanswer
 

Salut,
 
j'ai un bête (?) code VBA qui effectue une requête en base.
Quand j'exécute le SELECT avec SQL Server j'ai bien un résultat, en revanche en VBA/ADO sous Excel, j'ai "<3021, BOF ou EOF est égal à True ou l'enregistrement actuel a été supprimé. L'opération demandée nécessite un enregistrement actuel.>" si j'essaye de lire le résultat.

Code :
  1. Dim cnn As New ADODB.Connection
  2. cnn.Open "PROVIDER=SQLOLEDB;DATA SOURCE=" & bd & ";User ID= " & login & ";Password=" & mdp & ";Trusted_Connection=False"
  3.     req_gr_id = "select GRP_ID from GROUPE where GRP_NOM = '" & entity & "'"
  4.     Dim rs As New ADODB.Recordset
  5.     If rs.State <> adStateClosed Then rs.Close
  6.     rs.ActiveConnection = cnn
  7.     rs.Open req_gr_id, cnn
  8.     'rs.MoveFirst
  9.     GrPeres = rs(0)
  10.     rs.Close


D'ailleurs rs.RecordCount = -1 après exécution de cette requête.  
 
 :??:

mood
Publicité
Posté le 17-10-2011 à 15:11:30  profilanswer
 

n°2106744
Peanuty
Posté le 17-10-2011 à 16:10:46  profilanswer
 

J'ai essayé avec une autre requête, sur une autre table et une autre base, même erreur.
 
A noter que j'arrive dans le même programme, à appeler des procédures stockées sans problème (avec des cmd.Execute à la place des Recordset bien sûr).
 
J'ai essayé de replacer le Recordset par cmd.Execute du coup :

Code :
  1. With cmd
  2.         .ActiveConnection = cnn
  3.         .CommandType = adCmdText
  4.         .CommandText = "select GRP_ID from GROUPE where GRP_NOM ='" & entity & "'"
  5.         .Execute
  6.                
  7.         GrPeres = .Parameters(0).Value
  8.    End With


mais c'est pareil : 0 résultat, alors que si je fais un copier-coller du .CommandText pour l'exécuter dans SQLServer ça marche !
 
Donc je suppose que ce n'est pas un problème au niveau de la requête elle-même mais plutôt au niveau des paramètres de la connexion ??? :cry:
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Requête SQL sans résultat en VBA (ADO)

 

Sujets relatifs
Recuperer resultat d'un select dans un tableauGestion de document Word via macro VBA excel
Calculer la différence entre deux dates (VBA)Toute petite macro VBA pour enregistrement
Help Me !! VBA 2007 impression et ouverture automatique de PDFRequête Firebird qui passe pas
optimisation: affichage de photos : readdir ou requete sql ?Probléme commande SQL sous access
[VBA-Excel] Protéger une partie de la feuille par Macro 
Plus de sujets relatifs à : Requête SQL sans résultat en VBA (ADO)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR