Rechercher et compter des fichiers

Fermé
Stephanlaunay Messages postés 4 Date d'inscription vendredi 11 décembre 2015 Statut Membre Dernière intervention 29 décembre 2015 - 11 déc. 2015 à 01:24
Stephanlaunay Messages postés 4 Date d'inscription vendredi 11 décembre 2015 Statut Membre Dernière intervention 29 décembre 2015 - 29 déc. 2015 à 23:57
Bonjour,
J'utilisais Excel 2003 avec lequel l'application Filesearch fonctionnait très bien pour rechercher et compter des fichiers. Hélas cette application n'est plus gérée depuis Excel 2007 mais Microsoft avait mis au point une macro complémentaire Clfilesearch.classefilesearch qui fonctionnait avec Excel 2010. On vient récemment d’installer sur mon poste de travail Excel 2016 qui ne gère plus ces applications.
Quelqu'un a t il une solution à me proposer ?

Merci d'avance.
Stéphan

1 réponse

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 711
11 déc. 2015 à 09:43
Bonjour,

As-tu essayé avec "Dir" qui doit fonctionner même si le résultat est plus succinct.
Pour avoir le même résultat, "getfolder" devrait fonctionner.
https://docs.microsoft.com/fr-fr/office/vba/language/reference/user-interface-help/getfolder-method?redirectedfrom=MSDN
0
Stephanlaunay Messages postés 4 Date d'inscription vendredi 11 décembre 2015 Statut Membre Dernière intervention 29 décembre 2015
11 déc. 2015 à 22:51
Merci, pour votre aide gbinforme. J'essaierai la procédure dès que possible, l'inconvénient est que je n'ai pas accès à internet depuis mon poste de travail. Je fais des recherches à la maison puis test les procédures au travail.
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 711
12 déc. 2015 à 09:47
Bonjour,

Je te mets un exemple de procédure (à adapter bien sûr !) utilisant cette fonction :
https://www.cjoint.com/c/ELmiSTXufFl

Bon test
0
Stephanlaunay Messages postés 4 Date d'inscription vendredi 11 décembre 2015 Statut Membre Dernière intervention 29 décembre 2015 > gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020
13 déc. 2015 à 00:26
Merci beaucoup gbinforme, c'est à moi de "jouer" maintenant !
0
Stephanlaunay Messages postés 4 Date d'inscription vendredi 11 décembre 2015 Statut Membre Dernière intervention 29 décembre 2015
29 déc. 2015 à 23:57
Bonjour gbinforme,

En lisant votre programme je me rend compte du chemin à parcourir pour être à votre niveau. J'avoue ne pas avoir tout saisi.

Voici de façon plus explicite ce que j'essaye de faire :

Dans mon programme "test", le "chemin" est reconnu mais le programme "bug" pour trouver les fichiers à lister et à compter.


Mon chemin est le suivant :
Lecteur réseau S:\
Répertoire Archive : ARC
Sous répertoire Année : 2015
Sous répertoire dans 2015 (décembre) : 12_dec
Je souhaite par exemple lister les fichiers de chaque jour du mois de décembre nommés :
ENE_BLI_MOY_10_20151201.d01 (2015= année, 12 = mois, 01= jour)
ENE_BLI_MOY_10_20151202.d01
Dans le sous répertoire de décembre : 12_dec
il existe beaucoup d’autre fichiers commençant par
ENE_NEP_MOY_......................d01 ou
ENE_KMC_MOY_......................d01 ou
ENE_TEM_MOY_......................d01 etc…
pour lesquels il peut exister 31 fichiers (1 par jour) en fonction du mois.

Sub test()
Dim i As Long
Dim Rep As String, Dossier As Object, SousDossier As Object, fichier As Object
chemin = "S:\Arc\" & 2015 & "\" & "11_nov" 'Directory = répertoire dans S: selon année sélectionnée
fichier = "ENE_BLI_MOY_10_MIN_201511" & "*.*" 'fichD & "*.*"
Rep = chemin & "\" & fichier
i = 2
Set Dossier = CreateObject("Scripting.FileSystemObject").GetFolder(Rep)

For Each fichier In SousDossier.Files
Cells(i, 1) = SousDossier.Name
Cells(i, 2) = fichier.Name
i = i + 1
Next
End Sub

Merci d'avance pour votre aide.

Meilleurs vœux pour 2016.

Stéphan
0