[vba] erreur Micosoft Jet (importatoin de excel vers access)

cokinoumasterflash Messages postés 62 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 19 août 2005 - 11 juil. 2005 à 15:57
cokinoumasterflash Messages postés 62 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 19 août 2005 - 12 juil. 2005 à 12:12
Bonjour,


Je suis en train d'essayer d'importer un fichier excel vers access mais je rencontre un message d'erreur :


Le moteur de base de données Microsoft Jet n'a pas pu trouver l'objet 'SELECT type FROM ListePollens WHERE ([Taxon]=_Juniperus)'. Assurez vous que l'objet existe et que vous avez correctement saisi son nom et son chemin d'acces.

Mon erreur se situe à ce niveau dans mon code :
Dim xl As Excel.Application
Dim MySQL , typ As String
Dim rst As DAO.Recordset
.......
MySQL = "SELECT [type] FROM ListePollens WHERE ([Taxon]=" & xl.Cells(i, 1).Value & ")"
Set rst = CurrentDb.OpenRecordset(MySQL, dbOpenTable, dbReadOnly)
........

En fait je veut recupérer au fur et à mesure les valeurs (ie les noms de mes pollens) qui se trouvent dans la première colonne de mon tableau, puis de rechercher le type associer à ce nom dans ma table ListePollens.
Le premier nom se trouvant dans le tableau que je test est : _Juniperus
Or ce pollens se trouve bien dans ma table (avec exactement le même orthographe) mais le programme ne le reconnait pas.
J'ai essayé aussi de mettre à la place :
[Taxon]='" & xl.Cells(i,1).Value & "'
de remplacer dbOpenTable par dbOpenDynaset
mais j'ai toujours une erreur.


Est-ce que quelqu'un a une idée ?
Merci
Seb.

2 réponses

Molenn Messages postés 797 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 23 février 2011 7
12 juil. 2005 à 12:01
A vue de nez, si je ne dis pas de bêtise, ce que tu cherches est un format texte.
Je suppose donc que dans ta table, ce champ est aussi au format texte.
Dans la requête SQL, il faut donc que ce soir mis entre guillements.

MySQL = "SELECT [type] FROM ListePollens WHERE ([Taxon]=" & """" & xl.Cells(i, 1).Value & """" & ")"

Tu peux toujours essayer cette requête.
0
cokinoumasterflash Messages postés 62 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 19 août 2005 7
12 juil. 2005 à 12:12
J'ai mis beaucoup d'espoir dans cette solution mais ça n'a rien donné.

Je récupère bien le texte de ma première cellule mais en allant
chercher ce texte dans ma table il ne le trouve pas alors que c'est
exactement le même.



Seb.
0