Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Auto-Backup funktioniert nicht

Begonnen von mariaz3565, Juli 28, 2015, 11:55:55

⏪ vorheriges - nächstes ⏩

mariaz3565

Hallo! Ich möchte ein tägliches Backup meiner Access-DB machen.

Folgendes habe ich in VBA eingegeben:

Private Sub Form_Open(Cancel As Integer)
DB_Sicher
End Sub

Public Function DB_Sicher()
     Dim Quelldatei As String, Zieldatei As String, oFSO As FileSystemObject
     Dim y As String, z As String
     Dim intAttr As Integer
     
     Quelldatei = CurrentProject.FullName
     y = CurrentProject.Path
     z = CurrentProject.Name
     Zieldatei = y & "\accessbackups\" & Left(z, Len(z) - 4) & "_" & _
                 Year(Now) & "_" & Month(Now) & "_" & Day(Now) & ".mdb"
     Set oFSO = CreateObject("Scripting.FileSystemObject")
     If Dir(Zieldatei) <> "" Then
         intAttr = GetAttr(Zieldatei)
         If intAttr And vbReadOnly Then SetAttr Zieldatei, intAttr - vbReadOnly
         oFSO.DeleteFile Zieldatei
     End If
     oFSO.CopyFile Quelldatei, Zieldatei, True
     SetAttr Zieldatei, vbReadOnly
     MsgBox "Es wurde eine Sicherheitskopie unter " & Zieldatei & " erstellt"
End Function


Eigentlich sollte doch mit     y = CurrentProject.Path     klar sein, wohin gespeichert werden soll. Aber leider wird kein Backup erstellt. (Ich bekomme auch nicht die Msgbox) Warum?

:-(

Danke und lg
Mary

DF6GL

Hallo,

der Code an sich funktioniert...
Ist sichergestellt, dass es das Verzeichnis "accessbackups" unterhalb des DB-Verzeichnisses gibt?

ebs17

Eine laufende Datenbank kopiert sich selbst und die Kopie soll als Sicherheit gelten?? Den zweiten Halbpunkt möchte ich anzweifeln.
Siehe Datenbank-Backup aus VBA.
Mit freundlichem Glück Auf!

Eberhard

mariaz3565

Hallo und danke für eure Antworten - ich war auf Urlaub :-)

Meine Datenbank liegt auf dem Laufwerk G:/Arbeitsversionen/LOGBUCH

und in dem Ordner LOGBUCH gibt es einen Ordner accessbackups.

Ich habe es jetzt nocheinmal probiert - aber Backup wird keines erstellt.

@ebs17: Danke für den Hinweis. Momentan habe ich noch kein Backend. Aber dann ist die Variante sicher besser! Dankeschön!

lg
Mary

MaggieMay

#4
Hi,
Zitataber Backup wird keines erstellt.
wie stellst du das fest?
ZitatIch bekomme auch nicht die Msgbox
Das kann ja gar nicht sein, es sei denn die Prozedur wird mit Fehlermeldung abgebrochen.
Wie sehen denn deine Einstllungen bzgl. Fehlerbehandlung aus?
Freundliche Grüße
MaggieMay

ebs17

Falls das nicht richtig angekommen ist:
Ein Kopieren aus sich selber kann schon funktionieren (als solches), aber ob eine solche Kopie im Ernstfall sicher als Sicherkeitskopie verwendbar und nicht etwa teilweise zerschossen ist - da stellen sich erhebliche Zweifel.

Typischerweise würde man eine geschlossene DB kopieren, dann eben mit einem externen Script.
Mit freundlichem Glück Auf!

Eberhard

mariaz3565

Hallo!

Danke für eure Rückmeldungen - ich habe mir das nochmals durch den Kopf gehen lassen und bemühe jetzt unsere IT mit einem automatischen Backup außerhalb von VBA  ;D

lg
Mary