Bonjour!

Je souhaite importer une feuille Excel de mon choix sous Access, en la mettant sous forme de table. Je choisis d'abord une feuille Excel dans une liste déroulante (noms mis manuellement dans la liste) Cette importation se fait par un clic sur un bouton:

- ouverture d'une boite de dialogue
- recherche manuelle du fichier xls
- puis importation auto de la feuille (choisie auparavant dans la liste déroulante)

Seulement, par exemple, lorsque je choisis "Societes2006" dans la liste déroulante et que j'actionne le bouton, j'ai le message suivant,après sélection du fichier dans la boite de dialogue:

"Erreur d'exécution '3011':
Le moteur de base de données Microsoft Jet n'a pas pu trouver l'objet 'Societes2006'. Assurez-vous que l'objet existe et que vous avez correctement saisi son nom est son chemin d'accès."


Pour l'importation, j'utilise:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
LaunchCD = Trim(Left(OpenFile.lpstrFile, InStr(1, OpenFile.lpstrFile, vbNullChar) - 1))
 
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, nt, LaunchCD, True, nf
nt => désigne le nom de la table de sortie
nf => désigne le nom de la feuille à importer
LaunchCD => désigne le nom du fichier

Le code précédent est contenu dans une fonction, appelée LaunchCD (...) . "nt" et "nf" sont déclarés en string, par un byref.

Le tout est retourné dans la procédure du bouton:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Me!Résultat = LaunchCD(Me, NomTable, NomFeuille)
NomTable (déclaré en string) => fait référence à nt
NomFeuille (déclaré en string) => fait référence à nf

Merci de m'aider...j'en ai vraiment besoin. c'est dans le cadre de mon stage.
Si vous voulez, je peux vous envoyer mon code entier, ça vous aidera mieux.