Bonjour,

Voilà, j'ai creer une requete en SQL puis je l'ai adapter pour qu'excel me creer une requête parametrable suivant le Nom de la personne.

Je sais qu'il y a des expression comme le nombre 30 ici qui doit être prit comme un nombre et non comme une chaine de caractère. C'est pourquoi je concaténe ma requête de cette façon. Cependant je ne connais pas tous les termes à changer pour que ma requête s'execute.

Nom est une variable prenant comme valeur : "Prénom NOM"

Je dois mettre un triple " pour que VB comprenne que je veut qu'il y ai des guillemets dans ma chaine de caractère (les deux premiers) et un troisième pour dire la chaine de caractère se stop ici et on met notre variable.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
'Création de la requête SQL
rq_sql = "SELECT Sum([poids].[poids]) AS [DC <= 30j] FROM fusion INNER JOIN (poids INNER JOIN transposeur ON poids.[Table des opérateurs] = transposeur.Opérateur) ON fusion.Article = transposeur.[Dés Article Commercial/saisi] WHERE (((fusion.RAI)=""" & Nom & """) AND ((fusion.Terminée) Is Null) AND ((Date()-[fusion].[Date contractuelle])<=" & 30 & "));"
Dim rst As New ADODB.Recordset
    
rst.Open rq_sql, cnx

rst.MoveFirst
dcinf30j = CDbl(rst("DC <= 30j"))
rst.Close
Set rst = Nothing
Mon code se stop au niveau de la ligne en rouge, cependant j'ai collé avant execution la requête dans une cellule, et lorsque je la passe en dur dans access elle s'execute et me donne le bon résultat.

Pouvez vous me dire ce que je doit changer au niveau de mon code VB pour que ma requête SQL fonctionne svp ?

PS : Je pense que la connection avec la base n'est pas à remettre en cause puisque j'ai d'autres requêtes qui fonctionnent

Merci d'avance,
Skyarnangel