coincé sur les repertoires ....

Le
Alfred WALLACE
Bonsoir
je tourne en boucle (si je puis dire )

dans une feuille nommée paramétres
j'aimerai que de sur la premier
ligne qui commence en A1 obtenir
la liste des répertoires du dossier en cours (ActiveWorkbook.Path)
Mais uniquement ceux dont le nom commence par "_"

dans un second temps, pour chaque répertoires,
dans la colonne correspondante, mais à partir
de la ligne 2, obtenir la liste des fichiers de ce répertoire
UNIQUEMENT si
dans le répertoire concerné, il existe un fichier nommé
"maj.txt" (arbitrairement)

j'ai bien trouver des macros vba pour la liste des dossiers, de leur
contenu
ainsi que des sous dossier mais je n'arrive pas en extraire
les éléments pour avoir "uniquement" ma recherche.

Une âme éclairée (et éclairante) passera-t-elle par ici ?

Merci
José
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
JB
Le #18683501
Bonjour,


Sub ListeRep()
repertoire = "c:mesdoc"
[A:A].ClearContents
NomRep = Dir(repertoire, vbDirectory)
i = 2
Do While NomRep <> ""
If NomRep If (GetAttr(repertoire & NomRep) And vbDirectory) =
vbDirectory Then
If Left(NomRep, 1) = "E" Then
temp = repertoire & "" & NomRep & "*.*"
nf = Dir(temp)
Do While nf <> ""
Cells(i, 1) = nf
i = i + 1
nf = Dir
Loop
Exit Sub
End If
End If
End If
NomRep = Dir
Loop
End Sub

JB
http://boisgontierjacques.free.fr

On 16 fév, 17:31, Alfred WALLACE
Bonsoir
je tourne en boucle (si je puis dire ...)

dans une feuille nommée paramétres
j'aimerai que de sur la premier
ligne qui commence en A1 obtenir
la liste des répertoires du dossier en cours (ActiveWorkbook.Path)
Mais uniquement ceux dont le nom commence par "_"

dans un second temps, pour chaque répertoires,
dans la colonne correspondante, mais à partir
de la ligne 2, obtenir la liste des fichiers de ce répertoire
UNIQUEMENT si
dans le répertoire concerné, il existe un fichier nommé
"maj.txt" (arbitrairement)

j'ai bien trouver des macros vba pour la liste des dossiers, de leur
contenu
ainsi que des sous dossier ... mais je n'arrive pas en extraire
les éléments pour avoir "uniquement" ma recherche.

Une âme éclairée (et éclairante) passera-t-elle par ici ?

Merci
José


Alfred WALLACE
Le #18701811
Bonjour JB et merci pour ton aide,
j'ai voulu adapter ton code à ce que je souhaite faire
mais, je pédale ....grave ....

grace à ton code, j'arrive à trouver les repertoires qui commencent
pas "_" OK.

Mais, pour chacun de ces repertoires j'aimerai mettre la liste des
fichiers qu'il contiend
exemple :

_rep1 _rep2 _repX
fic1 lolo toto
fic2 lulu titi
fic2 tutu


en fait, ton code s'arrete au contenu du premier repertoire, car (si
je comprend bien)
il y a un exit sub.

J'ai l'impression que l'on ne peut pas utiliser la fonction DIR dans
un repertoire, puis,
dans le sous-dossier concerné....

Merci pour ton aide.

José









JB a écrit :
Bonjour,


Sub ListeRep()
repertoire = "c:mesdoc"
[A:A].ClearContents
NomRep = Dir(repertoire, vbDirectory)
i = 2
Do While NomRep <> ""
If NomRep If (GetAttr(repertoire & NomRep) And vbDirectory) =
vbDirectory Then
If Left(NomRep, 1) = "E" Then
temp = repertoire & "" & NomRep & "*.*"
nf = Dir(temp)
Do While nf <> ""
Cells(i, 1) = nf
i = i + 1
nf = Dir
Loop
Exit Sub
End If
End If
End If
NomRep = Dir
Loop
End Sub

JB
http://boisgontierjacques.free.fr

