Drivelistbox dirlistbox filelistbox

Soyez le premier à donner votre avis sur cette source.

Snippet vu 11 671 fois - Téléchargée 28 fois

Contenu du snippet

Voici un programme qui sert a la base à copier un fichier JPG à partir d?une carte de stockage d?appareilles photo vers deux disques durs.
Mais comme on choisie les supports : cartes mémoires, disques durs?
Libre a vos besoins : un fichier source copier vers deux destinations.

A partir d?un DriveListBox où on sélectionne le support voulue, DirListBox où on sélectionne le dossier et une FileListBox où on sélectionne le fichier source vers deux destinations constitué chacune d?une DriveListBox où on sélectionne le support voulue et DirListBox où on sélectionne le dossier de destination et un bouttont Command copier.

Etant un débutant en la matière j?ai cherché du code et là je me suis trouvé face à un langage très scolaire et vraiment pas facile à décoder sans base solide.
Donc peut être que ces quelques lignes pourront aider quelqu?un ?
A savoir je n?ai pas géré les erreurs.

Source / Exemple :


Private Sub Command1_Click()

    Dim RepSource As String 'on déclare nos variables
    Dim fichierSource As String
    Dim RepDest1 As String
    Dim RepDest2 As String
    Dim RepDest3 As String
    Dim RepDest4 As String      

    RepSource = Dir1.Path 'addresse du dossier source
    fichierSource = RepSource & "\" & File1.FileName 'addresse du dossier source + nom du fichier source    

    RepDest1 = Dir2.Path 'addresse du dossier de destination 1
    RepDest2 = RepDest1 & "\" & File1.FileName 'addresse du dossier de destination 1 + nom du fichier source    

    RepDest3 = Dir3.Path 'addresse du dossier de destination 2
    RepDest4 = RepDest3 & "\" & File1.FileName 'addresse du dossier de destination 2 + nom du fichier source     
    
     FileCopy fichierSource, RepDest2 'Copie du fichier vers dossier de destination 1
     FileCopy fichierSource, RepDest4 'Copie du fichier vers dossier de destination 2 
    
     File2.Path = File2.List(File2.ListIndex - 1) 'actualisation du dossier de destination 1
     File2.Refresh     
     
     File3.Path = File3.List(File3.ListIndex - 1)  'actualisation du dossier de destination 2
     File3.Refresh

   
End Sub

Private Sub Dir1_Change()
 
    File1.Path = Dir1.Path 'Liaison entre FileListBox 1 et DirListBox 1
    Selecteddir = Dir1.Path

End Sub

Private Sub Dir2_Change()
    
    File2.Path = Dir2.Path 'Liaison entre FileListBox 2 et DirListBox 2
    Selecteddir = Dir2.Path
    
End Sub

Private Sub Dir3_Change()

    File3.Path = Dir3.Path'Liaison entre FileListBox 3 et DirListBox 3
    Selecteddir = Dir3.Path

End Sub

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

End Sub

Private Sub Drive2_Change()

    Dir2.Path = Drive2.Drive
    
End Sub

Private Sub Drive3_Change()
    
    Dir3.Path = Drive3.Drive
    
End Sub

Conclusion :


Bonne Programmation simple et efficace.

A voir également

Ajouter un commentaire Commentaires
Messages postés
1
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
12 avril 2006

Bonjour Willi,
Tu as raison si tu prends un fichier et que tu le copie au même endroit cela génère une erreur.
Mais je ne voie pas l'intérêt.
Comme j'ai noté dans la description les erreurs ne sont pas gérées : pour ne pas charger le programme. Avoir une lecture claire du code qui m?intéresse et ma priorité.
Maintenant rien n'empêche de développer le code comme tu l'entends.
Merci de m?avoir laissé un commentaire celui à été constructif il m?a permis de mieux m?expliquer.
Messages postés
2375
Date d'inscription
jeudi 12 juillet 2001
Statut
Modérateur
Dernière intervention
15 décembre 2018
21
Ont n'est jamais sur que le répertoire source soit la racine d'un lecteur ou bien un répertoire.
Je reprend ton code:
RepSource = Dir1.Path
fichierSource = RepSource & "" & File1.FileName

Si RepSource = C:\ tu auras un double \ dans le chemin final fichierSource, donc erreur de chemin.

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.