2 directions dans ChDir

Darkblaste

XLDnaute Nouveau
Bonjour le forum voila je suis tjrs avec ma macro et je souhaite que celle ci aille lister les fichier de deux repertoires differents. Est il possible de se servir d'un ChDir pour cela??
Voici la partie de mon code:
Code:
Private Sub ListView1_DblClick()
    ChDir ActiveWorkbook.Path
    On Error Resume Next
    Workbooks.Open ListView1.SelectedItem.Text
End Sub

Merci
 
P

Pierrot93

Guest
Bonjour DarkBlaste

essaies le code ci dessous ca devrait marcher


Public Const MonRepert = 'D:\\DONNEES\\'
Sub Test()
Dim fs As FileSearch
Set fs = Application.FileSearch

With fs
.LookIn = MonRepert
.FileName = 'nom du fichier recherché'
If .Execute = 0 Then
MsgBox 'Le fichier n'existe pas !!!'
Else


End If
End With

End Sub
 

Darkblaste

XLDnaute Nouveau
Salut Pierrot93

Heu dsl mais je comprend pas trop ton code la comment il va chercher mes fichiers dans 2 repertoir different par exemple:

Code:
\\VBA\\rep1
\\VBA\\rep5

Merci

Ps: c'est quoi ta constante Const?? et je fait ça à partir d'un userform

Merci

Message édité par: Darkblaste, à: 18/04/2006 11:56
 
P

Pierrot93

Guest
Re

Ce bout de code permet de rechercher 1 fichier dans tous les dossiers, sous dossiers, 'D:DONNEES\\' (D est la lettre du disque dur). Pour toi si tu veux rechercher dans VBA la constante sera C:VBA\\

Une constante est un élément nommé, que tu utilise dans le code, un peu comme une variable, qui garde la même valeur tout au long de lexécution.

Tu éxécute le tout au travers dune macro et non dun userform.

@+
 
P

pierrot93

Guest
Re

il faut remonter d'un ou de 2 crans dans l'arborescence, prendre le dossier le plus haut qui contient les 2 répertoires. Je ne connais pas la façon dattaquer 2 répertoires différents si ce nest doubler la macro. Essaies le code ci dessous, n'oublies pas de modifier les noms des dossiers dans la définition de la variable MonRepertoire (tu peux en supprimer ou rajouter).

bon courage

Sub RechFichier()
Dim MonRepertoire As String

Set fs = Application.FileSearch
MonRepertoire = 'C:\\nomdudossier\\nomdudossier\\nomdudossier '
With fs
.LookIn = MonRepertoire
.FileName = '*.*'
If .Execute > 0 Then
MsgBox 'Ce dossier contient ' & .FoundFiles.Count & _
' fichier(s) répondant aux critères.'
For i = 1 To .FoundFiles.Count
ActiveCell.Value = .FoundFiles(i)
ActiveCell.Offset(1, 0).Select
Next i
Else
MsgBox 'Aucun fichier n'a été trouvé.'
End If
End With

End Sub
 

Hervé

XLDnaute Barbatruc
bonjour darkblast, pierrot

ce type de code liste dans les colonnes 1 et 2 les fichiers se trouvant dans 2 chemins different.


Public Sub toto()
Dim rep As String
Dim chemin
Dim Ligne As Integer
Dim colonne As Byte
Dim element

For Each chemin In Array('C:\\\\\\\\WINDOWS\\\\\\\\system\\\\\\\\*.???', 'C:\\\\\\\\WINDOWS\\\\\\\\system32\\\\\\\\*.???')
        Ligne = 1
       
If colonne = 0 Then colonne = 1 Else colonne = 2
        rep = Dir(chemin)
       
While not rep = ''
                Cells(Ligne, colonne) = rep
                rep = Dir
                Ligne = Ligne + 1
        Wend
Next chemin


End Sub

les chemins sont stockés dans le array.

salut
 

Darkblaste

XLDnaute Nouveau
:woohoo: POST RESOLUT

comme quoi la perceverance paye :p

J'ai trouvé d'ou venai le probleme, j'avai bien adapté ton code Hervé mais le soucis venais de plus loin dans mon code avec la recherche de la taille, de la date et des icones des fichiers dans le chemin... j'ai enlevé donc ces options :whistle:
 

Hervé

XLDnaute Barbatruc
re

ben, c'est un peu dommage de faire sauter des options à cause d'un code qui bug, non ?

Si j'ai bien compris, tu veux lister dans une listview les fichiers d'un répertoire, ainsi que les icones et les dates.

je te conseille donc la lecture de se post :

Lien supprimé

ou l'ami MichelXLD, à généreusement effectué un superbe travail qui à mon avis devrait t'aider.

salut
 

Darkblaste

XLDnaute Nouveau
Bonsoir Hervé,

Bein en fait c'est a partir de ce fichier que je suis partie, et je tente constament de l'amelioré (c pas mal pour débuté en VBA en plus d'etre tres utile) mais la je bloque sur plusieur petit truck :pinch:

Je croi que je v creer un autre topic comme le dit la charte ( hé ui je l'ai lu :p )donc le probleme n'étant plus trop le meme je vais en faire un autre

Merci a toi pour ton aide tu m'as trés bien aidé
Merci aussi au forum
 

Discussions similaires

Statistiques des forums

Discussions
312 347
Messages
2 087 502
Membres
103 563
dernier inscrit
samyezzehar