On 16 fév, 17:31, Alfred WALLACE > Bonsoir
> je tourne en boucle (si je puis dire ...)
>
> dans une feuille nommée paramétres
> j'aimerai que de sur la premier
> ligne qui commence en A1 obtenir
> la liste des répertoires du dossier en cours (ActiveWorkbook.Path)
> Mais uniquement ceux dont le nom commence par "_"
>
> dans un second temps, pour chaque répertoires,
> dans la colonne correspondante, mais à partir
> de la ligne 2, obtenir la liste des fichiers de ce répertoire
> UNIQUEMENT si
> dans le répertoire concerné, il existe un fichier nommé
> "maj.txt" (arbitrairement)
>
> j'ai bien trouver des macros vba pour la liste des dossiers, de leur
> contenu
> ainsi que des sous dossier ... mais je n'arrive pas en extraire
> les éléments pour avoir "uniquement" ma recherche.
>
> Une âme éclairée (et éclairante) passera-t-elle par ici ?
>
> Merci
> José


Mgr T. Banni
Le #18702371
bonjour alfred
j'assure l'interim de JB
voici une proc de notre grand chef 4 plumes LL

Fichiers contenus dans le répertoire "C:Temp" (pour un autre

répertoire, modifie la propriété LookIn) :

Dim Arr, I As Long, NbFichiers As Long

With Application.FileSearch

.LookIn = "C:Temp"

.FileType = msoFileTypeExcelWorkbooks

.Execute

With .FoundFiles

NbFichiers = .Count

ReDim Arr(1 To NbFichiers)

For I = 1 To NbFichiers

Arr(I) = Dir(.Item(I))

Next I

End With

End With

With UserForm1.ComboBox1

.Clear

.List = Arr

.ListIndex = 1

End With

UserForm1.Show



HTH

Mgr T.B.

"Alfred WALLACE"
Bonjour JB et merci pour ton aide,
j'ai voulu adapter ton code à ce que je souhaite faire
mais, je pédale ....grave ....

grace à ton code, j'arrive à trouver les repertoires qui commencent
pas "_" OK.

Mais, pour chacun de ces repertoires j'aimerai mettre la liste des
fichiers qu'il contiend
exemple :

_rep1 _rep2 _repX
fic1 lolo toto
fic2 lulu titi
fic2 tutu


en fait, ton code s'arrete au contenu du premier repertoire, car (si
je comprend bien)
il y a un exit sub.

J'ai l'impression que l'on ne peut pas utiliser la fonction DIR dans
un repertoire, puis,
dans le sous-dossier concerné....

Merci pour ton aide.

José









JB a écrit :
Bonjour,


Sub ListeRep()
repertoire = "c:mesdoc"
[A:A].ClearContents
NomRep = Dir(repertoire, vbDirectory)
i = 2
Do While NomRep <> ""
If NomRep If (GetAttr(repertoire & NomRep) And vbDirectory) > vbDirectory Then
If Left(NomRep, 1) = "E" Then
temp = repertoire & "" & NomRep & "*.*"
nf = Dir(temp)
Do While nf <> ""
Cells(i, 1) = nf
i = i + 1
nf = Dir
Loop
Exit Sub
End If
End If
End If
NomRep = Dir
Loop
End Sub

JB
http://boisgontierjacques.free.fr

On 16 fév, 17:31, Alfred WALLACE > Bonsoir
> je tourne en boucle (si je puis dire ...)
>
> dans une feuille nommée paramétres
> j'aimerai que de sur la premier
> ligne qui commence en A1 obtenir
> la liste des répertoires du dossier en cours (ActiveWorkbook.Path)
> Mais uniquement ceux dont le nom commence par "_"
>
> dans un second temps, pour chaque répertoires,
> dans la colonne correspondante, mais à partir
> de la ligne 2, obtenir la liste des fichiers de ce répertoire
> UNIQUEMENT si
> dans le répertoire concerné, il existe un fichier nommé
> "maj.txt" (arbitrairement)
>
> j'ai bien trouver des macros vba pour la liste des dossiers, de leur
> contenu
> ainsi que des sous dossier ... mais je n'arrive pas en extraire
> les éléments pour avoir "uniquement" ma recherche.
>
> Une âme éclairée (et éclairante) passera-t-elle par ici ?
>
> Merci
> José


JB
Le #18702451
Bonjour,

Sub ListeRep()
repertoire = "c:mesdoc"
[A:A].ClearContents
NomRep = Dir(repertoire, vbDirectory)
i = 2
col = 1
Do While NomRep <> ""
If NomRep If (GetAttr(repertoire & NomRep) And vbDirectory) =
vbDirectory Then
If Left(NomRep, 1) = "E" Then
Cells(1, col) = NomRep
col = col + 1
End If
End If
End If
NomRep = Dir
Loop
For col = 1 To [IV1].End(xlToLeft).Column
temp = repertoire & "" & Cells(1, col) & "*.*"
nf = Dir(temp)
i = 2
Do While nf <> ""
Cells(i, col) = nf
i = i + 1
nf = Dir
Loop
Next col
End Sub

JB



On 18 fév, 15:06, Alfred WALLACE
Bonjour JB et merci pour ton aide,
j'ai voulu adapter ton code à ce que je souhaite faire
mais, je pédale ....grave ....

grace à ton code, j'arrive à trouver les repertoires qui commencent
pas "_" OK.

Mais, pour chacun de ces repertoires j'aimerai mettre la liste des
fichiers qu'il contiend
exemple :

_rep1    _rep2   _repX
fic1      lolo       toto
fic2      lulu       titi
fic2                  tutu

en fait, ton code s'arrete au contenu du premier repertoire, car (si
je comprend bien)
il y a un exit sub.

J'ai l'impression que l'on ne peut pas utiliser la fonction DIR dans
un repertoire, puis,
dans le sous-dossier concerné....

Merci pour ton aide.

José

JB a écrit :



> Bonjour,

> Sub ListeRep()
>   repertoire = "c:mesdoc"
>   [A:A].ClearContents
>   NomRep = Dir(repertoire, vbDirectory)
>   i = 2
>   Do While NomRep <> ""
>      If NomRep >         If (GetAttr(repertoire & NomRep) And vbDirectory) =
> vbDirectory Then
>            If Left(NomRep, 1) = "E" Then
>               temp = repertoire & "" & NomRep & "*.*"
>               nf = Dir(temp)
>               Do While nf <> ""
>                 Cells(i, 1) = nf
>                 i = i + 1
>                 nf = Dir
>               Loop
>               Exit Sub
>            End If
>         End If
>      End If
>      NomRep = Dir
>   Loop
> End Sub

> JB
>http://boisgontierjacques.free.fr

> On 16 fév, 17:31, Alfred WALLACE > > Bonsoir
> > je tourne en boucle (si je puis dire ...)

> > dans une feuille nommée paramétres
> > j'aimerai que de sur la premier
> > ligne qui commence en A1 obtenir
> > la liste des répertoires du dossier en cours (ActiveWorkbook.Path)
> > Mais uniquement ceux dont le nom commence par "_"

> > dans un second temps, pour chaque répertoires,
> > dans la colonne correspondante, mais à partir
> > de la ligne 2, obtenir la liste des fichiers de ce répertoire
> > UNIQUEMENT si
> > dans le répertoire concerné, il existe un fichier nommé
> > "maj.txt" (arbitrairement)

> > j'ai bien trouver des macros vba pour la liste des dossiers, de leur
> > contenu
> > ainsi que des sous dossier ... mais je n'arrive pas en extraire
> > les éléments pour avoir "uniquement" ma recherche.

> > Une âme éclairée (et éclairante) passera-t-elle par ici ?

> > Merci
> > José- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -


Alfred WALLACE
Le #18703201
Bon, ben là .. je suis é poustouflé ! clap !!!! clap !!!!! clap !!!!!
clap !!!!!

Merci ton code fonctionne très bien
je mettrais juste repertoire = ActiveWorkbook.Path & "" pour qu'il
puisse fonctionner
dans un autre dossier principal.

Merci encore.

José


On 18 fév, 16:18, JB
Bonjour,

Sub ListeRep()
  repertoire = "c:mesdoc"
  [A:A].ClearContents
  NomRep = Dir(repertoire, vbDirectory)
  i = 2
  col = 1
  Do While NomRep <> ""
     If NomRep         If (GetAttr(repertoire & NomRep) And vbDirectory) =
