ouvrir boite de dialogue 'windows explorer'

  • Initiateur de la discussion Initiateur de la discussion bcesoll
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

B

bcesoll

Guest
bonjour,

j'ai besoin dans une macro d'ouvrir un fichier excel mais son emplacement n'étant pas fixe dans 'windows explorer' je dois ouvrir une boite de dialogue m'invitant à localiser le fichier sous c:\ et me retourner son emplacement (ex : c:\repertoire\sous_repertoire\fichier.xls) que j'appellerai CHEMIN

quelle est la procédure

merci
 
Re : ouvrir boite de dialogue 'windows explorer'

Bonjour,
Le forum m'a aidé sur le même projet. Voici le code qui en résulte et qui fonctionne:
Sub Explorateur_fichier()

Application.CutCopyMode = False
Dim Fichier
Dim Nom_fichier
Dim Niveau
Dim Choix
Dim sPath$
Dim Chemin
Choix = Range("P1").Value
'Crée une boite de dialogue de sélection de fichiers :
With Application.FileDialog(msoFileDialogFilePicker)
.InitialFileName = Range("D10").Value
'Else
'.InitialFileName = Range("D15").Value
'End If
.Show
If .SelectedItems.Count > 0 Then
sPath = .SelectedItems(1)
'Trouver le niveau de sous dossier ou se trouve le fichier
Niveau = (UBound(Split(sPath, "\")))
'Récupérer la chaine de caractère (nom du fichier) du niveau trouvé
Fichier = Split(sPath, "\")(Niveau)
'Renseigner les zones suivant le choix
Range("D12") = Fichier
Range("D10") = Left(sPath, Len(sPath) - Len(Fichier))
Set fd = Nothing
End If
End With
End Sub

Cordialement

Edit: Bonjour Pierrejean.
 
Re : ouvrir boite de dialogue 'windows explorer'

La même version nettoyée du superflu...
Application.CutCopyMode = False
Dim Fichier
Dim Nom_fichier
Dim Niveau
Dim sPath$
Dim Chemin
'Crée une boite de dialogue de sélection de fichiers :
With Application.FileDialog(msoFileDialogFilePicker)
.Show
If .SelectedItems.Count > 0 Then
sPath = .SelectedItems(1)
'Trouver le niveau de sous dossier ou se trouve le fichier
Niveau = (UBound(Split(sPath, "\")))
'Récupérer la chaine de caractère (nom du fichier) du niveau trouvé
Fichier = Split(sPath, "\")(Niveau)
'Renseigner les zones suivant le choix
Range("D12") = Fichier
Range("D10") = Left(sPath, Len(sPath) - Len(Fichier))
Set fd = Nothing
End If
End With
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
37
Affichages
1 K
E
  • Question Question
Réponses
6
Affichages
1 K
ebenezerkonan
E
Y
Réponses
3
Affichages
951
Yamafx
Y
Retour