VBA-Excel Erreur dans syntaxe requete en utilisant ADO
Bonjour à tous.
Je fais des requêtes sur une feuille excel en utilisant ADODB (version 2.7)
Voici mon code
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
Private Sub txtBoxNomClt_Change()
Dim cn As ADODB.Connection
Set cn = New ADODB.Connection
With cn
.Provider = "MSDASQL"
.ConnectionString = "Driver={Microsoft Excel Driver" & _
"(*.xls)};DBQ=C:\datab.xls;"
.Open
End With
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
rs.Open "SELECT * FROM [data$]", cn
.......
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
End Sub |
Le problème c'est que quand j'utilise * dans la requête, tout fonctionne.
Seulement quand je donne un nom de champs dans ma requête, j'ai une erreur à l'exécution (erreur automation)
Requête qui marche = "SELECT * FROM [base$]"
Requête qui ne marche pas = "SELECT RSCLTL FROM [base$] WHERE RSCLTL Like 'A%' "
J' ai besoin d'aide car je pense que le problème viens de la syntaxe de mes nom de champs et j'ai tout essayé (les `RSCLTL` / [RSCLTL] ...) Mais rien n'y fait.
Pour résumr : Au secours !!