vbDirectory Then
           If Left(NomRep, 1) = "E" Then
            Cells(1, col) = NomRep
            col = col + 1
           End If
        End If
     End If
     NomRep = Dir
  Loop



  For col = 1 To [IV1].End(xlToLeft).Column
     temp = repertoire & "" & Cells(1, col) & "*.*"
     nf = Dir(temp)
     i = 2
     Do While nf <> ""
       Cells(i, col) = nf
       i = i + 1
       nf = Dir
     Loop
  Next col
End Sub

JB



Alfred WALLACE
Le #18703191
Merci pour ton code je vais regarder aussi comment il fonctionne
celuis de JB me convient mais, comme je suis curieux je vais regarder
aussi le tiens.

Merci

José

On 18 fév, 15:43, "Mgr T. Banni"
bonjour alfred
j'assure l'interim de JB
voici une proc de notre grand chef 4 plumes LL

Fichiers contenus dans le répertoire "C:Temp" (pour un autre

répertoire, modifie la propriété LookIn) :

Dim Arr, I As Long, NbFichiers As Long

With Application.FileSearch

.LookIn = "C:Temp"

.FileType = msoFileTypeExcelWorkbooks

.Execute

With .FoundFiles

NbFichiers = .Count

ReDim Arr(1 To NbFichiers)

For I = 1 To NbFichiers

Arr(I) = Dir(.Item(I))

Next I

End With

End With

With UserForm1.ComboBox1

.Clear

.List = Arr

.ListIndex = 1

End With

UserForm1.Show

HTH

Mgr T.B.

"Alfred WALLACE"
Bonjour JB et merci pour ton aide,
j'ai voulu adapter ton code à ce que je souhaite faire
mais, je pédale ....grave ....

grace à ton code, j'arrive à trouver les repertoires qui commencent
pas "_" OK.

Mais, pour chacun de ces repertoires j'aimerai mettre la liste des
fichiers qu'il contiend
exemple :

_rep1    _rep2   _repX
fic1      lolo       toto
fic2      lulu       titi
fic2                  tutu

en fait, ton code s'arrete au contenu du premier repertoire, car (si
je comprend bien)
il y a un exit sub.

J'ai l'impression que l'on ne peut pas utiliser la fonction DIR dans
un repertoire, puis,
dans le sous-dossier concerné....

Merci pour ton aide.

José

JB a écrit :

> Bonjour,

> Sub ListeRep()
>   repertoire = "c:mesdoc"
>   [A:A].ClearContents
>   NomRep = Dir(repertoire, vbDirectory)
>   i = 2
>   Do While NomRep <> ""
>      If NomRep >         If (GetAttr(repertoire & NomRep) And vbDirectory) =
> vbDirectory Then
>            If Left(NomRep, 1) = "E" Then
>               temp = repertoire & "" & NomRep & "*.*"
>               nf = Dir(temp)
>               Do While nf <> ""
>                 Cells(i, 1) = nf
>                 i = i + 1
>                 nf = Dir
>               Loop
>               Exit Sub
>            End If
>         End If
>      End If
>      NomRep = Dir
>   Loop
> End Sub

> JB
>http://boisgontierjacques.free.fr

> On 16 fév, 17:31, Alfred WALLACE > > Bonsoir
> > je tourne en boucle (si je puis dire ...)

> > dans une feuille nommée paramétres
> > j'aimerai que de sur la premier
> > ligne qui commence en A1 obtenir
> > la liste des répertoires du dossier en cours (ActiveWorkbook.Path)
> > Mais uniquement ceux dont le nom commence par "_"

> > dans un second temps, pour chaque répertoires,
> > dans la colonne correspondante, mais à partir
> > de la ligne 2, obtenir la liste des fichiers de ce répertoire
> > UNIQUEMENT si
> > dans le répertoire concerné, il existe un fichier nommé
> > "maj.txt" (arbitrairement)

> > j'ai bien trouver des macros vba pour la liste des dossiers, de leur
> > contenu
> > ainsi que des sous dossier ... mais je n'arrive pas en extraire
> > les éléments pour avoir "uniquement" ma recherche.

> > Une âme éclairée (et éclairante) passera-t-elle par ici ?

> > Merci
> > José


Publicité
Poster une réponse
Anonyme