effectuer une sauvegarde sur clé USB

stormseye

XLDnaute Nouveau
Bonjour à tous,
Afin de fiabiliser la sauvegarde d'un classeur je souhaite que celui-ci soit sauvegardé régulièrement sur une clé USB.
Pour ce faire, j'ai pensé à un code de cette forme mais je ne sais pas finir de le rédiger :

Private Sub Workbook_open ()
Dim name as string

If datesave + 2mois > date j Then
If clé USB nommée "save" est connectée Then
If dossier C:\save_excel existe Then
Sheets("Acceuil").Activate
name = "C:\save_excel\" & Range("A1").Value & datej
ActiveWorkbook.Save As Filename:= name
SetAttr name, vbHidden + vbReadOnly
Else
MkDir "C:\save_excel"
Sheets("Acceuil").Activate
name = C:\save_excel\ & Range("A1").Value & datej
ActiveWorkbook.Save As Filename:= name
SetAttr name, vbHidden + vbReadOnly
End If

Else
MsgBox ("Veuillez connecter la clé USB à l'ordinateur pour que la sauvegarde soit éffectuée")
End If

End If
End Sub

Pouvez vous me venir en aide pour finir la rédaction de ce code ?
 
Dernière édition:

gilbert_RGI

XLDnaute Barbatruc
Re : effectuer une sauvegarde sur clé USB

Bonjour

déjà il faut savoir ou reconnaitre si une clé_usb est branchée sur l'ordi

Code:
Sub cle_usb()
    Dim oFSO, oDrv, w, i
    Set oFSO = CreateObject("Scripting.FileSystemObject")
    Set colDrives = oFSO.Drives
    w = colDrives.Count
    For Each oDrv In oFSO.Drives
    
        If oDrv.DriveType = "1" And oDrv.IsReady Then
            Set oDrv = oFSO.GetDrive(oDrv.DriveLetter)
            MsgBox "Oui il y a bien une clé qui à la lettre    : " & oDrv.DriveLetter
            i = i - 1
        End If
        i = i + 1
        
    Next
    If i = w Then MsgBox "Pas de clé branchée"
End Sub
ensuite faire une sauvegarde sur cette lettre :rolleyes:
 
Dernière édition:

stormseye

XLDnaute Nouveau
Re : effectuer une sauvegarde sur clé USB

Merci beaucoup pour cette réponse.
Cependant, est il possible de chercher la clé usb par rapport à son nom et non par rapport à sa lettre,

De plus, quelqu'un connait il le code pour savoir si un dossier existe et aussi pour comparer la date du jour à une date antérieure.

En vous remerciant,
Storms-eye.
 

gilbert_RGI

XLDnaute Barbatruc
Re : effectuer une sauvegarde sur clé USB

DriveType = "1" n'est pas la lettre du volume mais le type de disk dans le cas d'une clè il s'agit d'un disk amovible
pour le nom
VolumeName dans le code ça correspond au nom de la clé

Code:
If oDrv.VolumeName = "tartempion" then ........
 
Dernière édition:

Discussions similaires