OVH Cloud OVH Cloud

Extraire des caracteres dans une chaine

7 réponses
Avatar
Lustrucru
Bonjour à tous et tous mes voeux
Voici une chaine de caractéres:
c:\mes dossiers\mon dossier perso\fichier.xls
je souhaite récuperer dans un label que les caractéres fichier.xls pour
indiquer à l'utilisateur sur quel fichier il travaille
Comment dois-je faire, je nage complet

Merci pour votre aide

7 réponses

Avatar
Antoine76
Bonsoir Lustucru

Pour récupérer dans la cellule T7 le nom du fichier, colle la formule
ci-dessous :
= STXT(CELLULE("filename";T7);TROUVE("[";CELLULE("filename";T7))+1;
SOMME(TROUVE({"[";"]"};CELLULE("filename";T7))*{-1;1})-1)

Bon courage à toi

Antoine
"Lustrucru" a écrit dans le message de
news:
Bonjour à tous et tous mes voeux
Voici une chaine de caractéres:
c:mes dossiersmon dossier persofichier.xls
je souhaite récuperer dans un label que les caractéres fichier.xls pour
indiquer à l'utilisateur sur quel fichier il travaille
Comment dois-je faire, je nage complet

Merci pour votre aide


Avatar
Lustrucru
Merci Antoine,
Mais cela ne répond pas tout à fait à mon probléme: en fait je travaille sur
un fichier qui se nomme FICHIER1 et je récupere des infos venant de mon
Fichier.xls, c'est le nom de celui ci que je cherche à extraire de ma chaine :
c:mes dossiersmon dossier persofichier.xls et non pas le nom de mon
fichier actif FICHIER1


Bonsoir Lustucru

Pour récupérer dans la cellule T7 le nom du fichier, colle la formule
ci-dessous :
= STXT(CELLULE("filename";T7);TROUVE("[";CELLULE("filename";T7))+1;
SOMME(TROUVE({"[";"]"};CELLULE("filename";T7))*{-1;1})-1)

Bon courage à toi

Antoine
"Lustrucru" a écrit dans le message de
news:
Bonjour à tous et tous mes voeux
Voici une chaine de caractéres:
c:mes dossiersmon dossier persofichier.xls
je souhaite récuperer dans un label que les caractéres fichier.xls pour
indiquer à l'utilisateur sur quel fichier il travaille
Comment dois-je faire, je nage complet

Merci pour votre aide







Avatar
Antoine76
A ce moment, tu peux récupérer le nom par le programme suivant :

Sub nom()
Dim nom_fichier As String
nom_fichier = ActiveWorkbook.Name ' pour le fichier activé par le
programme
' ou
nom_fichier = Workbooks("Formulaires Arrêt de travail.XLS").Name ' pour
récupérer le nom d'un fichier ' précis
MsgBox nom_fichier
End Sub

Est-ce ce que tu attendais maintenant ?

Antoine

"Lustrucru" a écrit dans le message de
news:
Merci Antoine,
Mais cela ne répond pas tout à fait à mon probléme: en fait je travaille
sur

un fichier qui se nomme FICHIER1 et je récupere des infos venant de mon
Fichier.xls, c'est le nom de celui ci que je cherche à extraire de ma
chaine :

c:mes dossiersmon dossier persofichier.xls et non pas le nom de mon
fichier actif FICHIER1


Bonsoir Lustucru

Pour récupérer dans la cellule T7 le nom du fichier, colle la formule
ci-dessous :
= STXT(CELLULE("filename";T7);TROUVE("[";CELLULE("filename";T7))+1;
SOMME(TROUVE({"[";"]"};CELLULE("filename";T7))*{-1;1})-1)

Bon courage à toi

Antoine
"Lustrucru" a écrit dans le
message de


news:
Bonjour à tous et tous mes voeux
Voici une chaine de caractéres:
c:mes dossiersmon dossier persofichier.xls
je souhaite récuperer dans un label que les caractéres fichier.xls
pour



indiquer à l'utilisateur sur quel fichier il travaille
Comment dois-je faire, je nage complet

Merci pour votre aide









Avatar
Hervé
Bonsoir Et bonne année à tous !

Une Sub :

Sub NomFichier(Chemin As String)
Label1.Caption = Dir(Chemin)
End Sub

Une fonction :

Public Function NOMFICHIER(Cel As Range) As String
Application.Volatile
If Cel.Count = 1 Then
NOMFICHIER = Dir(Cel.Value)
Else
NOMFICHIER = "#VALEUR!"
End If
End Function

Hervé.

"Lustrucru" a écrit dans le message de
news:
Bonjour à tous et tous mes voeux
Voici une chaine de caractéres:
c:mes dossiersmon dossier persofichier.xls
je souhaite récuperer dans un label que les caractéres fichier.xls pour
indiquer à l'utilisateur sur quel fichier il travaille
Comment dois-je faire, je nage complet

Merci pour votre aide


Avatar
Ange Ounis
Voici une chaine de caractéres:
c:mes dossiersmon dossier persofichier.xls
je souhaite récuperer dans un label que les caractéres fichier.xls


Si cette chaine correspond à un chemin et nom de fichier valides, la fonction
Dir renvoie le nom du fichier seul :

Sub essai()
Dim S
S = "c:mes dossiersmon dossier persofichier.xls"
MsgBox Dir(S)
End Sub

----------
Ange Ounis
----------

Bonjour à tous et tous mes voeux
Voici une chaine de caractéres:
c:mes dossiersmon dossier persofichier.xls
je souhaite récuperer dans un label que les caractéres fichier.xls pour
indiquer à l'utilisateur sur quel fichier il travaille
Comment dois-je faire, je nage complet

Merci pour votre aide


Avatar
docm
Bonne année 2006.

Voici une façon d'extraire le nom du fichier à partir d'une chaîne.

Sub ExtraireFichierDuChemin()
NomFichier = [a1]

While InStr(NomFichier, "")
NomFichier = Mid(NomFichier, InStr(NomFichier, "") + 1)
Wend

End Sub

docm


Bonjour à tous et tous mes voeux
Voici une chaine de caractéres:
c:mes dossiersmon dossier persofichier.xls
je souhaite récuperer dans un label que les caractéres fichier.xls pour
indiquer à l'utilisateur sur quel fichier il travaille
Comment dois-je faire, je nage complet

Merci pour votre aide


Avatar
JB
Bonjour,

Utiliser la fonction InstrRev() qui recherche de droite à gauche.

x = "c:xxx.xls"
nf = Mid(x, InStrRev(x, "") + 1)

S'il s'agit d'obtenir le nom du classeur actif: x¬tiveworkbook.Name

Cordialement JB