Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Exécuter une macro sur tous les fichiers d'un répertoire

5 réponses
Avatar
Tatoonage
Bonjour =E0 tous !

J'ai un macro qui me permet de traiter un fichier, un par un.
Malheureusement j'ai plus de 34 000 fichiers =E0 traiter et 16 000
dossiers ... Et 10 jours devant moi ...

J'aimerai donc pouvoir ex=E9cuter cette macro sur tous les fichiers de
tous les r=E9pertoires et sous r=E9pertoires. Le r=E9pertoire source (ou
racine) serait d=E9fini au d=E9part (exemple de mon cas : E:\Archives ).
Et l=E0 je coince sur le code =E0 pondre ... Mes connaissances ne sont pas
encore assez pouss=E9es pour cela.

Merci d'avance pour votre aide pr=E9cieuse !

@+

5 réponses

Avatar
Mgr T. Banni
bonjour tatoonage
en guise de mise en bouche, ci-dessous une proc pondue par le chef 4 plumes
à l'époque où ce resto brillait de toutes ses étoiles qui permet de lister
tous les répertoires et les sous-répertoires sur une feuille
il doit être facile ensuite de dire à la macro que le nom du fichier à
traiter se trouve dans telle cellule au moyen d'une boucle qui balaierait
chaque cellule mais moi, je ne suis qu'un vieux perroquet bien incapable
d'aller plus loin dans la programmation
et puis, cela fait 12 ans qu'un travail similaire au tien tourne sur mon
ordi...alors, je me doute que tu vas passer du temps sur le tien
mais bon, quand on aime, on ne...etc...
Mgr T.B.

voici la proc :

Dim I As Long, J As Integer

Sub Test()
Application.ScreenUpdating = False
Sheets.Add
I = 1: J = 0
With New FileSystemObject
Récurse .GetFolder("C:")
End With
ActiveSheet.UsedRange.EntireColumn.AutoFit
ActiveWindow.Zoom = 75
End Sub

Private Sub Récurse(ByVal F As Folder)
If F.SubFolders.Count Then
Dim SF As Folder
I = I - 1
J = J + 1
For Each SF In F.SubFolders
I = I + 1
Cells(I, J) = SF.Name
Récurse SF
Next SF
J = J - 1
End If
End Sub


"Tatoonage" a écrit dans le message de news:

Bonjour à tous !

J'ai un macro qui me permet de traiter un fichier, un par un.
Malheureusement j'ai plus de 34 000 fichiers à traiter et 16 000
dossiers ... Et 10 jours devant moi ...

J'aimerai donc pouvoir exécuter cette macro sur tous les fichiers de
tous les répertoires et sous répertoires. Le répertoire source (ou
racine) serait défini au départ (exemple de mon cas : E:Archives ).
Et là je coince sur le code à pondre ... Mes connaissances ne sont pas
encore assez poussées pour cela.

Merci d'avance pour votre aide précieuse !

@+
Avatar
JB
Bonjour,

http://boisgontierjacques.free.fr/pages_site/GestionRepertoire.htm#Arboresc enceDisqueDur

JB
http://boisgontierjacques.free.fr

On 27 mai, 07:15, Tatoonage wrote:
Bonjour à tous !

J'ai un macro qui me permet de traiter un fichier, un par un.
Malheureusement j'ai plus de 34 000 fichiers à traiter et 16 000
dossiers ... Et 10 jours devant moi ...

J'aimerai donc pouvoir exécuter cette macro sur tous les fichiers de
tous les répertoires et sous répertoires. Le répertoire source (ou
racine) serait défini au départ (exemple de mon cas : E:Archives ).
Et là je coince sur le code à pondre ... Mes connaissances ne sont pa s
encore assez poussées pour cela.

Merci d'avance pour votre aide précieuse !

@+


Avatar
Tatoonage
Merci à vous tous !

Je me suis inspiré de tout cela et c'est parfait !
Avatar
Mgr T. Banni
comme aurait dit mon confrère Mgr Abile : avec plaisir!
Mgr T.B.

"Tatoonage" a écrit dans le message de news:

Merci à vous tous !

Je me suis inspiré de tout cela et c'est parfait !
Avatar
Philippe.R
Bonsoir,
Je ne résiste pas au plaisir de rappeler la mine que recèle la cave de
Frédéric S pour ces manipulations :
http://frederic.sigonneau.free.fr/office.htm
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Tatoonage" a écrit dans le message de
news:
Bonjour à tous !

J'ai un macro qui me permet de traiter un fichier, un par un.
Malheureusement j'ai plus de 34 000 fichiers à traiter et 16 000
dossiers ... Et 10 jours devant moi ...

J'aimerai donc pouvoir exécuter cette macro sur tous les fichiers de
tous les répertoires et sous répertoires. Le répertoire source (ou
racine) serait défini au départ (exemple de mon cas : E:Archives ).
Et là je coince sur le code à pondre ... Mes connaissances ne sont pas
encore assez poussées pour cela.

Merci d'avance pour votre aide précieuse !

@+