Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : recherche recursive [ Divers / Débutants ] (T103)

mardi 25 mars 2008 à 10:17:08 | recherche recursive

T103

Bonjour,

Jai une fonction qui doit me retourner le fichier pdf le plus recent dans un repertoire et dans les sous repertoires :

Public Function recher(Chemin As String)
Dim fich As String
Dim chemCompl As String
Dim newchem As String
Dim datFich As String
Dim Fso As Object, FileItem As Object, oSousRep As Object, objrepInit As Object
Dim Tableau()
Dim m As Integer, i As Integer
Dim z As Byte, Valeur As Byte
Dim Cible As Variant

  
fich = Dir(Chemin & "\*.pdf")
Do

    m = m + 1
    ReDim Preserve Tableau(2, m)
    Tableau(1, m) = fich
                  
    Set Fso = CreateObject("Scripting.FileSystemObject")
    Set FileItem = Fso.GetFile(Chemin & "\" & fich)

    Tableau(2, m) = Left(FileItem.DateCreated, 8)
                  
    fich = Dir
   
    Set objrepInit = Fso.GetFolder(Chemin)
    Set oSousRep = objrepInit.SubFolders
    recher (oSousRep.Name)<----erreur l'objet ne gere pas cette methode ou cette proprieté
   
Loop Until fich = ""

Mais j'ai une erreur au moment de l'appel de ma fonction recursive...

Merci de votre aide


mardi 25 mars 2008 à 10:20:28 | Re : recherche recursive

jrivet

Membre Club
Salut,
merci de préciser l'erreur...

@+: Ju£i€n
Pensez: Réponse acceptée

mardi 25 mars 2008 à 10:25:07 | Re : recherche recursive

jrivet

Membre Club
Re,
OUPPS, réellement confus, je n'avais pas lu le code en entier.
Je te pris d'accepter mes excuses.


L'erreur vient du fait que un objet SubFolders ne contient pas la propriété Name

=> voir l'aide sur FileSystemObject.
Tu peux ajouter Microsoft Scripting Runtime pour avoir les objets disponibles du FileSystemObject

ce qu'il faudrait faire c'est:

Public Function recher(Chemin As String)
Dim fich As String
Dim chemCompl As String
Dim newchem As String
Dim datFich As String
Dim Fso As Object, FileItem As Object, oSousRep As Object, objrepInit As Object
Dim Tableau()
Dim m As Integer, i As Integer
Dim z As Byte, Valeur As Byte
Dim Cible As Variant

 
fich = Dir(Chemin & "\*.pdf")
Do

   m = m + 1
   ReDim Preserve Tableau(2, m)
   Tableau(1, m) = fich
                 
   Set Fso = CreateObject("Scripting.FileSystemObject")
   Set FileItem = Fso.GetFile(Chemin & "\" & fich)

   Tableau(2, m) = Left(FileItem.DateCreated, 8)
                 
   fich = Dir

   Set objrepInit = Fso.GetFolder(Chemin)
'    Set oSousRep = objrepInit.SubFolders
   For Each oSousRep In objrepInit.SubFolders
      Call recher(oSousRep.Name)
   Next oSousRep

Loop Until fich = vbNullString
By Renfield



@+: Ju£i€n
Pensez: Réponse acceptée



Cette discussion est classé dans : tableau, chemin, fso, stringdim, fich


Répondre à ce message

Sujets en rapport avec ce message

Fso.CopyFolder (Type Incompatible) [ par Hansol ] Voilà, je veux copier un document complet appeler "UserData" vers un document nouvellement créé appeler "SavesFiles". Et lorsque j'applique la command Recuperer la version d'un fichier.vxd [ par CanisLupus ] Bonjour,Quelqu'un saurait-il comment récupérer + simplement et + rapidement que moi la version d'un fichier VxD sur une plateforme Win98 ?Dans l'exemp Les tableaux avec VB [ par mbelha ] J'ai un source qui scan le disk pour voir la taille des repertoirs, je souhait utiliser un tableau pour les trier du plus gros au plus petit. Voila le CHEMIN DISTANT [ par guguk ] bonjour,voilà! j'ai un problème. (énoncé un peu long pour être clair (?))J'ai écrit une application en vb6 qui est en fait une interface installée sur Suppression d'un fichier par FSO [ par phantom_2005 ] Bonjour,j'aimerais supprimer un fichier avec la méthode du FileSystemObject mais je n'y parvient pas.Voici mon code:[Code]Private Sub EffacerTout_Clic Tableau pour arborescence virtuellement infinie [ par malalam ] Salut a tous, j'ai besoin d'avis...j'essaye de reflechir a ca tout seul dans mon coin, mais bon, il ne fait pas beau ici a Nuremberg, c'est le milieu Intégrer une API dans VBA pour récuperer la taille de fichier de plusieurs giga [ par Cybertat ] Bonjour à tous, J'ai essayé désespérement de récupérer la taille de plusieurs fichiers de plusieurs Go (jusqu'à 30) en utilisant les FSO, la FileSear Problème de CopyFolder [ par neo1602brice ] Salut à tous,J'ai une erreur sur mon copyFolder, J'obitens l'erreur suivante:Erreur d'exécution '-2147023570 (8007052e)':La méthode 'CopyFolder' de l' extraire des infos d'1 fichier text en vb [ par kg_online ] Bonjour tout le monde,   j'ai crée un fichier config (fichier text ) sur mon buro et j'aimerai utiler les données qui s'y trouvent dans un programme p complément macro copie [ par laurent56380 ] Bonjour, voici le code que l'on m'a créé et qui fonctionne très bien.Mais aujourd'hui j'ai un nouveau travail a faire.Je dois toujours copier les plag


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,468 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.