Pour ce qui est du fichier, il faut oublier ça, je ne conserve pas tous les
fichiers exemple que je crée.
Voici le code que tu peux utiliser en le plaçant dans un module standard
Tu lances toute la procédure par cette ligne de code :
Copie_répertoire_Source "c:\Users\Denis\Documents\*.*", "MichD"
La procédure copie tous les répertoires / sous-répertoires et fichiers de
chaque répertoire vers le répertoire de destination "MichD". Ce
répertoire "MichD" sera créé sur ta clé s'il n'existe pas. Au besoin, tu
pourrais écrire ceci comme chemin de destination "toto\titi\tutu" et
la procédure créera tout le chemin si besoin ou seulement un ou 2
répertoires selon le cas.
Ceci était le besoin du demandeur. Il y a sûrement moyen de modifier la
procédure selon ce que tu veux faire. Tu n'es pas très explicite dans tes remarques.
'--------------------------------------------------------------
Sub test()
Copie_répertoire_Source "c:\Users\Denis\Documents\*.*", "MichD"
End Sub
'--------------------------------------------------------------
Sub Copie_répertoire_Source(Répertoire As String, RepDestination)
Dim LecteurSource As String, Prêt As Boolean
Dim LecteurDestination As String
Dim Chemin As String
LecteurSource = Left(Répertoire, 3)
Chemin = Right(Répertoire, Len(Répertoire) - 3)
LecteurDestination = RemovableDisk(LecteurSource)
If LecteurDestination <> "" Then
Prêt = EstPret(LecteurDestination)
If Prêt = False Then
MsgBox "Le lecteur amovible n'est pas prêt."
Exit Sub
End If
Else
MsgBox "Aucun disque amovible détecté."
Exit Sub
End If
'Création du répertoire si nécessaire
Creer_Chemin LecteurDestination, LecteurDestination & RepDestination
DoEvents
'Copie des fichiers vers la destination
Commande = Environ("comspec") & " /c Xcopy /S/E/Y " & _
LecteurSource & Chemin & " " & LecteurDestination & RepDestination & ""
Shell Commande, 0
End Sub
'--------------------------------------------------------------
Function RemovableDisk(MonLecteur As String)
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\" & _
strComputer & "\root\cimv2")
Set colDisks = objWMIService.ExecQuery _
("Select * from Win32_LogicalDisk")
For Each Objdisk In colDisks
'2 constante numérique pour disque dur "removable"
If Objdisk.DriveType = 2 Then
RemovableDisk = Objdisk.Name & ""
Exit Function
End If
Next
End Function
'--------------------------------------------------------------
Function EstPret(Lecteur As String)
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set colDrives = objFSO.Drives
For Each objdrive In colDrives
If Lecteur = objdrive & "" Then
If objdrive.IsReady = True Then
EstPret = objdrive.IsReady
End If
End If
Next
End Function
'--------------------------------------------------------------
Sub Creer_Chemin(Racine, Chemin As String)
Dim Commande As String
'Crée le chemin indiqué si les répertoires ne
'sont pas présents. N'écrase rien !
ChDrive Racine
Commande = Environ("comspec") & " /c mkdir " & Chemin
Shell Commande, 0
End Sub
'--------------------------------------------------------------
"Kashim37" a écrit dans le message de groupe de discussion : ******@communitybridge2.codeplex.com.excel...
Bonjours,
Dans le cadre de mon projet de fin d'études je suis assez interesser pas ce genre de sauvegarde sur clef usb, cependant je craint que le lient soit mort, serait tu me l'envoyer par mails s'il te plait?
Merci
http://answers.microsoft.com/message/a8e0e4dc-4c90-4a38-a13b-7a606b89699a?threadId=25cdc6cc-1706-4c04-9a62-71f0baf1a8f8
Meta tags: windows_vista; excel; office_2003
Wed, 30 May 2012 06:58:44 +0000: CreateMessage Kashim37