Résolu XL 2016 Extraction nom de fichier à partir du chemin et du nom de dossier

MJ13

XLDnaute Barbatruc
Bonjour à tous

Je cherche en VBA à extraire le nom d'un fichier, sachant que j'ai dans une variable le nom du dossier et du fichier.

Voici mon début de code pour insérer dans une feuille une image avec 'Nomfichier = ????????? qui est ce que je cherche qui est représenté par QuelFichier(Ctr).


Merci d'avance. :)

VB:
Sub Ouvre_Img()
Dossier = Cells(1, 13)
[A1].Select
ChDrive (Left(Dossier, 1))
ChDir (Dossier)
     Dim QuelFichier()
  QuelFichier = Application.GetOpenFilename(, , , , True)
  For Ctr = 1 To UBound(QuelFichier)
    ActiveSheet.Pictures.Insert(QuelFichier(Ctr)).Select
    'Nomfichier = ?????????
     Selection.ShapeRange.ZOrder msoSendToBack
    Selection.Name = "Image"
  Next
End Sub
 
Ce fil a été résolu! Aller à la solution…

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir MJ13,
Un exemple d'extraction :
VB:
Sub ExtraitNomFichier()
    NomEntrée = "C:\Users\PC_PAPA\Desktop\XLD\Dossier\agent 1.xlsx"
    tablo = Split(NomEntrée, "\")
    NomFichier = tablo(UBound(tablo))
End Sub
 
Ce message a été identifié comme étant une solution!

MJ13

XLDnaute Barbatruc
Bonjour Sylvanu

Merci pour ton retour, cela fonctionne très bien. J'avais un peu cherché mais pas trouvé avec le moteur de recherche.
 

Staple1600

XLDnaute Barbatruc
Bonsoir le fil, MJ13, sylvanu

MJ13
On a pas rangé sa chambre Excel ? ;)
Ok, je sors ;)
 

Staple1600

XLDnaute Barbatruc
Re

MJ13
Ce n'était qu'un trait d'humour
Tu as cliqué sur le lien au moins ?
Si oui, tu devrais comprendre où je voulais en venir ;)
 

patricktoulon

XLDnaute Barbatruc
bonsoir
et la fonction InStrRev elle sert a quoi ? ;)
VB:
Sub ExtraitNomFichier()
    NomEntrée = "C:\Users\PC_PAPA\Desktop\XLD\Dossier\agent 1.xlsx"
      NomFichier = Mid(NomEntrée, InStrRev(NomEntrée, "\") + 1)
End Sub
 
Ce message a été identifié comme étant une solution!

Staple1600

XLDnaute Barbatruc
Bonsoir le fil

bonsoir
et la fonction InStrRev elle sert a quoi ? ;)
VB:
Sub ExtraitNomFichier()
    NomEntrée = "C:\Users\PC_PAPA\Desktop\XLD\Dossier\agent 1.xlsx"
      NomFichier = Mid(NomEntrée, InStrRev(NomEntrée, "\") + 1)
End Sub
Bah, à être utilisé ;)
Tout comme le moteur interne du forum ;)
 

MJ13

XLDnaute Barbatruc
Bonjour à tous

JM et Patrick: Merci pour vos Fanfaronnades. :)

Sinon, après une recherche sur le net et dans ma tête j'ai trouvé d'autre solutions que voici. ;)



VB:
Sub Ouvre_Insère_Img_Sur_Feuille()
'Nom du dossier en A13 (A adapter)
dossier = Cells(1, 13)
[A1].Select
ChDrive (Left(dossier, 1))
ChDir (dossier)
     Dim QuelFichier()
  QuelFichier = Application.GetOpenFilename(, , , , True)
  For Ctr = 1 To UBound(QuelFichier)
    ActiveSheet.Pictures.Insert(QuelFichier(Ctr)).Select
    
    'Solution1
    'Sylvanu
    tablo = Split(QuelFichier(Ctr), "\")
    NomFichier = tablo(UBound(tablo))
    MsgBox "De Sylvanu " & NomFichier
    
    'Solution2
    'PatrickToulon
    NomEntrée = QuelFichier(Ctr)
    NomFichier = Mid(NomEntrée, InStrRev(NomEntrée, "\") + 1)
    MsgBox "De PatrickToulon " & NomFichier
    
    'Solution3
    'MJ
    NomFichier = Mid(QuelFichier(Ctr), Len(dossier) + 2, Len(QuelFichier(Ctr)) - Len(dossier))
    MsgBox "De MJ " & NomFichier
  
   'Solution4
   'https://www.developpez.net/forums/d372217/logiciels/microsoft-office/access/vba-access/recuperer-nom-d-fichier-on-chemin/
   var_CheminFichier = QuelFichier(Ctr)
   NomFichier = Dir(var_CheminFichier)
   MsgBox "De https://www.developpez.net/ " & NomFichier
  
   'Solution5
   'https://www.commentcamarche.net/forum/affich-30505287-vb-ne-garder-que-le-nom-du-fichier-sans-le-chemin
   NomFichier = CreateObject("Scripting.FileSystemObject").GetFileName(QuelFichier(Ctr))
   MsgBox "De https://www.commentcamarche.net/ " & NomFichier
  
   Selection.ShapeRange.ZOrder msoSendToBack
    Selection.Name = "Image"
  Next
End Sub
 

patricktoulon

XLDnaute Barbatruc
re
bonjour Mj13
celle ci me plait
VB:
var_CheminFichier = QuelFichier(Ctr)
   NomFichier = Dir(var_CheminFichier)
   MsgBox "De https://www.developpez.net/ " & NomFichier
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas