IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Liste fichier d'un dossier


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Avril 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 8
    Par défaut Liste fichier d'un dossier
    Bonjour j'ai un petit problème avec mon code, je dois lister les fichiers *.sfc d'un dossier et de ces sous dossier. Cela fonctionne mais le programme ne rentre pas directement dans ma boucle et n'affiche pas le 1er fichier.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Public Function Lister(chemin As String)
    Dim fs, Rep As Variant, NewRep As String, Nomfich As String
        Set fs = CreateObject("Scripting.FileSystemObject")
        Lister = fs.GetFolder(chemin).Files.Count
        Nomfich = Dir(chemin & "\*.sfc")
        Do While Nomfich <> ""
            nb = nb + 1
            Range("J" & CStr(nb)) = Replace(Nomfich, ".SFC", "")
            Cells(nb, 3) = chemin & "\" & Nomfich 'liste dans la feuille de calculs active
            tableau = Split(chemin, "\")
            Nomfich = Dir()
        Loop
     
        For Each Rep In fs.GetFolder(chemin).SubFolders
            NewRep = Lister(Rep.Path)
        Next Rep
    End Function

    Mercii

    Thomas

  2. #2
    Membre Expert Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Par défaut
    Salut,
    As tu vérifié ce que renvoi ta variable chemin ?
    A part ça je vois pas vraiment ce qui peut bloquer (mais j'ai pas testé)
    A+

  3. #3
    Membre habitué
    Inscrit en
    Avril 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 8
    Par défaut
    Voila j'ai trouvé la solution merci quand même mais j'ai une autre question maintenant

    J'ai des mots dans la colonne A et C. Je voudrais copier dans une autre colonne les mots de la colonne A qui se trouve aussi dans la C ?

  4. #4
    Membre Expert Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Par défaut
    Citation Envoyé par thomas1806 Voir le message
    Voila j'ai trouvé la solution merci quand même mais j'ai une autre question maintenant
    Et c'était quoi la solution (histoire que je rentre moins idiot) ?


    Sinon pour les doublons, voici une proposition avec la méthode 'Find':

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    Sub Doublons()
     
    Dim m As String
    Dim MaPlage As Range, MaRech As Range
    Dim DerCelA As Long, DerCelC As Long, i As Long, k As Long
     
    DerCelA = Sheets("TaFeuille").Cells(Columns(1).Cells.Count, 1).End(xlUp).Row 'Def dernière ligne col. A
    DerCelC = Sheets("TaFeuille").Cells(Columns(3).Cells.Count, 3).End(xlUp).Row 'Def dernière ligne col. C
     
     
    Set MaPlage = Sheets("TaFeuille").Range(Cells(1, 3), Cells(DerCelC, 3)) 'Défini la plage de recherche
    k = 2 'Fixe le début de K pour le placement du résultat
     
    For i = 2 To DerCelA 'Boucle de la ligne 2 (car titre) à la dernière ligne remplie de la col. A
        With MaPlage 'Sur base de la plage
            Set MaRech = .Find(Cells(i, 1).Value, LookIn:=xlValues) 'Affecte l'élément à rechercher sur base de la col. A
            If Not MaRech Is Nothing Then 'Si la recherche est positive alors
            Sheets("TaFeuille").Cells(k, 4) = MaRech 'Affecte à la colonne D l'élément qui a été trouvé
            k = k + 1 'On incrémente k pour affecter à la ligne suivant le prochain élément trouvé
            End If
         End With
    Next i
     
    End Sub
    A+

Discussions similaires

  1. [E-03] ListBox avec liste des fichiers d'un dossier
    Par Daejung dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 01/11/2008, 01h43
  2. Réponses: 5
    Dernier message: 18/07/2008, 11h28
  3. liste de fichier dans un dossier
    Par matt16matt dans le forum Langage
    Réponses: 6
    Dernier message: 21/05/2008, 12h36
  4. Liste de fichiers et de dossiers
    Par Val25 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 23/04/2008, 17h07
  5. Réponses: 3
    Dernier message: 19/06/2007, 14h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo