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

Nombre et taille de tous les classeurs Excel de mon ordi !

18 réponses
Avatar
garnote
Bonjour,

J'aimerais obtenir, sous une forme "agréable à consulter",
pour chaque répertoire et sous-répertoire de mes disques C et D,
le nombre et la taille totale de tous ses fichiers Excel.
Je ne suis pas très familier avec ce genre de chose.
Voici le début de mes timides efforts pour y arriver.
Sans devenir fou, peut-on automatiser tout ça ? :-)

Sub ListeRep()
rep = "D:\" 'ou "D:\Données\ ou ...
[A:B].ClearContents
Cells(1, 1) = rep
Cells(1, 1).Font.Bold = True
NomRep = Dir(rep, vbDirectory)
i = 2
Do While NomRep <> ""
If NomRep <> "." And NomRep <> ".." Then
If (GetAttr(rep & NomRep) And vbDirectory) = vbDirectory Then
Cells(i, 1) = NomRep
i = i + 1
End If
End If
NomRep = Dir
Loop
Columns("A:A").EntireColumn.AutoFit
End Sub

Sub nfxls()
Columns("A:B").ClearContents
rep = "D:\Données\"
nf = Dir("*.xls")
Do While nf <> ""
t = t + FileLen(rep & "\" & nf)
n = n + 1
nf = Dir()
Loop
Cells(1, 1) = "Répertoire"
Cells(1, 2) = rep
Cells(2, 1) = "Nombre"
Cells(2, 2) = n
Cells(3, 1) = "Taille"
Cells(3, 2) = Format((t / 1000000), "0.00") & " Mo"
Columns("A:B").EntireColumn.AutoFit
End Sub

Serge

8 réponses

1 2
Avatar
Misange
Salut Serge et Denis
Denis tu avais pondu ça :-)
http://www.excelabo.net/trucs/fichiers_et_tailles

et combiné à ceci de FS
http://www.excelabo.net/trucs/arborescence
avec son classeur exemple
http://www.excelabo.net/exemples/fs-listfichier
ca devrait le faire !

et Robert Dezan a fait un très joli travail ici
http://www.excelabo.net/exemples/rd-contenurepertoires

voilà de quoi t'occuper, surtout s'il ne fait pas beau !

Misange migrateuse
http://www.excelabo.net : Participez à un travail collaboratif sur excel !


MichDenis a écrit :
Bonjour Garnote,

Pourquoi ne pas le faire en DOS

Tu ouvres une fenêtre DOS et tu tapes :
dir c: /S >c:Test.txt
ça va prendre quelques secondes et le tout est joué.
tout va être affiché dans ton fichier test.txt

Si tu tapes dir /? dans la fenêtre DOS, tu vas avoir tous les
commutateurs possibles.

"garnote" a écrit dans le message de groupe de discussion :

Bonjour,

J'aimerais obtenir, sous une forme "agréable à consulter",
pour chaque répertoire et sous-répertoire de mes disques C et D,
le nombre et la taille totale de tous ses fichiers Excel.
Je ne suis pas très familier avec ce genre de chose.
Voici le début de mes timides efforts pour y arriver.
Sans devenir fou, peut-on automatiser tout ça ? :-)

Sub ListeRep()
rep = "D:" 'ou "D:Données ou ...
[A:B].ClearContents
Cells(1, 1) = rep
Cells(1, 1).Font.Bold = True
NomRep = Dir(rep, vbDirectory)
i = 2
Do While NomRep <> ""
If NomRep <> "." And NomRep <> ".." Then
If (GetAttr(rep & NomRep) And vbDirectory) = vbDirectory Then
Cells(i, 1) = NomRep
i = i + 1
End If
End If
NomRep = Dir
Loop
Columns("A:A").EntireColumn.AutoFit
End Sub

Sub nfxls()
Columns("A:B").ClearContents
rep = "D:Données"
nf = Dir("*.xls")
Do While nf <> ""
t = t + FileLen(rep & "" & nf)
n = n + 1
nf = Dir()
Loop
Cells(1, 1) = "Répertoire"
Cells(1, 2) = rep
Cells(2, 1) = "Nombre"
Cells(2, 2) = n
Cells(3, 1) = "Taille"
Cells(3, 2) = Format((t / 1000000), "0.00") & " Mo"
Columns("A:B").EntireColumn.AutoFit
End Sub

Serge



Avatar
isabelle
salut vous tous,

garnote a écrit :
Enfin quelque chose de simple! C'est vrai qu'en ligne commande, c'était un
peu difficile pour Serge ;-)



:-)))
À mon âge et avec le temps de chien qu'il fait à Québec, je dois
avouer que j'ai de gros problèmes de dos.
D'ailleurs, quand je sors de cellule, j'ai de la difficulté à m'adapter !



hé bien, je viens de prendre un coup de vieux également, Serge, je ne me
souvenais plus t'avoir mit en geôle ;-)

isabelle
Avatar
MichDenis
| Denis tu avais pondu ça :-)
| http://www.excelabo.net/trucs/fichiers_et_tailles
***Merci pour le rappel

En fait, la procédure soumise est une combinaison
d'une procédure émanant de ton site et dont tu cites
l'adresse ici et une autre provenant du site de
Frédéric Sigonneau (je crois)

Il est difficile le prof. de Québec !
;-))


et combiné à ceci de FS
http://www.excelabo.net/trucs/arborescence
avec son classeur exemple
http://www.excelabo.net/exemples/fs-listfichier
ca devrait le faire !

et Robert Dezan a fait un très joli travail ici
http://www.excelabo.net/exemples/rd-contenurepertoires

voilà de quoi t'occuper, surtout s'il ne fait pas beau !

Misange migrateuse
http://www.excelabo.net : Participez à un travail collaboratif sur excel !


MichDenis a écrit :
Bonjour Garnote,

Pourquoi ne pas le faire en DOS

Tu ouvres une fenêtre DOS et tu tapes :
dir c: /S >c:Test.txt
ça va prendre quelques secondes et le tout est joué.
tout va être affiché dans ton fichier test.txt

Si tu tapes dir /? dans la fenêtre DOS, tu vas avoir tous les
commutateurs possibles.

"garnote" a écrit dans le message de groupe de discussion :

Bonjour,

J'aimerais obtenir, sous une forme "agréable à consulter",
pour chaque répertoire et sous-répertoire de mes disques C et D,
le nombre et la taille totale de tous ses fichiers Excel.
Je ne suis pas très familier avec ce genre de chose.
Voici le début de mes timides efforts pour y arriver.
Sans devenir fou, peut-on automatiser tout ça ? :-)

Sub ListeRep()
rep = "D:" 'ou "D:Données ou ...
[A:B].ClearContents
Cells(1, 1) = rep
Cells(1, 1).Font.Bold = True
NomRep = Dir(rep, vbDirectory)
i = 2
Do While NomRep <> ""
If NomRep <> "." And NomRep <> ".." Then
If (GetAttr(rep & NomRep) And vbDirectory) = vbDirectory Then
Cells(i, 1) = NomRep
i = i + 1
End If
End If
NomRep = Dir
Loop
Columns("A:A").EntireColumn.AutoFit
End Sub

Sub nfxls()
Columns("A:B").ClearContents
rep = "D:Données"
nf = Dir("*.xls")
Do While nf <> ""
t = t + FileLen(rep & "" & nf)
n = n + 1
nf = Dir()
Loop
Cells(1, 1) = "Répertoire"
Cells(1, 2) = rep
Cells(2, 1) = "Nombre"
Cells(2, 2) = n
Cells(3, 1) = "Taille"
Cells(3, 2) = Format((t / 1000000), "0.00") & " Mo"
Columns("A:B").EntireColumn.AutoFit
End Sub

Serge



Avatar
MichDenis
> n'oublie pas de passer par Québec; je serai aux
premières loges !



| j'y serai demain soir :-)
| Misange migrateuse

Misange,
Tu viens faire une présentation sur Excel à Québec demain ?
Rien de trop beau pour le prof. de Québec !
;-))
Avatar
garnote
Bojour Misange et Denis,

Super extra démentiel le classeur exemple de FS.
C'est plus que j'en demandais.
J'étais arrivé à mon but avec cette macro :
Sub nfxls()
Columns("A:B").ClearContents
rep = ActiveWorkbook.Path
nf = Dir("*.xls")
Do While nf <> ""
t = t + FileLen(rep & "" & nf)
n = n + 1
nf = Dir()
Loop
Cells(1, 1) = "Répertoire"
Cells(1, 2) = rep
Cells(2, 1) = "Nombre"
Cells(2, 2) = n
Cells(3, 1) = "Taille"
Cells(3, 2) = Format((t / 1000000), "0.00") & " Mo"
Columns("A:B").EntireColumn.AutoFit
End Sub
mais j'ai du ouvrir un classeur de chacun des répertoires,
lancer la macro et copier le résultat dans un classeur synthèse!

Avec les résultats du classeur exemple, j'ai fait un tri "finissant par
.xls"
et ajouté une formule donnant la taille totale en Mo.
Je n'ai pas su comment modifier la macro pour n'obtenir que les
classeurs Excel.

Et une autre question :
Si j'utilise FileLen("D:Mai 2009Liste électorale.xls"),
j'obtiens 4 934 144 (4,93 Mo) mais si je vais dans le répertoire
Mai 2009 et que je dépose le pointeur sur ledit classeur,
c'est écrit 4,70 Mo.
Pourquoi cette petite différence ?

En tous cas, vous êtes costauds en sacrament :-)
Et pour Misange :
S'il est vrai que tu passes par Québec et si ton emploi du temps
le permet, tu peux toujours me téléphoner (418-524-5052).
Si je ne quitte pas Québec pour le week-end (français de France),
je t'invite à prendre une tite consommation.

Serge












"MichDenis" a écrit dans le message de news:
ewBn%
| Denis tu avais pondu ça :-)
| http://www.excelabo.net/trucs/fichiers_et_tailles
***Merci pour le rappel

En fait, la procédure soumise est une combinaison
d'une procédure émanant de ton site et dont tu cites
l'adresse ici et une autre provenant du site de
Frédéric Sigonneau (je crois)

Il est difficile le prof. de Québec !
;-))


et combiné à ceci de FS
http://www.excelabo.net/trucs/arborescence
avec son classeur exemple
http://www.excelabo.net/exemples/fs-listfichier
ca devrait le faire !

et Robert Dezan a fait un très joli travail ici
http://www.excelabo.net/exemples/rd-contenurepertoires

voilà de quoi t'occuper, surtout s'il ne fait pas beau !

Misange migrateuse
http://www.excelabo.net : Participez à un travail collaboratif sur excel !


MichDenis a écrit :
Bonjour Garnote,

Pourquoi ne pas le faire en DOS

Tu ouvres une fenêtre DOS et tu tapes :
dir c: /S >c:Test.txt
ça va prendre quelques secondes et le tout est joué.
tout va être affiché dans ton fichier test.txt

Si tu tapes dir /? dans la fenêtre DOS, tu vas avoir tous les
commutateurs possibles.

"garnote" a écrit dans le message de groupe de
discussion :

Bonjour,

J'aimerais obtenir, sous une forme "agréable à consulter",
pour chaque répertoire et sous-répertoire de mes disques C et D,
le nombre et la taille totale de tous ses fichiers Excel.
Je ne suis pas très familier avec ce genre de chose.
Voici le début de mes timides efforts pour y arriver.
Sans devenir fou, peut-on automatiser tout ça ? :-)

Sub ListeRep()
rep = "D:" 'ou "D:Données ou ...
[A:B].ClearContents
Cells(1, 1) = rep
Cells(1, 1).Font.Bold = True
NomRep = Dir(rep, vbDirectory)
i = 2
Do While NomRep <> ""
If NomRep <> "." And NomRep <> ".." Then
If (GetAttr(rep & NomRep) And vbDirectory) = vbDirectory Then
Cells(i, 1) = NomRep
i = i + 1
End If
End If
NomRep = Dir
Loop
Columns("A:A").EntireColumn.AutoFit
End Sub

Sub nfxls()
Columns("A:B").ClearContents
rep = "D:Données"
nf = Dir("*.xls")
Do While nf <> ""
t = t + FileLen(rep & "" & nf)
n = n + 1
nf = Dir()
Loop
Cells(1, 1) = "Répertoire"
Cells(1, 2) = rep
Cells(2, 1) = "Nombre"
Cells(2, 2) = n
Cells(3, 1) = "Taille"
Cells(3, 2) = Format((t / 1000000), "0.00") & " Mo"
Columns("A:B").EntireColumn.AutoFit
End Sub

Serge





Avatar
garnote
Bonjour Misange et Denis,

Super extra démentiel le classeur exemple de FS-MD
C'est plus que j'en demandais.
J'étais arrivé à mon but avec cette macro :
Sub nfxls()
Columns("A:B").ClearContents
rep = ActiveWorkbook.Path
nf = Dir("*.xls")
Do While nf <> ""
t = t + FileLen(rep & "" & nf)
n = n + 1
nf = Dir()
Loop
Cells(1, 1) = "Répertoire"
Cells(1, 2) = rep
Cells(2, 1) = "Nombre"
Cells(2, 2) = n
Cells(3, 1) = "Taille"
Cells(3, 2) = Format((t / 1000000), "0.00") & " Mo"
Columns("A:B").EntireColumn.AutoFit
End Sub
en ouvrant un classeur de chacun des répertoires.
J'ai alors appelé la macro et copié le résultat
dans un classeur synthèse!

Avec les résultats du classeur exemple, j'ai fait un tri
"finissant par.xls" et ajouté une formule donnant la taille totale en Mo.
Je n'ai pas su comment modifier la macro pour n'obtenir que les
classeurs Excel.

Et une autre question :
Si j'utilise FileLen("D:Mai 2009Liste électorale.xls"),
j'obtiens 4 934 144 (4,93 Mo) mais si je vais dans le répertoire
Mai 2009 et que je dépose le pointeur sur ledit classeur,
c'est écrit 4,70 Mo.
Pourquoi cette petite différence ?

En tous cas, vous êtes costauds en sacrament :-)
Et pour Misange :
S'il est vrai que tu passes par Québec et si ton emploi du temps
le permet, tu peux toujours me téléphoner (418-524-5052).
Si je ne quitte pas Québec pour le week-end (français de France),
je t'invite à prendre une tite consommation.

Serge

"MichDenis" a écrit dans le message de news:
ewBn%
| Denis tu avais pondu ça :-)
| http://www.excelabo.net/trucs/fichiers_et_tailles
***Merci pour le rappel

En fait, la procédure soumise est une combinaison
d'une procédure émanant de ton site et dont tu cites
l'adresse ici et une autre provenant du site de
Frédéric Sigonneau (je crois)

Il est difficile le prof. de Québec !
;-))


et combiné à ceci de FS
http://www.excelabo.net/trucs/arborescence
avec son classeur exemple
http://www.excelabo.net/exemples/fs-listfichier
ca devrait le faire !

et Robert Dezan a fait un très joli travail ici
http://www.excelabo.net/exemples/rd-contenurepertoires

voilà de quoi t'occuper, surtout s'il ne fait pas beau !

Misange migrateuse
http://www.excelabo.net : Participez à un travail collaboratif sur excel !


MichDenis a écrit :
Bonjour Garnote,

Pourquoi ne pas le faire en DOS

Tu ouvres une fenêtre DOS et tu tapes :
dir c: /S >c:Test.txt
ça va prendre quelques secondes et le tout est joué.
tout va être affiché dans ton fichier test.txt

Si tu tapes dir /? dans la fenêtre DOS, tu vas avoir tous les
commutateurs possibles.

"garnote" a écrit dans le message de groupe de
discussion :

Bonjour,

J'aimerais obtenir, sous une forme "agréable à consulter",
pour chaque répertoire et sous-répertoire de mes disques C et D,
le nombre et la taille totale de tous ses fichiers Excel.
Je ne suis pas très familier avec ce genre de chose.
Voici le début de mes timides efforts pour y arriver.
Sans devenir fou, peut-on automatiser tout ça ? :-)

Sub ListeRep()
rep = "D:" 'ou "D:Données ou ...
[A:B].ClearContents
Cells(1, 1) = rep
Cells(1, 1).Font.Bold = True
NomRep = Dir(rep, vbDirectory)
i = 2
Do While NomRep <> ""
If NomRep <> "." And NomRep <> ".." Then
If (GetAttr(rep & NomRep) And vbDirectory) = vbDirectory Then
Cells(i, 1) = NomRep
i = i + 1
End If
End If
NomRep = Dir
Loop
Columns("A:A").EntireColumn.AutoFit
End Sub

Sub nfxls()
Columns("A:B").ClearContents
rep = "D:Données"
nf = Dir("*.xls")
Do While nf <> ""
t = t + FileLen(rep & "" & nf)
n = n + 1
nf = Dir()
Loop
Cells(1, 1) = "Répertoire"
Cells(1, 2) = rep
Cells(2, 1) = "Nombre"
Cells(2, 2) = n
Cells(3, 1) = "Taille"
Cells(3, 2) = Format((t / 1000000), "0.00") & " Mo"
Columns("A:B").EntireColumn.AutoFit
End Sub

Serge





Avatar
MichDenis
FileLen retourne des octets
Il y a 1024 octets dans un Ko
Il y a 1024 Ko dans un Mo

Tu prends la valeur de ce que retournes FileLen
et tu la divise par 1024*1024
=Valeur / 1048576
= Réponse en Mo




"garnote" a écrit dans le message de groupe de discussion :
#
Bojour Misange et Denis,

Super extra démentiel le classeur exemple de FS.
C'est plus que j'en demandais.
J'étais arrivé à mon but avec cette macro :
Sub nfxls()
Columns("A:B").ClearContents
rep = ActiveWorkbook.Path
nf = Dir("*.xls")
Do While nf <> ""
t = t + FileLen(rep & "" & nf)
n = n + 1
nf = Dir()
Loop
Cells(1, 1) = "Répertoire"
Cells(1, 2) = rep
Cells(2, 1) = "Nombre"
Cells(2, 2) = n
Cells(3, 1) = "Taille"
Cells(3, 2) = Format((t / 1000000), "0.00") & " Mo"
Columns("A:B").EntireColumn.AutoFit
End Sub
mais j'ai du ouvrir un classeur de chacun des répertoires,
lancer la macro et copier le résultat dans un classeur synthèse!

Avec les résultats du classeur exemple, j'ai fait un tri "finissant par
.xls"
et ajouté une formule donnant la taille totale en Mo.
Je n'ai pas su comment modifier la macro pour n'obtenir que les
classeurs Excel.

Et une autre question :
Si j'utilise FileLen("D:Mai 2009Liste électorale.xls"),
j'obtiens 4 934 144 (4,93 Mo) mais si je vais dans le répertoire
Mai 2009 et que je dépose le pointeur sur ledit classeur,
c'est écrit 4,70 Mo.
Pourquoi cette petite différence ?

En tous cas, vous êtes costauds en sacrament :-)
Et pour Misange :
S'il est vrai que tu passes par Québec et si ton emploi du temps
le permet, tu peux toujours me téléphoner (418-524-5052).
Si je ne quitte pas Québec pour le week-end (français de France),
je t'invite à prendre une tite consommation.

Serge












"MichDenis" a écrit dans le message de news:
ewBn%
| Denis tu avais pondu ça :-)
| http://www.excelabo.net/trucs/fichiers_et_tailles
***Merci pour le rappel

En fait, la procédure soumise est une combinaison
d'une procédure émanant de ton site et dont tu cites
l'adresse ici et une autre provenant du site de
Frédéric Sigonneau (je crois)

Il est difficile le prof. de Québec !
;-))


et combiné à ceci de FS
http://www.excelabo.net/trucs/arborescence
avec son classeur exemple
http://www.excelabo.net/exemples/fs-listfichier
ca devrait le faire !

et Robert Dezan a fait un très joli travail ici
http://www.excelabo.net/exemples/rd-contenurepertoires

voilà de quoi t'occuper, surtout s'il ne fait pas beau !

Misange migrateuse
http://www.excelabo.net : Participez à un travail collaboratif sur excel !


MichDenis a écrit :
Bonjour Garnote,

Pourquoi ne pas le faire en DOS

Tu ouvres une fenêtre DOS et tu tapes :
dir c: /S >c:Test.txt
ça va prendre quelques secondes et le tout est joué.
tout va être affiché dans ton fichier test.txt

Si tu tapes dir /? dans la fenêtre DOS, tu vas avoir tous les
commutateurs possibles.

"garnote" a écrit dans le message de groupe de
discussion :

Bonjour,

J'aimerais obtenir, sous une forme "agréable à consulter",
pour chaque répertoire et sous-répertoire de mes disques C et D,
le nombre et la taille totale de tous ses fichiers Excel.
Je ne suis pas très familier avec ce genre de chose.
Voici le début de mes timides efforts pour y arriver.
Sans devenir fou, peut-on automatiser tout ça ? :-)

Sub ListeRep()
rep = "D:" 'ou "D:Données ou ...
[A:B].ClearContents
Cells(1, 1) = rep
Cells(1, 1).Font.Bold = True
NomRep = Dir(rep, vbDirectory)
i = 2
Do While NomRep <> ""
If NomRep <> "." And NomRep <> ".." Then
If (GetAttr(rep & NomRep) And vbDirectory) = vbDirectory Then
Cells(i, 1) = NomRep
i = i + 1
End If
End If
NomRep = Dir
Loop
Columns("A:A").EntireColumn.AutoFit
End Sub

Sub nfxls()
Columns("A:B").ClearContents
rep = "D:Données"
nf = Dir("*.xls")
Do While nf <> ""
t = t + FileLen(rep & "" & nf)
n = n + 1
nf = Dir()
Loop
Cells(1, 1) = "Répertoire"
Cells(1, 2) = rep
Cells(2, 1) = "Nombre"
Cells(2, 2) = n
Cells(3, 1) = "Taille"
Cells(3, 2) = Format((t / 1000000), "0.00") & " Mo"
Columns("A:B").EntireColumn.AutoFit
End Sub

Serge





Avatar
garnote
Merde alors :-)
Mon réflexe Méga : 1 000 000
Pas pensé au Méga informatique : 2^20


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

FileLen retourne des octets
Il y a 1024 octets dans un Ko
Il y a 1024 Ko dans un Mo

Tu prends la valeur de ce que retournes FileLen
et tu la divise par 1024*1024
=Valeur / 1048576
= Réponse en Mo




"garnote" a écrit dans le message de groupe de
discussion :
#
Bojour Misange et Denis,

Super extra démentiel le classeur exemple de FS.
C'est plus que j'en demandais.
J'étais arrivé à mon but avec cette macro :
Sub nfxls()
Columns("A:B").ClearContents
rep = ActiveWorkbook.Path
nf = Dir("*.xls")
Do While nf <> ""
t = t + FileLen(rep & "" & nf)
n = n + 1
nf = Dir()
Loop
Cells(1, 1) = "Répertoire"
Cells(1, 2) = rep
Cells(2, 1) = "Nombre"
Cells(2, 2) = n
Cells(3, 1) = "Taille"
Cells(3, 2) = Format((t / 1000000), "0.00") & " Mo"
Columns("A:B").EntireColumn.AutoFit
End Sub
mais j'ai du ouvrir un classeur de chacun des répertoires,
lancer la macro et copier le résultat dans un classeur synthèse!

