Je récupère par Application.GetOpenFilename une chaîne sous la forme c:\mon
chemin\mon fichier.xxx
Je voudrais séparer le chemin du nom de fichier et je ne trouve rien dans
l'aide d'Excel à ce sujet... Avant de me lancer dans la méga fonction
compliquée, j'aimerais savoir si VBA propose ce genre de fonctions ou pas.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
NoMail
Bonjour Christophe Cerbourg , Le 20/04/2004 14:20 :
Bonjour,
Je récupère par Application.GetOpenFilename une chaîne sous la forme c:mon cheminmon fichier.xxx
Je voudrais séparer le chemin du nom de fichier et je ne trouve rien dans l'aide d'Excel à ce sujet... Avant de me lancer dans la méga fonction compliquée, j'aimerais savoir si VBA propose ce genre de fonctions ou pas.
Merci pour votre aide !
un oeil par ici :
http://ericrenaud.free.fr/droitefichiers.htm
Cas d'utilisation Par exemple si vous faites une lecture/écriture (via Open FileName For Input As #1) d'un fichier sélectionné par GetOpenFilename pour inscrire les enregistrements dans un nouveau classeur (via Workbooks.Add template:=xlWorksheet), vous n'avez à aucun moment réellement ouvert ce fichier mais vous voulez en connaître le nom pour le donner à votre classeur actif.
Public NameSansExtension As String Sub SelectionFichier() Dim LongFilename As String LongFilename = Application.GetOpenFilename("Text Files (*.txt), *.txt") ShortFilename (LongFilename) MsgBox "Le nom sans extension du fichier est : " & NameSansExtension End Sub
Function ShortFilename(LongFilename As String) As String For i = Len(LongFilename) To 1 Step -1 If Mid(LongFilename, i, 1) = "" Then Exit For Next ShortFilename = Mid(LongFilename, i + 1, Len(LongFilename)) NameSansExtension = Mid(ShortFilename, 1, Len(ShortFilename) - 4) End Function
Bonjour Christophe Cerbourg , Le 20/04/2004 14:20 :
Bonjour,
Je récupère par Application.GetOpenFilename une chaîne sous la forme c:mon
cheminmon fichier.xxx
Je voudrais séparer le chemin du nom de fichier et je ne trouve rien dans
l'aide d'Excel à ce sujet... Avant de me lancer dans la méga fonction
compliquée, j'aimerais savoir si VBA propose ce genre de fonctions ou pas.
Merci pour votre aide !
un oeil par ici :
http://ericrenaud.free.fr/droitefichiers.htm
Cas d'utilisation
Par exemple si vous faites une lecture/écriture (via Open FileName For
Input As #1) d'un
fichier sélectionné par GetOpenFilename pour inscrire les
enregistrements dans un nouveau
classeur (via Workbooks.Add template:=xlWorksheet), vous n'avez à aucun
moment réellement
ouvert ce fichier mais vous voulez en connaître le nom pour le donner à
votre classeur actif.
Public NameSansExtension As String
Sub SelectionFichier()
Dim LongFilename As String
LongFilename = Application.GetOpenFilename("Text Files (*.txt),
*.txt")
ShortFilename (LongFilename)
MsgBox "Le nom sans extension du fichier est : " & NameSansExtension
End Sub
Function ShortFilename(LongFilename As String) As String
For i = Len(LongFilename) To 1 Step -1
If Mid(LongFilename, i, 1) = "" Then Exit For
Next
ShortFilename = Mid(LongFilename, i + 1, Len(LongFilename))
NameSansExtension = Mid(ShortFilename, 1, Len(ShortFilename) - 4)
End Function
Bonjour Christophe Cerbourg , Le 20/04/2004 14:20 :
Bonjour,
Je récupère par Application.GetOpenFilename une chaîne sous la forme c:mon cheminmon fichier.xxx
Je voudrais séparer le chemin du nom de fichier et je ne trouve rien dans l'aide d'Excel à ce sujet... Avant de me lancer dans la méga fonction compliquée, j'aimerais savoir si VBA propose ce genre de fonctions ou pas.
Merci pour votre aide !
un oeil par ici :
http://ericrenaud.free.fr/droitefichiers.htm
Cas d'utilisation Par exemple si vous faites une lecture/écriture (via Open FileName For Input As #1) d'un fichier sélectionné par GetOpenFilename pour inscrire les enregistrements dans un nouveau classeur (via Workbooks.Add template:=xlWorksheet), vous n'avez à aucun moment réellement ouvert ce fichier mais vous voulez en connaître le nom pour le donner à votre classeur actif.
Public NameSansExtension As String Sub SelectionFichier() Dim LongFilename As String LongFilename = Application.GetOpenFilename("Text Files (*.txt), *.txt") ShortFilename (LongFilename) MsgBox "Le nom sans extension du fichier est : " & NameSansExtension End Sub
Function ShortFilename(LongFilename As String) As String For i = Len(LongFilename) To 1 Step -1 If Mid(LongFilename, i, 1) = "" Then Exit For Next ShortFilename = Mid(LongFilename, i + 1, Len(LongFilename)) NameSansExtension = Mid(ShortFilename, 1, Len(ShortFilename) - 4) End Function
ru-th
Salut
Sub test() rep = Application.GetOpenFilename msgbox StrReverse(Mid(StrReverse(rep), 1, Application.Find("", StrReverse(rep)) - 1)) End Sub
a+ rural thierry "Christophe Cerbourg" a écrit dans le message de news:
Bonjour,
Je récupère par Application.GetOpenFilename une chaîne sous la forme c:mon
cheminmon fichier.xxx
Je voudrais séparer le chemin du nom de fichier et je ne trouve rien dans l'aide d'Excel à ce sujet... Avant de me lancer dans la méga fonction compliquée, j'aimerais savoir si VBA propose ce genre de fonctions ou pas.
Merci pour votre aide !
Salut
Sub test()
rep = Application.GetOpenFilename
msgbox StrReverse(Mid(StrReverse(rep), 1, Application.Find("",
StrReverse(rep)) - 1))
End Sub
a+
rural thierry
"Christophe Cerbourg" <someone@some.where> a écrit dans le message de news:
e0wNEGtJEHA.1132@TK2MSFTNGP12.phx.gbl...
Bonjour,
Je récupère par Application.GetOpenFilename une chaîne sous la forme
c:mon
cheminmon fichier.xxx
Je voudrais séparer le chemin du nom de fichier et je ne trouve rien dans
l'aide d'Excel à ce sujet... Avant de me lancer dans la méga fonction
compliquée, j'aimerais savoir si VBA propose ce genre de fonctions ou pas.
Sub test() rep = Application.GetOpenFilename msgbox StrReverse(Mid(StrReverse(rep), 1, Application.Find("", StrReverse(rep)) - 1)) End Sub
a+ rural thierry "Christophe Cerbourg" a écrit dans le message de news:
Bonjour,
Je récupère par Application.GetOpenFilename une chaîne sous la forme c:mon
cheminmon fichier.xxx
Je voudrais séparer le chemin du nom de fichier et je ne trouve rien dans l'aide d'Excel à ce sujet... Avant de me lancer dans la méga fonction compliquée, j'aimerais savoir si VBA propose ce genre de fonctions ou pas.