Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Extraire les parties de l'adresse d'un fichier

5 réponses
Avatar
Jac
Bonjour à tous,

en partant de l'adresse d'un fichier, j'en récupérère par calcul les
différents composants, mais je trouve que ça fait un peu désordre...
Mais malgré tout, ça fonctionne. Mais j'aimerais simplifier ou
améliorer ce calcul. En partant, par exemple de :
C:\WINDOWS\Fonts\times.ttf
je cherche à récupérer trois éléments :

C:\WINDOWS\Fonts\
times
ttf

Y aurait-il une(s) fonction(s) ou quelques lignes de vba pour faire ça
vite, proprement et bien ?

Merci d'avance,

Jac

5 réponses

Avatar
Modeste
Bonsour® Jac avec ferveur ;o))) vous nous disiez :

en partant de l'adresse d'un fichier, j'en récupérère par calcul les
différents composants, mais je trouve que ça fait un peu désordre...

Y aurait-il une(s) fonction(s) ou quelques lignes de vba pour faire ça
vite, proprement et bien ?


http://xcell05.free.fr/pages/form/nomfeuille.htm


@+
;o)))

Avatar
LSteph
Bonsoir,

Tu ne dis pas comment tu obtiens ce fichier .ttf dans excel

Pour simplifier donc
le chemin complet avec nom c'est .fullname
le chemin c'est .path
lenom c'est .name
donc pour les parties gauche et droite:
left(lenom,len(lenom)-4)
right(lenom,3)

--
lSteph

Bonjour à tous,

en partant de l'adresse d'un fichier, j'en récupérère par calcul les
différents composants, mais je trouve que ça fait un peu désordre...
Mais malgré tout, ça fonctionne. Mais j'aimerais simplifier ou
améliorer ce calcul. En partant, par exemple de :
C:WINDOWSFontstimes.ttf
je cherche à récupérer trois éléments :

C:WINDOWSFonts
times
ttf

Y aurait-il une(s) fonction(s) ou quelques lignes de vba pour faire ça
vite, proprement et bien ?

Merci d'avance,

Jac





Avatar
Jac
Bonjour Steph,

j'obtiens les noms avec
Set fs = Application.FileSearch
-----
que je termine avec une boucle
For I = 1 To .FoundFiles.Count
LE_FICHIER = .FoundFiles(I)
-----

"LSteph" a écrit dans le message de news:

Bonsoir,

Tu ne dis pas comment tu obtiens ce fichier .ttf dans excel

Pour simplifier donc
le chemin complet avec nom c'est .fullname
le chemin c'est .path
lenom c'est .name
donc pour les parties gauche et droite:
left(lenom,len(lenom)-4)
right(lenom,3)

--
lSteph

Bonjour à tous,

en partant de l'adresse d'un fichier, j'en récupérère par calcul les
différents composants, mais je trouve que ça fait un peu désordre...
Mais malgré tout, ça fonctionne. Mais j'aimerais simplifier ou
améliorer ce calcul. En partant, par exemple de :
C:WINDOWSFontstimes.ttf
je cherche à récupérer trois éléments :

C:WINDOWSFonts
times
ttf

Y aurait-il une(s) fonction(s) ou quelques lignes de vba pour faire ça
vite, proprement et bien ?

Merci d'avance,

Jac






Avatar
LSteph
Bonjour,

Dans ce cas tu suis mes indications
pour le nom et pour le chemin, idem
en utilisant LE_FICHIER

Cordialement.

--
lSteph

Bonjour Steph,

j'obtiens les noms avec
Set fs = Application.FileSearch
-----
que je termine avec une boucle
For I = 1 To .FoundFiles.Count
LE_FICHIER = .FoundFiles(I)
-----

"LSteph" a écrit dans le message de news:

Bonsoir,

Tu ne dis pas comment tu obtiens ce fichier .ttf dans excel

Pour simplifier donc
le chemin complet avec nom c'est .fullname
le chemin c'est .path
lenom c'est .name
donc pour les parties gauche et droite:
left(lenom,len(lenom)-4)
right(lenom,3)

--
lSteph

Bonjour à tous,

en partant de l'adresse d'un fichier, j'en récupérère par calcul les
différents composants, mais je trouve que ça fait un peu désordre...
Mais malgré tout, ça fonctionne. Mais j'aimerais simplifier ou
améliorer ce calcul. En partant, par exemple de :
C:WINDOWSFontstimes.ttf
je cherche à récupérer trois éléments :

C:WINDOWSFonts
times
ttf

Y aurait-il une(s) fonction(s) ou quelques lignes de vba pour faire ça
vite, proprement et bien ?

Merci d'avance,

Jac









Avatar
LSteph
... ce qui donnerait ceci par exemple
en supposant un rapport dans une feuille

Sub litFich()

Dim myStr As String, myN As String, i As Long
Worksheets.Add
With Application.FileSearch
If .Execute() > 0 Then
For i = 1 To .FoundFiles.Count
myStr = .FoundFiles(i)
Cells(i, 1) = .LookIn & ""
myN = Right(myStr, Len(myStr) - Len(Cells(i, 1)))
Cells(i, 2) = Left(myN, Len(myN) - 4)
Cells(i, 3) = Right(myStr, 3)
Next i
Else
MsgBox "Aucun fichier"
End If
End With
[a:c].EntireColumn.AutoFit

End Sub

'lSteph
Bonjour Steph,

j'obtiens les noms avec
Set fs = Application.FileSearch
-----
que je termine avec une boucle
For I = 1 To .FoundFiles.Count
LE_FICHIER = .FoundFiles(I)
-----

"LSteph" a écrit dans le message de news:

Bonsoir,

Tu ne dis pas comment tu obtiens ce fichier .ttf dans excel

Pour simplifier donc
le chemin complet avec nom c'est .fullname
le chemin c'est .path
lenom c'est .name
donc pour les parties gauche et droite:
left(lenom,len(lenom)-4)
right(lenom,3)

--
lSteph

Bonjour à tous,

en partant de l'adresse d'un fichier, j'en récupérère par calcul les
différents composants, mais je trouve que ça fait un peu désordre...
Mais malgré tout, ça fonctionne. Mais j'aimerais simplifier ou
améliorer ce calcul. En partant, par exemple de :
C:WINDOWSFontstimes.ttf
je cherche à récupérer trois éléments :

C:WINDOWSFonts
times
ttf

Y aurait-il une(s) fonction(s) ou quelques lignes de vba pour faire ça
vite, proprement et bien ?

Merci d'avance,

Jac