Microsoft 365 problème avec un requête MySQL

  • Initiateur de la discussion Initiateur de la discussion José77
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

José77

XLDnaute Occasionnel
Bonjour à tous,
Voilà le problème. Ce code fonctionne très bien, mais ....
Dim chemin As String
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset

'Valeur du chemin
chemin = ThisWorkbook.Path

'Créer une nouvelle connexion
Set cn = New ADODB.Connection

'Définir les propriétés de connexion
cn.Provider = "Microsoft.ACE.OLEDB.12.0"
cn.ConnectionString = "Data Source =" & chemin & "\Adherents.accdb"
cn.Open
Set rs = New ADODB.Recordset

rs.Open "SELECT distinct stock.Prod FROM stock ORDER BY stock.Prod", cn
UserForm1.listBox1.Column = rs.GetRows

Mais .... Lorsque je remplace la ligne rs.Open etc ..... par

rs.Open "SELECT stock.Prod, stock.* FROM stock WHERE stock.Prod=" & rech, cn

rech étant une valeur resultant d'un combobox j'otiens le message d'erreur suivant:
aucune valeur donnée pour un ou plusieurs paramètres requis

Si quelqu'un peut m'éclairer ce ne serait pas de refus, car depuis un bon moment je perds mon latin.
D'avance merci
José
 
Salut à tous,
"SELECT stock.Prod, stock.* FROM stock WHERE stock.Prod=" & rech
Vous voulez seulement Prod ou tous les champs de stock?
La requête ne comprend pas la demande, Prod étant inclus dans "*" .

Si on se re ferre à la requête initiale, je pense que la bonne modif est :
SQL:
rs.Open "SELECT distinct Prod FROM stock WHERE Prod=" & rech, cn
 
Bonjour,
Je vois bien une base Access mais pas de MySQL, j'imagine qu'il s'agit d'une table liée !

De quel type est stock.Prod ?
Si c'est du texte, il faut écrire
Code:
"SELECT * FROM stock WHERE stock.Prod='" & rech & "'", cn
Bonjour,
Je vois bien une base Access mais pas de MySQL, j'imagine qu'il s'agit d'une table liée !

De quel type est stock.Prod ?
Si c'est du texte, il faut écrire
Code:
"SELECT * FROM stock WHERE stock.Prod='" & rech & "'", cn

Bonjour,
Je vois bien une base Access mais pas de MySQL, j'imagine qu'il s'agit d'une table liée !

De quel type est stock.Prod ?
Si c'est du texte, il faut écrire
Code:
"SELECT * FROM stock WHERE stock.Prod='" & rech & "'", cn
Encore une fois merci beaucoup. Le problème venait des apostrophes que je ne savait pas mettre en place.
 
Bonjour a tous,

Pourquoi employer VBA alors que Query existe?

j'ai retrouvé
Code:
let
    StartDate=DateBegin,
    EndDate=DateEnd,
    Source = Sql.Database("this-is-the-database-url.com", "TableNameHere",
    [Query="SELECT * FROM [TableNameHere].[dbo].[Logs] WHERE CreatedTime >='" &StartDate& "' AND CreatedTime <='" &EndDate& "' ",
    CommandTimeout=#duration(0, 0, 10, 0), HierarchicalNavigation=true, MultiSubnetFailover=true])
in
    Source

ici

Au plaisir,

Merinos
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
15
Affichages
3 K
Réponses
8
Affichages
11 K
Retour