XL 2010 [RESOLU] Chemin et nom fichier sans extension dans variables

cp4

XLDnaute Impliqué
Bonjour:),

J'ai récupéré ce bout de code sur developpez.com.
VB:
Option Explicit

Sub ChoixFichier()
    'La variable est de type Variant car elle peut prendre les valeurs:
        'Booleenne: (Vrai/Faux) quand l'utilisateur ne sélectionne rien, ou annule l'opération.
        'String: pour renvoyer le nom du fichier sélectionné.
    Dim Fichier As Variant

    'Affiche la boîte de dialogue "Ouvrir"
    'Tous les fichiers
'   Fichier = Application.GetOpenFilename("Tous les fichiers (*.*),*.*")
   
    'On sort si aucun fichier n'a été sélectionné ou si l'utilisateur
    'a cliqué sur le bouton "Annuler", ou sur la croix de fermeture.
    If Fichier = False Then Exit Sub

    'Affiche le chemin et le nom du fichier sélectionné.
    MsgBox Fichier 'chemin+fichier avec extension
    MsgBox Dir(Fichier) 'nom fichier avec extension'

End Sub
Mes recherches ont été infructueuses pour récupérer dans une variable le chemin du fichier sans le nom du fichier et dans une autre variable le nom du fichier sans extension. En effet, la longueur du nom du fichier est variable ainsi que l'extension de ce dernier ( .xls ou xlsx). Avec la fonction Dir, je récupère le nom du fichier avec son extension.
Merci pour votre aide pour solutionner mon problème.
 

cp4

XLDnaute Impliqué
Rebonjour ;),

Je reviens vers vous car mon bonheur n’est pas complet avec les propositions du lien.
J’explique les tenants et aboutissants de ma démarche :
à partir de mon fichier, j’ouvre la boîte de de dialogue ‘’OUVRIR ‘’ d’Excel, je sélectionne un fichier.
Je voudrais donc récupérer des variables :
  • Le chemin du fichier sélectionné
  • Son nom sans l’extension
Dans le code joint au post#1 MsgBox Fichier me renvoie le chemin complet du fichier sélectionné à ouvrir (nom du fichier inclus avec l’extension).
En utilisant la proposition de David84 utilisant la méthode GetBaseName de l'objet FileSystemObject, j’arrive à récupérer le nom du fichier sans extension.
Comment récupérer juste le chemin du fichier ? C’est ce que je n’arrive pas à obtenir (pas d'idée à exploiter).
Merci à vous pour votre précieuse aide.
 

Fichiers joints

sylvanu

XLDnaute Accro
Supporter XLD
Re,
Essayez ça :
VB:
Sub ChercheChemin()
Dim Chemin, fich, i
Chemin = "G:\Users\PC_PAPA\Documents\_SYLVAIN\Technique\Excel\Essai.xlsm"
i = InStr(1, StrReverse(Chemin), "\", vbTextCompare)
   If i <> 0 Then
      fich = Left(Chemin, Len(Chemin) - i)  ' rajouter & "\" ou non suivant besoin
   End If
End Sub
fich contient le chemin ( rajoutez à la fin & "\" siuvant votre besoin.
 
  • J'aime
Reactions: cp4

cp4

XLDnaute Impliqué
Re,
Essayez ça :
VB:
Sub ChercheChemin()
Dim Chemin, fich, i
Chemin = "G:\Users\PC_PAPA\Documents\_SYLVAIN\Technique\Excel\Essai.xlsm"
i = InStr(1, StrReverse(Chemin), "\", vbTextCompare)
   If i <> 0 Then
      fich = Left(Chemin, Len(Chemin) - i)  ' rajouter & "\" ou non suivant besoin
   End If
End Sub
fich contient le chemin ( rajoutez à la fin & "\" siuvant votre besoin.
C'est parfait:cool::cool::cool:. Merci beaucoup pour ton aide, ça va me permettre d'avancer.

Encore merci.;);):cool:
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas