Afficher le nom d'un fichier sans chemin d'acces ni extension

Afficher le nom d'un fichier sans chemin d'acces ni extension - VB/VBA/VBS - Programmation

Marsh Posté le 17-05-2006 à 23:28:43    

Bonjour à tous,
 
Je réalise une macro en vba et je cherche à lister les fichiers présent dans un dossier. je souhaite que seul le nom du fichier s'affiche (sans chemin d'acces ni extension)...comment puis-je faire ? voilà mes lignes de code :
 
Set fs = Application.FileSearch
With fs
    .LookIn = "C:\Offres MSA\Images"
    .FileName = "*.jpg"
    If .Execute(SortBy:=msoSortByFileName, _
            SortOrder:=msoSortOrderAscending) > 0 Then
       
        For i = 1 To .FoundFiles.Count
            ComboBox2.AddItem FoundFiles.Item(i)                      *********ceci m'affiche le nom du fichier avec chemin et extension, ce que je ne
        Next i                                                                                        veux pas********
    Else
        MsgBox "There were no files found."
    End If
End With
 
 
Merci d'avance
 
A+

Reply

Marsh Posté le 17-05-2006 à 23:28:43   

Reply

Marsh Posté le 18-05-2006 à 00:17:10    

Reply

Marsh Posté le 18-05-2006 à 06:44:29    

Merci pour ta réponse mais cela ne répond pas à ma question car je suis sous Word (j'ai oublié de préciser)....
Apparemment, foundfiles ne peut pas renvoyer uniquement un nom de fichier....
comment faire ? (le but de la macro étant de récuperer dans une combobox tous les noms de fichiers  (et uniquement les noms, sans les chemins) d'un dossier.
 
Je n'ai pas de très grande connaissances en vba...quelqu'un a t-il une solution ???


Message édité par moebius80 le 18-05-2006 à 08:09:38
Reply

Marsh Posté le 18-05-2006 à 08:26:05    

et alors Word comme Excel se programme en VBA

Reply

Marsh Posté le 18-05-2006 à 13:00:15    

Bestialement qqch comme ceci
 
Dim NomFichier As String, NomFichierSansExtension As String
Dim Dossier As String
Dim NbFichiers As Integer, Pos As Integer
Dim Tableau() As String
Dim i As Integer
    ' Dossier de test
    Dossier = "C:\Transfert\*.*"
    NomFichier = Dir(Dossier)
     
    Erase Tableau
    NbFichiers = 0
    Do While Len(NomFichier) > 0
        NbFichiers = NbFichiers + 1
        ReDim Preserve Tableau(1 To NbFichiers)
        Pos = InStr(1, NomFichier, ".", 1)
        NomFichierSansExtension = Left(NomFichier, Pos - 1)
        Tableau(NbFichiers) = NomFichierSansExtension
        NomFichier = Dir()
    Loop
         
    For i = 1 To UBound(Tableau)
           ......
    Next

Reply

Marsh Posté le 18-05-2006 à 21:15:44    

Merci beaucoup !!!!!
 
C'est exactement ce que je voulais....
SUPER !!!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed