SOS

SavoyExcel

XLDnaute Nouveau
Comment reprendre une liste de noms de dossiers dans un répertoire sous Windows et la copier dans Excel, le but étant de pouvoir avoir une liste triable. Merci pour votre aide...
 

Gérard DEZAMIS

XLDnaute Accro
Bonjour SavoyExcel

Je pense que tu as dû lire la Charte et que les fichiers que tu recherches sont :

Bonjour.xls
Au revoir.xls
Merci.xls


:) :) :)

Bon il y a une fichier qui fait ça, il est de Frédéric Sigonneau
pas de ce Forum mais super manip très pratique. Et oui ...

Bon courage

@+ GD [file name=ListerTousLesFichiers.zip size=21063]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/ListerTousLesFichiers.zip[/file]
 

Pièces jointes

  • ListerTousLesFichiers.zip
    20.6 KB · Affichages: 11

Celeda

XLDnaute Barbatruc
Re:Lister tous les noms de dossier...

Bonjour,

Ah aujourdh'ui c'est le premier jour de la semaine quoique cela dépend des calendriers que l'on utilise :)
et certains d'entres vous nous découvrent dans notre plus bel apparât :

nous avons tous mis nos costumes xldiens pour vous répondre
enfin les gars les pantalons et nous les filles les jupes bleues et les tee shirts jaunes avec un grand X au milieu de la poitrine.

SOS n'est pas un titre valable et il ne va pas attirer les réponses

alors qu'un X sur la poitrine va attirer tous les regards ! ;)

si tu avais placé : Lister tous les noms de dossiers
tu aurais déplacé des foules

si tu avais lu la Charte pour nous dire un petit bonjour matinal
tu aurais comblé la communauté

mais si tu avais lu le W I K I de nos amis xldiens

alors là tu te serais pris un pied d'enfer !!!


bon Frère SavoyExcel, tu vois ce qu'il te reste à faire... ;)

Celeda

ps : je te rassure tu n'es pas le premier ce matin à se planter dans le sujet


EDIT : oh je suis vraiment désolée Frère Gérard, je ne t'ai piont vu avec ton beau tee-shirt xldien, je te bise pour la peine!!! :)

Message édité par: Celeda, à: 17/10/2005 10:51
 

Brigitte

XLDnaute Barbatruc
Re:Lister tous les noms de dossier...

Bonjour à tous,

Gérard, il est trop fort ton fichier... Je prends. Merci mille fois à SavoyExcel d'avoir posé la question qui m'a permis de voir ce fichier mais surtout à toi de nous le faire partager.

A bientôt.
 

SavoyExcel

XLDnaute Nouveau
Re:SOS - Liste de répertoires

Bonsoir,

tout d'abord merci pour cette macro, est-ce qu'il exste la même chose pour créer une liste de noms de répertoires dans un répertoire... et non pas de fichiers dans un répertoire...

Mille mercis d'avance...

A bientôt
 

MichelXld

XLDnaute Barbatruc
Re:SOS - Liste de répertoires

bonsoir SavoyExcel , Gérard , Celeda et Brigitte

j'espere que cet exemple pourra t'aider


Option Explicit
Dim i As Integer
Dim Cible As Byte

'http://support.microsoft.com/newsgroups/newsReader.aspx?dg=microsoft.public.fr.excel&mid=de56386d-8d0d-4eac-8d1c-ccfbe9c26110
Sub listeDossiersEtSousDossiers()
Dim Racine As String

Application.ScreenUpdating = False

Racine = 'C:\\\\\\\\Documents and Settings\\michel\\\\\\\\excel'
Cible = nbSeparateur(Racine)
ListFilesInFolder Racine, True

Application.ScreenUpdating = True
i = 0
End Sub

Sub ListFilesInFolder(SourceFolderName As String, _
IncludeSubfolders As Boolean)
' adapté de Ole P Erlandsen
Dim Fso As Object, SourceFolder As Object
Dim SubFolder As Object

On Error GoTo Fin

Set Fso = CreateObject('Scripting.FileSystemObject')
Set SourceFolder = Fso.GetFolder(SourceFolderName)

If IncludeSubfolders Then
For Each SubFolder In SourceFolder.subfolders



i = i + 1
'pour recuperer le chemin complet
'Cells(i, nbSeparateur(SubFolder.Path) - Cible) = SubFolder.Path
'
'pour recuperer uniquement le nom du dossier
Cells(i, nbSeparateur(SubFolder.Path) - Cible) = SubFolder.Name

ListFilesInFolder SubFolder.Path, IncludeSubfolders
Next SubFolder
End If

Fin:
End Sub


Function nbSeparateur(Chemin As String) As Byte
Dim m As Integer
Dim Nb As Byte

For m = 1 To Len(Chemin)
If Mid(Chemin, m, 1) = '\\' Then
Nb = Nb + 1
m = m + 1
End If
Next
nbSeparateur = Nb
End Function



bonne soirée
MichelXld

Message édité par: michelxld, à: 17/10/2005 19:47
 

SavoyExcel

XLDnaute Nouveau
Re:SOS - Liste de répertoires

Bonsoir,
c'est très sympa MichelXld mais je ne comprends rien... Je suis désolé mais je ne suis pas informaticien, ce que tu m'as écrit c'est du pur chinois pour moi. Que dois-je faire de ces données? Mille mercis d'avance.
 

MichelXld

XLDnaute Barbatruc
Re:SOS - Liste de répertoires

bonsoir

si cela peut te rassurer moi non plus je ne suis pas informaticien...

en lisant ta réponse à la demo de Gerard , j'ai supposé que tu avais déja des notions en macros


dans ton classeur tu ouvres l'editeur de macros ( Alt+F11)
menu Insertion
tu selectionnes 'Module'
tu y colles la procedure que je t'ai proposé dans le message précédent
penses à adapter le nom du repertoire à tester : Racine = 'C:\\\\\\\\Documents and Settings\\\\\\\\michel\\\\\\\\excel'
tu peux ensuite lancer la procedure (F5) pour afficher l'arborescence des répertoires


sinon le fichier joint te montrera aussi comment créer une macro

Lien supprimé


bonne soiree
MichelXld
 

Brigitte

XLDnaute Barbatruc
Re:SOS - Liste de répertoires

Bonsoir à tous,



Mais ca me dit qqchse cette histoire de créer des répertoires. Y a un de nos amis xld qui pour fêter son xième post nous a offert ca y a qq temps, mais alors je me souviens plus qui, j'avais trouvé ca bien, et je le retrouve plus, on en a tellement des trucs sympa...

Personne se souvient ?


Trop dommage.
 
S

Suite SOS liste dossiers

Guest
Re:SOS - Liste de répertoires

Bonjour

Je ne sais pas si j'ai bien fait, j'ai essayé de suivre la procédure, mais rien ne se passe... mais ce n'est pas grave, je vais trouver une autre solution.
Je vous remercie pour votre gentillesse à tous !

Bonne journée

SavoyExcel
 

MichelXld

XLDnaute Barbatruc
Re:SOS - Liste de répertoires

bonjour SavoyExcel , Gérard , Celeda et Brigitte


tu as raison . cela ne fonctionne pas : en fait un antislash '\\\\\\\\' avait disparu dans le premier message que j'ai envoyé


tu peux rester cette adaptation apres avoir modifié le nom du repertoire à controler :
Racine = 'C:\\\\\\\\Documents and Settings\\\\\\\\michel\\\\\\\\excel'



Option Explicit
Dim i As Integer
Dim Cible As Byte

'http://support.microsoft.com/newsgroups/newsReader.aspx?dg=microsoft.public.fr.excel&mid=de56386d-8 d0d-4eac-8d1c-ccfbe9c26110
Sub listeDossiersEtSousDossiers()
Dim Racine As String

Application.ScreenUpdating = False

Racine = 'C:\\\\\\\\Documents and Settings\\\\\\\\michel\\\\\\\\excel'
Cible = nbSeparateur(Racine)
ListFilesInFolder Racine, True

Application.ScreenUpdating = True
i = 0
End Sub

Sub ListFilesInFolder(SourceFolderName As String, _
IncludeSubfolders As Boolean)
' adapté de Ole P Erlandsen
Dim Fso As Object, SourceFolder As Object
Dim SubFolder As Object

On Error GoTo Fin

Set Fso = CreateObject('Scripting.FileSystemObject')
Set SourceFolder = Fso.GetFolder(SourceFolderName)

If IncludeSubfolders Then
For Each SubFolder In SourceFolder.subfolders


i = i + 1
'pour recuperer le chemin complet
'Cells(i, nbSeparateur(SubFolder.Path) - Cible) = SubFolder.Path
'
'pour recuperer uniquement le nom du dossier
Cells(i, nbSeparateur(SubFolder.Path) - Cible) = SubFolder.Name

ListFilesInFolder SubFolder.Path, IncludeSubfolders
Next SubFolder
End If

Fin:
End Sub


Function nbSeparateur(Chemin As String) As Byte
Dim m As Integer
Dim Nb As Byte

For m = 1 To Len(Chemin)
If Mid(Chemin, m, 1) = '\\\\\\\\' Then
Nb = Nb + 1
m = m + 1
End If
Next
nbSeparateur = Nb
End Function



bon apres midi
MichelXld

Message édité par: michelxld, à: 19/10/2005 12:35
 

Discussions similaires

Réponses
9
Affichages
337

Statistiques des forums

Discussions
312 493
Messages
2 088 956
Membres
103 990
dernier inscrit
lamiadebz