Débutante dans ce langage, je souhaiterais ouvrir un fichier Excel via une macro sous Access afin de l'utiliser.
Je le cherche via un "BrowseForFolder". J'arrive très bien à récupérer l'emplacement s'il s'agit d'un dossier, en revanche s'il s'agit d'un fichier, j'obtient comme erreur
"La méthode 'ParseName' de l'objet 'Folder2' a échoué"
Voila mon code, en vous remerciant d'avance.
Code :
Public Function ouvrirFichier(nomFichier As String, descrFichier As String) As String
Dim objAppli, objFichier, objScript 'Déclaration des objets utilisés
viderTable ("Vrai_Doublons" )
'Utilisation du shell
Set objAppli = CreateObject("Shell.Application" )
'Ouverture de la boîte de dialogue pour sélectionner le fichier voulu
Set objFichier = objAppli.BrowseForFolder(&H0&, "Veuillez indiquer le chemin d'accès au fichier " & descrFichier & " à importer", &H4000& )
Pourquoi ne pas ouvrir le fichier directement depuis l'application Excel plutot que passer le shell.
Code :
Dim objExcel As Object 'Déclaration de l'application Excel
Dim objWorkBook As Object 'Déclaration du classeur Excel
Dim objFeuille As Object 'Déclaration de la feuille Excel
Dim sFile as variant ' récupération du nom du fichier
Set objExcel = createobject("Excel.Application" )
if not objExcel is nothing then
sFile = objExcel.getOpenFileName("" ) 'RTFM
if not sFile = False then
set objWorkbook = objExcel.workbooks.open(sfile) ' RTFM
... etc...
end if
end if
Après une fois que tu as ouvert le fichier Excel, tu peux utiliser la propriété Path du classeur ouvert.
Regardes bien l'aide des fonctions que j'utilise car j'ai pas tout compléter.
Bon courage.
---------------
S'il n'y a pas de solution c'est qu'il n'y pas de problème