Ouverture d'un dossier pour sélection manuelle d'un fichier

Résolu/Fermé
geo3701 Messages postés 58 Date d'inscription mardi 16 avril 2013 Statut Membre Dernière intervention 8 août 2017 - 2 juil. 2014 à 09:37
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 - 2 juil. 2014 à 13:52
Bonjour,

Voilà, je souhaite faire une macro qui ouvre un dossier et où je n'aurai plus qu'à sélectionner manuellement (et c'est nécessaire dans ma manip') le fichier Excel à ouvrir.

J'ai essayé avec le ChDir, mais ça n'a pas l'air d'être sa fonction.

Avez-vous une idée?

Merci d'avance

A voir également:

4 réponses

Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
2 juil. 2014 à 12:01
Bonjour,

En utilisant :
Application.GetOpenFilename 


Voir ici pour plus d'informations
0
geo3701 Messages postés 58 Date d'inscription mardi 16 avril 2013 Statut Membre Dernière intervention 8 août 2017 1
2 juil. 2014 à 13:38
Merci,

Mais cela ne fonctionne pas, alors surement que je me débrouille mal.


public chemin as string

chemin = "monchemin"

chemin = Application.GetOpenFilename

et cela ne m'ouvre pas le dossier chemin..
0
geo3701 Messages postés 58 Date d'inscription mardi 16 avril 2013 Statut Membre Dernière intervention 8 août 2017 1
2 juil. 2014 à 13:49
J'ai trouvé

Public fld As FileDialog

Set fld = Application.FileDialog(msoFileDialogOpen)
With fld
.InitialFileName = "monchemin"
.Show
End With
monfichier= fld.SelectedItems(1)
Workbooks.Open Filename:=monfichier

Et ça fonctionne.
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
Modifié par Polux31 le 2/07/2014 à 13:52
Pour ouvrir sur un dossier particulier il faut mettre avant le ChDir !!!

Dim monFichier As Variant

ChDir "C:\CCM"
monFichier = Application.GetOpenFilename("(*.xls),*.xls")



«Ce que l'on conçoit bien s'énonce clairement, Et les mots pour le dire arrivent aisément.»
Nicolas Boileau
0