Tri fichier par date

Bonjour à tous !

Ce que je cherche à faire : Je lance ma macro, elle me ressort dans un onglet tous les liens vers les dossiers dans lesquels on trouve un fichier ayant leur dernière modification entre deux dates définis.

Ce que j'ai fait : j'ai trouvé sur internet un bout de code me permettant de mettre dans une variable tableau mes fichiers d'UN dossier de les trier par date et les insérer dans un onglet.

Je pense pouvoir sans trop de problème ajuster ce bout de code pour ne récupérer que les chemin vers les dossiers et les trier. Ce que je cherche à faire quoi.

52tri-fichiers.xlsm (16.02 Ko)

Mon gros problème, c'est que cette macro va servir pour un dossier qui contient des dizaines de dossiers qui contiennent eux même de dizaine de dossiers et ainsi de suite. Et que je ne connais pas le nombre de sous dossiers maximal.

Ce pourquoi je demande votre aide : Je recherche un bouclage qui me permettrait d'exécuter ma commande dans chaque dossiers et sous dossier quelques soit le nombre de sous dossiers. Et je n'ai aucune idée de comment faire ^^

Je vous remercie grandement d'avance !

Cordialement,

Bonjour

A vérifier

Bonjour,

Je vous remercie grandement pour ce bout de code ! Correspond exactement à ma demande.

Je l'ai modifié, (j'aimerais déjà votre avis sur la manière dont j'ai procédé ), pour qu'il ne me fasse ressortir qu'une seule fois et uniquement les fichiers ayant une date antérieure à une date entré dans une InputBox.

J'aimerai rajouter une petite ligne qui ferait également ressortir les dossiers vide, une idée ?

J'ai a peu près compris comment votre code fonctionnait mais je n'ai pas tout saisi et je ne sais pas vraiment comment faire..

Edit : Ah si ! Question, purement de curiosité, pourquoi remplir le tableau de cette manière et le transposer derrière ??

Quelle valeur ajouté cela apporte ? Je me suis vraiment posé la question et n'ai pas réussi à trouver l'avantage à cette méthode..

Merci beaucoup,

Corentin

Bonjour

CorentinB a écrit :

pourquoi remplir le tableau de cette manière et le transposer derrière ??

Une contrainte de VBA

Au départ on ne sait pas combien d'éléments va être composé le tableau (Tablo ), donc chaque fois que l'on rencontre une donnée que l'on veut stocker dans ce tableau, on est obligé d'agrandir celui-ci

VBA autorise l'agrandissement de la dernière dimension d'un tableau

C'est pour cela que l'on inverse les dimensions du tableau

Normalement un tableau c'est Ligne,Colonne mais dans ce cas là c'est colonne,Ligne

        Tablo(1, Indice) = Chemin
        Tablo(2, Indice) = Fich.DateLastModified

1 et 2 sont les colonnes et indice le numéro de la ligne

Une fois le tableau remplit, On le transpose pour avoir à l'affichage Ligne,Colonne

Regarde l'aide sur ReDim, Transpose

A tester

Parfait,

pas bête le .Count j'y pense pas assez ...

merci beaucoup en tout cas !

Bonne continuation !

(Pour la petite histoire, la macro a tourné pendant 1h tout à l'heure pour me sortir 4500 dossiers datant d'avant l'an 2000 ... Plus qu'a relancer avec les dossiers vide et trier )

Rebonjour,

Petit Up finalement,

Quelqu'un aurait'il une idée pour optimiser ce code, Banzai ?

En effet, comme dit dans le précédent poste on parle de + de 5000 dossiers sur réseau.

Si on arrivait à gratter quelques dixième par dossiers on pourrait grandement réduire ce temps ...

En effet ce dossier serait bien plus pratique si il pouvait être plus rapide... On cherche à utiliser cette macro plusieurs fois et si on doit attendre 1h cela rend la tache difficile.

j'ai peur de demander l'impossible mais sait-on jamais !

Une autre mode de programmation peut-être serait plus efficace ? Je me pose cette question car un logiciel tel que CCleaner arrive à parcourir tout les dossiers de ce même réseau en 5-10 pour me sortir les doublons cela ne vient donc pas entièrement du fait que ce soit sur reseau.

Bref à vos idées !!!

Cordialement,

Corentin

Bonjour

CorentinB a écrit :

Quelqu'un aurait'il une idée pour optimiser ce code

Surement mais sans moi

La macro utilise un tableau interne pour stocker les fichiers ce qui déjà réduit le temps de traitement

Je le trouve bien, mais je suis incapable de faire mieux

Je suivrai ce post pour connaitre la solution

Ok merci bien en tout cas pour ton aide !

J'aurais une question sinon, comment ajouter une colonne à notre fichier contenant le nom du propriétaire du dossier ? Siouplait

Google n'a pas été mon ami sur ce coup ...

Cordialement,

Bonjour

Mauvaise journée

Je ne sais pas

Tout ce que je sais c'est qu'il faut ouvrir le fichier pour lire ses propriétés

Ah ouais autant dire que c'est mort ....

Bonjour

Si tu as du courage (moi je ne l'ai pas )

Dans le lien que je t'ai fourni regarde le paragraphe III

III. Les propriétés d'un classeur fermé (Utilisation de la bibliothèque DSO)

Rechercher des sujets similaires à "tri fichier date"