Bonjour les développeurs,
Je me tourne une fois de plus vers vous, car je suis face à un muret..
Je m'explique, dans mon code je sélectionne un fichier "à traiter", et ce qui m’intéresserai de faire c'est de récupérer le nom de se fichier et de le mettre dans une cellule définie.
Les noms de fichiers sont de la forme: T:\ISh\Prg\IS\L1\601032F1.txt, T:\ISh\Prg\IS\L1\983MF1.txt, T:\ISh\Prg\IS\L2\LVA70AF2.txt, .....
Voici mon code:
'Selection du fichier à ouvrir
Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
.Title = "ouvrir fichier texte"
.Filters.Clear
.Filters.Add "text file", "*.txt"
.AllowMultiSelect = False
.InitialFileName = "T:\ISh\Prg\IS\"
If .Show = -1 Then
sNomFichier = .SelectedItems(1)
End If
End With
Set ws = Sheets("Écriture") '// feuille où écrire les résultats
ws.UsedRange.Clear '// vider le contenu de la feuille
'récupération du nom du fichier à ouvrir
nb = Len(sNomFichier)
Nomproduit = UCase(Mid(sNomFichier, 18, 6))
Worksheets("Mise en forme finale").Range("D2:F3").Value = Nomproduit
Ce code est valable si tous les noms de fichiers sont de la même taille, en revanche si il y a une différence de taille... Il faut re-adapter mon "MID" à chaque fois...
Merci d'avance
ps: Ci-joint le fichier correspondant (module3)