Soyez le premier à donner votre avis sur cette source.
Snippet vu 2 895 fois - Téléchargée 39 fois
'Fonction pour meilleure utilisation : Public Function NomFichier(Chemin As String) NomFichier = Right(Chemin, InStr(StrReverse(Chemin), "\") - 1) NomFichier = Left(NomFichier, Len(NomFichier) - InStr(StrReverse(NomFichier), ".")) End Function 'Utilisation : Private Sub Command1_Click() MsgBox NomFichier("C:\TonShemin\...\TonFichier.aaa") 'Donc renvoi 'TonFichier' End Sub '---------------------------------------------- 'Sinon : Private Sub Command1_Click() Dim Chemin, Fichier As String Chemin = "C:\TonShemin\...\TonFichier.aaa" Fichier = Right(Chemin, InStr(StrReverse(Chemin), "\") - 1) Fichier = Left(Fichier, Len(Fichier) - InStr(StrReverse(Fichier), ".")) Text1.Text = Fichier End Sub
http://www.vbfrance.com/article.aspx?Val=4833
lire : faire rechercher tous les "backslash"
puis : MonFic = "C:TonCheminbackslashTonFichier.Ext"
@+
For Ind=len(Chemin) to 1 step-1
if mid$(chemin,ind,1)="" then
Nomfichier=mid$(chemin,ind+1)
exit for
Next ind
Contrairement à notre ami Lamouche2002 (qui ne donne pas de réponse constructive), je vais te donner une autre solution connue et faisant appel aux APIs (désolé, mais ça fais plus d'une ligne !) :
Ce projet necessite une feuille et un bouton de commande.
Dans la zone de déclaration de ta feuille :
Option Explicit
Private Declare Function GetFileTitle Lib "comdlg32.dll" Alias "GetFileTitleA" (ByVal lpszFile As String, ByVal lpszTitle As String, ByVal cbBuf As Integer) As Integer
Private Sub Command1_Click()
'----- Déclaration des variables
Dim MonFic As String
Dim TMsg As String
'----- Initialisation des variables
MonFic = "C:TonCheminTonFichier.Ext"
TMsg = String(255, 0)
'----- Appel de la fonction et affichage du nom du fichier
GetFileTitle MonFic, TMsg, Len(TMsg)
TMsg = Left$(TMsg, InStr(1, TMsg, Chr$(0)) - 1)
MsgBox "Nom du fichier : " & Left$(TMsg, Len(TMsg) - 4) & " Extension : " & Right$(TMsg, 3)
End Sub
@+ Bonne prog
il existe des dizaines de façons différentes d'arriver à un résultat en programmation il suffit souvent de chercher
une autre façon..
Public Function NOM_FICHIER(Chemin As String, Optional AvecExt As Boolean) As String
'-Extraction d'un chemin du nom du fichier seul avec ou sans extension
'-Déclaration
Dim TmpNomFichier As String
'-Extraction
'-Nom du fichier avec extension
TmpNomFichier = Right(Chemin, Len(Chemin) - InStrRev(Chemin, "", -1, 1))
'-Nom du fichier sans extension
If AvecExt Then TmpNomFichier = Left$(TmpNomFichier, Len(TmpNomFichier) - 4)
'-Renvoi dans la fonction
NOM_FICHIER = TmpNomFichier
End Function
renopé
une autre façon..
Public Function NOM_FICHIER(Chemin As String, Optional AvecExt As Boolean) As String
'-Extraction d'un chemin du nom du fichier seul avec ou sans extension
'-Déclaration
Dim TmpNomFichier As String
'-Extraction
'-Nom du fichier avec extension
TmpNomFichier = Right(Chemin, Len(Chemin) - InStrRev(Chemin, "", -1, 1))
'-Nom du fichier sans extension
If AvecExt Then TmpNomFichier = Left$(TmpNomFichier, Len(TmpNomFichier) - 4)
'-Renvoi dans la fonction
NOM_FICHIER = TmpNomFichier
End Function
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.