Coller dans Excel les noms des fichiers

genpière Messages postés 7 Statut Membre -  
 rvz -
Bonjour,
J'aimerais pouvoir coller dans un fichier Excel tous les noms de fichiers contenus dans un dossier de l'explorateur Windows pour pouvoir ensuite les trier et les classer par sous-domaines d'activité.
Quelqu'un a-t-il une solution simple ?
Merci d'avance pour votre aide.
Configuration: Windows XP
Internet Explorer 7.0

6 réponses

  1. néné
     
    Bjr

    Voici une macro

    Sub TousLesDossiers(LeDossier$, Idx As Long)
    Dim fso As Object, Dossier As Object
    Dim sousRep As Object, Flder As Object

    Set fso = CreateObject("Scripting.FileSystemObject")
    Set Dossier = fso.GetFolder(LeDossier)

    'examen du dossier courant
    For Each Flder In Dossier.subfolders
    Idx = Idx + 1
    Cells(Idx, 1).Value = Flder.Path
    Next

    'traitement récursif des sous dossiers
    For Each sousRep In Dossier.subfolders
    TousLesDossiers sousRep.Path, Idx
    Next sousRep

    Set fso = Nothing

    End Sub 'fs

    Sub test()
    TousLesDossiers "c:\Program Files", 0 'a adapter
    End Sub
    1
  2. néné
     
    BJR

    EN VOICI UNE AUTRE

    Sub listefichiers()
    Range("a:b") = ""'supprime les anciennes données qui sont la la colonne A et B

    chemin = InputBox("Lister fichier", "Saisir un chemin", "c:mondossier\")
    ext = InputBox("Lister fichier", "Saisir une extention", "*.*")

    Dim i, j As Integer
    Dim TabExcel() As String

    With Application.FileSearch
    .NewSearch
    .LookIn = chemin
    .Filename = ext
    .MatchTextExactly = True
    .Execute msoSortByFileName
    ReDim TabExcel(.FoundFiles.Count, 2)
    For i = 1 To .FoundFiles.Count
    For j = Len(.FoundFiles(i)) To 1 Step -1
    If Mid(.FoundFiles(i), j, 1) = "\" Then
    TabExcel(i, 0) = Left(.FoundFiles(i), j)
    TabExcel(i, 1) = Right(.FoundFiles(i), Len(.FoundFiles(i)) - j)
    j = 1
    End If
    Next j
    Next i
    Range(Cells(5, 1), Cells(.FoundFiles.Count + 5, 2)) = TabExcel
    End With

    End Sub
    1
  3. genpière Messages postés 7 Statut Membre 1
     
    Ok et un grand merci.
    Tout a fonctionné à la perfection.
    Tu es trop fort !
    Salutations et à bientôt.
    1
  4. genpière Messages postés 7 Statut Membre 1
     
    Merci néné pour la réponse rapide.
    Malheureusement, j'ai aucune connaissance des macros sous Excel.
    Est-ce possible de m'aider ou, y-a-t-il une autre solution ?
    Merci d'avance.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. néné
     
    Je pense que tu n'a pas le choix

    n'oublie pas que sur Excel il y a une aide

    touche F1

    puis dans la fenêtre met Macro puis rechercher

    puis choisi "copie d'une macro"

    je pense que tu vas t'en sortir
    0
    1. genpière Messages postés 7 Statut Membre 1
       
      Un collègue de travail m'a aidé aujourd'hui à faire la macro proposée.
      La macro proposée donne les noms des dossiers mais pas les noms des fichiers contenus dans ces dossiers.
      Peut-être qu'il faudrait descendre d'un niveau.
      Qu'en penses-tu?
      Si c'est possible, peux-tu me donner la suite de la macro?
      Encore merci.
      0
  7. rvz
     
    Bonjour,

    Je viens de voir ma première macro.
    Je n'ai pas besoin de la partie récursif des sous dossiers
    Mais par contre comment fait on pour ne faire apparaitre que le nom du dossier ??

    Ce serait génial
    Je chercher,je cherche mais je n'ai pas trouvé mais je réfléchis peut être mal

    Cordialement et merci d'avance

    Hervé
    0