Avec les résultats du classeur exemple, j'ai fait un tri "finissant par
.xls"
et ajouté une formule donnant la taille totale en Mo.
Je n'ai pas su comment modifier la macro pour n'obtenir que les
classeurs Excel.

Et une autre question :
Si j'utilise FileLen("D:Mai 2009Liste électorale.xls"),
j'obtiens 4 934 144 (4,93 Mo) mais si je vais dans le répertoire
Mai 2009 et que je dépose le pointeur sur ledit classeur,
c'est écrit 4,70 Mo.
Pourquoi cette petite différence ?

En tous cas, vous êtes costauds en sacrament :-)
Et pour Misange :
S'il est vrai que tu passes par Québec et si ton emploi du temps
le permet, tu peux toujours me téléphoner (418-524-5052).
Si je ne quitte pas Québec pour le week-end (français de France),
je t'invite à prendre une tite consommation.

Serge












"MichDenis" a écrit dans le message de news:
ewBn%
| Denis tu avais pondu ça :-)
| http://www.excelabo.net/trucs/fichiers_et_tailles
***Merci pour le rappel

En fait, la procédure soumise est une combinaison
d'une procédure émanant de ton site et dont tu cites
l'adresse ici et une autre provenant du site de
Frédéric Sigonneau (je crois)

Il est difficile le prof. de Québec !
;-))


et combiné à ceci de FS
http://www.excelabo.net/trucs/arborescence
avec son classeur exemple
http://www.excelabo.net/exemples/fs-listfichier
ca devrait le faire !

et Robert Dezan a fait un très joli travail ici
http://www.excelabo.net/exemples/rd-contenurepertoires

voilà de quoi t'occuper, surtout s'il ne fait pas beau !

Misange migrateuse
http://www.excelabo.net : Participez à un travail collaboratif sur excel
!


MichDenis a écrit :
Bonjour Garnote,

Pourquoi ne pas le faire en DOS

Tu ouvres une fenêtre DOS et tu tapes :
dir c: /S >c:Test.txt
ça va prendre quelques secondes et le tout est joué.
tout va être affiché dans ton fichier test.txt

Si tu tapes dir /? dans la fenêtre DOS, tu vas avoir tous les
commutateurs possibles.

"garnote" a écrit dans le message de groupe de
discussion :

Bonjour,

J'aimerais obtenir, sous une forme "agréable à consulter",
pour chaque répertoire et sous-répertoire de mes disques C et D,
le nombre et la taille totale de tous ses fichiers Excel.
Je ne suis pas très familier avec ce genre de chose.
Voici le début de mes timides efforts pour y arriver.
Sans devenir fou, peut-on automatiser tout ça ? :-)

Sub ListeRep()
rep = "D:" 'ou "D:Données ou ...
[A:B].ClearContents
Cells(1, 1) = rep
Cells(1, 1).Font.Bold = True
NomRep = Dir(rep, vbDirectory)
i = 2
Do While NomRep <> ""
If NomRep <> "." And NomRep <> ".." Then
If (GetAttr(rep & NomRep) And vbDirectory) = vbDirectory Then
Cells(i, 1) = NomRep
i = i + 1
End If
End If
NomRep = Dir
Loop
Columns("A:A").EntireColumn.AutoFit
End Sub

Sub nfxls()
Columns("A:B").ClearContents
rep = "D:Données"
nf = Dir("*.xls")
Do While nf <> ""
t = t + FileLen(rep & "" & nf)
n = n + 1
nf = Dir()
Loop
Cells(1, 1) = "Répertoire"
Cells(1, 2) = rep
Cells(2, 1) = "Nombre"
Cells(2, 2) = n
Cells(3, 1) = "Taille"
Cells(3, 2) = Format((t / 1000000), "0.00") & " Mo"
Columns("A:B").EntireColumn.AutoFit
End Sub

Serge








1 2