Hicham's arborescence v 1.0

Soyez le premier à donner votre avis sur cette source.

Vue 3 910 fois - Téléchargée 279 fois

Description

Cette application permet de copier l'arborescence d'un dossier source et de la coller dans un dossier cible. Mais seules les dossiers sont pris en compte, les fichiers sont ignorés. Au fait je l'ai créé pour mes besoins personnels et je la partage avec vous.

Source / Exemple :


' C'est uniquement le code de la première feuille. Pour voir l'intégralité du code, téléchargez le fichier zip.
Public Sub scan_sup_files(ByVal dossier As Folder)

 Set fso = New FileSystemObject
    For Each fichier In dossier.Files
        fso.DeleteFile fichier
    Next

    For Each sousdossier In dossier.SubFolders
        scan_sup_files sousdossier
    Next

End Sub
Private Sub Command2_Click()
Dim fso As New FileSystemObject, dossier As Folder, sousdossier As Folder, fichier As File
Set fso = New FileSystemObject
fso.CreateFolder Text1.Text & "\tempon"
fso.CopyFolder Form1.Dir1.Path, Text1.Text & "\tempon"
Set dossier = fso.GetFolder(Text1.Text & "\tempon")
scan_sup_files dossier
fso.CopyFolder Text1.Text & "\tempon", Text1.Text
fso.DeleteFolder Text1.Text & "\tempon"
MsgBox ("L'arborescence a été refaite avec succés")

End Sub

Private Sub Command3_Click()
Form2.Show
Form1.Hide
End Sub

Private Sub Dir1_Change()
File1.Path = Dir1.Path
End Sub

Private Sub Drive1_Change()
Dir1.Path = Drive1.Drive

End Sub

Private Sub Form_Load()
Form1.Caption = "Hicham's Arborescence V 1.0"
End Sub

Private Sub Form_Unload(Cancel As Integer)
End
End Sub

Conclusion :


Si vous avez des questions a propos du code-source, n'hésitez pas à me contacter. Merci.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
14
@BADDANTE : L'API est bien plus rapide ... Essaie d'énumérer récursivement les fichiers de C:\WINDOWS, tu vas vite t'en rendre compte.
Messages postés
33
Date d'inscription
mercredi 1 mars 2006
Statut
Membre
Dernière intervention
24 février 2008

Salut,

aucun intéret d'utiliser des APIs, FSO, est très bien pour se substituer aux fonctions de fichiers de VB.

Optimisation : si tu veux uniquement créé une arborescence, pas la peine d'utiliser ".copyfolder", "createfolder" sera suffisant.
Actuellement ton "prog" copy tous les dossiers et sous-dossier et efface les fichiers !

Tu pourrais enrichir : une pseudo-fonction compatibilité ISO (CDROM/DVD) max 8 niveaux de sous-arborescence.

Enregistrement / Export de l'arborescence sous différent format, voir dans une base de données. Exclusions de dossiers, "template" d'exclusions ("xxxx.tmp","copie de...",etc...) etc...

Faire un mode batch (ligne de commande).

Dégager les boites de dialogues VB, utiliser celle du Shell "BROWSEFORFOLDER" (http://www.robvanderwoude.com/vbstech_ui_browsefolder.php) te permettra de rentre plus "portable" ton programme (VB, VBA, VBScript)
Messages postés
2
Date d'inscription
mardi 14 janvier 2003
Statut
Membre
Dernière intervention
11 octobre 2010

du bon vieux DOS
xcopy c:/toto c:/tata /T /E
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
14
Pour une petite arborescence tu n'auras pas de problèmes mais si tu prends un "gros" répertoire tu vas commencer à voir ton programme ralentir ...
Messages postés
24
Date d'inscription
mercredi 27 juillet 2005
Statut
Membre
Dernière intervention
21 janvier 2014

D'accord merci pour la remarque. Mais pourquoi ça ne cause pas de problème lors de la compilation et de l'exécution, je l'ai testé et il marche très bien ?
Afficher les 6 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.