extraire les caractères situés à droite du dernier slach dans le chemin d'un fichier

gilles72

XLDnaute Junior
bonjour,
dans le chemin d'un fichier il peut y avoir plusieurs slach
j'imerais extraire le nom du fichier, situé à droite du dernier
comment trouver la position de ce dernier et extraire les caractères à sa droite?
Merci de votre aide
gilles72
 

Staple1600

XLDnaute Barbatruc
Re : extraire les caractères situés à droite du dernier slach dans le chemin d'un fic

Bonsoir gilles72, le fil, le forum

gilles72
Tu as fait une recherche dans les archives du forum?
Car la réponse à ta question s'y trouve notamment avec split par exemple...

Msgbox Split("C:\ta\ti\to\tu\fichier.xls","\")(Ubound(Split("C:\ta\ti\to\tu\fichier.xls","\")))
:rolleyes:

EDITION1 :Bonsoir GrandChaman ;)
EDITION2: Bonsoir 00 ;)
 
Dernière édition:

Grand Chaman Excel

XLDnaute Impliqué
Re : extraire les caractères situés à droite du dernier slach dans le chemin d'un fic

Bonjour Gilles,

Deux exemples par VBA avec une fonction qui retourne le nom du fichier à droite du \ :

VB:
Function NomFichier(str As String) As String
Dim i As Integer

For i = Len(str) To 1 Step -1
        If Mid(str, i, 1) = "\" Then
            NomFichier = Mid(str, i + 1, Len(str) - i)
            Exit Function
        End If
Next i

End Function

ou encore

VB:
Function NomFichier2(str As String) As String
Dim Tabl
Tabl = Split(str, "\")
NomFichier2 = Tabl(UBound(Tabl))

End Function

A+


Edit : Bonsoir Staple... je suis en retard sur ce coup là...
 

gilles72

XLDnaute Junior
Re : extraire les caractères situés à droite du dernier slach dans le chemin d'un fic

Bonjour à vous
..et merci
non je n'ai pas fait de recherche,
ou plutot j'ai simplement parcouru les titres des post sur les 3 ou 4 premières pages...
Sinon
la formule matricielle trouvé dans le lien fourni par doublezéro est nickel
je vais tester le code de grand chaman
merci à vous
à+
gilles72
 

Staple1600

XLDnaute Barbatruc
Re : extraire les caractères situés à droite du dernier slach dans le chemin d'un fic

Bonjour gilles72, Grand Chaman, , le fil, le forum

gilles72
Et le mien de code tu l'as testé ? ;)

C'est vrai qu'il faut de bonne lunette pour le voir
(mais c'était l'heure de ma blague du jour quand je rédigeais mon premier message dans ton fil)

Je te le remets ici pour reposer tes yeux en ce bon matin frisquet
Code:
Msgbox Split("C:\ta\ti\to\tu\fichier.xls","\")(Ubound(Split("C:\ta\ti\to\tu\fichier.xls","\")))

PS: J'ai fait un léger edit sur mon premier message pour le rendre plus visible ;)
 
Dernière édition:

gilles72

XLDnaute Junior
Re : extraire les caractères situés à droite du dernier slach dans le chemin d'un fic

Bonjour JM
Excuse pour le retard à la réponse...
Oui ça marche nickel
merci
par contre je profite de l'occasion pour demander autre chose:
comment extraire ce qui se situe à gauche du slach et non plus à droite?
Merci
Gilles72
 

gilles72

XLDnaute Junior
Re : extraire les caractères situés à droite du dernier slach dans le chemin d'un fic

Bonjour doublezero
j'obtiens #VALEURS!
merci

là ça marche mais j'obtiens les caractères à gauche du premier slach
je souhaiterais ceux à gauche du dernier slach...
Merci
 
Dernière édition:

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : extraire les caractères situés à droite du dernier slach dans le chemin d'un fic

Bonjour

On veut le texte avant le dernier \

chaine1\chaine2\chaine3\chaine4\Asupprimer pour obtenir chaine1\chaine2\chaine3\chaine4

=GAUCHE(A1;NBCAR(A1)-EQUIV("\";STXT(A1;NBCAR(A1)-LIGNE($1:$255);1);0)-1)
-Valider avec Maj+ctrl+entrée

ou

=GAUCHE(A1;CHERCHE("|";SUBSTITUE(A1;"\";"|";NBCAR(A1)-NBCAR(SUBSTITUE(A1;"\";""))))-1)

JB
 

Pièces jointes

  • Classeur1.xls
    13.5 KB · Affichages: 60
  • Classeur1.xls
    13.5 KB · Affichages: 67
  • Classeur1.xls
    13.5 KB · Affichages: 64
  • ChainesExtraitSousChaines.xls
    19 KB · Affichages: 75
Dernière édition:

JBOBO

XLDnaute Accro
Re : extraire les caractères situés à droite du dernier slach dans le chemin d'un fic

Bonjour,

Peut-etre en reprenant la formule de JB,
Code:
[=GAUCHE(A1;CHERCHE(DROITE(A1;EQUIV("/";STXT(A1;NBCAR(A1)-LIGNE($1:$255);1);0));A1;1)-1)/CODE]

Edit : Oups, bonjour JB, j'ai posté sans rafraichir et du coup je n'avais pas vu votre réponse.
 
Dernière édition:

Discussions similaires