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 :

Boucle sur tous les fichiers d'un répertoire, dans quel ordre? [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 681
    Par défaut Boucle sur tous les fichiers d'un répertoire, dans quel ordre?
    Bonjour,

    J'ai réaliser une macro qui boucle sur tous les fichiers xlsx d'un répertoire et copie-colle dans un autre fichier toutes les données.
    La macro fonctionne sans problème, mais pour ma culture, je me demandais quel paramètre défini l'ordre de la boucle, par nom du fichiers? date de création? date de dernière modifications? après test il semblerais que ce ne soit aucun de ces paramètres. En effet j'ai testé avec trois fichiers test t1.xlsx t2.xlsx et t3.xlsx, crée dans cette ordre et j'obtenais bien 1-2-3, j'ai alors fait une modif sur le 1, j'obtient 2-1-3 puis j'en ai crée deux autres j'obtient maintenant 4-2-1-3-5, bref je ne comprends pas ce qui détermine l'ordre, est-ce aléatoire? j'ai l'impression que non puis qu'en relancer la macro sans faire de modif rien ne bouge.
    Quelqu'un a-t-il la réponse?

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    Sub test()
     Dim Fso As Object, MonRepertoire As String
     Dim f1 As Object, f2 As Object, wb As Workbook
     Dim dl As Long, wbdl As Long, wbdc As Long
     
     Set Fso = CreateObject("Scripting.FileSystemObject")
     MonRepertoire = ThisWorkbook.Sheets("to do").Range("chemin")
     
     'supression si demandé des données de la feuille data
     If ThisWorkbook.Sheets("to do").Range("supr") = "Oui" Then ThisWorkbook.Sheets("data").Cells.ClearContents
     
    'boucle sur les fichiers
     For Each f1 In Fso.GetFolder(MonRepertoire).Files
        If f1.Name Like "*.xlsx" Then
            Set wb = Workbooks.Open(f1)
            dl = ThisWorkbook.Sheets("data").Range("A" & Rows.Count).End(xlUp).Row
            If dl = 1 Then
                wb.Sheets(1).Cells(1, 1).CurrentRegion.Copy
                ThisWorkbook.Sheets("data").Cells(dl, 1).PasteSpecial xlValues
                Application.CutCopyMode = False
                wb.Close
            Else
                If ThisWorkbook.Sheets("to do").Range("entete") = "Non" Then
                    wb.Sheets(1).Cells(1, 1).CurrentRegion.Copy
                    ThisWorkbook.Sheets("data").Cells(dl + 1, 1).PasteSpecial xlValues
                    Application.CutCopyMode = False
                    wb.Close
                Else
                    wbdl = Range("A" & Rows.Count).End(xlUp).Row
                    wbdc = Cells(1, Columns.Count).End(xlToLeft).Column
                    Range(Cells(2, 1), Cells(wbdl, wbdc)).Copy
                    ThisWorkbook.Sheets("data").Cells(dl + 1, 1).PasteSpecial xlValues
                    Application.CutCopyMode = False
                    wb.Close
                End If
            End If
        End If
     Next f1
     End Sub

  2. #2
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut

    Bonjour,

    peut-être serait l'ordre de la FAT (table d'allocation des fichiers) …

    _________________________________________________________________________________________________________
    Je suis Paris, Nice, Bruxelles, Charlie, …

  3. #3
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 681
    Par défaut
    Bonjour Marc-L,

    Merci pour cette piste.

  4. #4
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132

  5. #5
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 681
    Par défaut
    Merci kiki29,
    Je n'avais pas pensé a chercher dans la FAQ.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 30/08/2013, 09h06
  2. Boucle sur tous les fichiers d'un dossier
    Par chtrousselle dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 04/01/2013, 14h50
  3. Boucle copier/coller sur tous les fichiers d'un dossier
    Par santadrix dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/10/2012, 10h58
  4. boucle analyser tous les fichiers d'un répertoire
    Par petitange_lili dans le forum Langage
    Réponses: 1
    Dernier message: 24/03/2007, 20h02

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