Discussion:
automatisches Speichern eines Backups in einem anderern Verzeichni
(zu alt für eine Antwort)
Tim Stammberg
2004-12-21 01:39:01 UTC
Permalink
Hallo NG,
um die Historie einer Datei verfolgen zu können, würde ich gerne beim Öffnen
der Datei diese als Backup mit dem Datum als Zusatz im Dateinamen in einem
anderen Verzeichnis speichern.
wenn die Datei mit speichern geschlossen wird, so soll die Datei ihren
Ursprungsnamen beibehalten.
Bsp. Ursprungsname: c:\daten\test.xls
Öffnen: c:\daten\test.xls wird geöffnet und eine Sicherung wird in das
Verzeichnis c:\backup\test_XX_XX_XX.xls abgelegt.
Ist jemandem ein Weg bekannt wie ich das realisieren kann. Diese
Modifikation soll sich dann nur auf die Datei test.xls beziehen und nicht für
alle xls Dateien gelten.
Vielen Dank für eure Hilfe und frohe Weihnachten
Tim
stefan onken
2004-12-21 11:09:01 UTC
Permalink
hallo Tim,
es gibt im Datei/Speichern unter- Dialog bei Extras/Allgemeine Optionen (so
für Excel XP, andere Versionen unterscheiden sich da glaube ich etwas) ein
Kontrollkästchen "Sicherungsdatei erstellen". Die Sicherungsdatei wird dann
allerdings im selben Verzeichnis wie die Originaldatei erstellt, und der
Dateiname ist vorgegeben (Sicherungskopie von Datei.xlk).

Evtl ist autosave.zip auf http://www.jkp-ads.com/Download.htm für dich
interessant.

Wenn du eine individuelle Lösung willst, musst du ein (VBA)-Makro
programmieren.
Im VBA-Editor (zu erreichen über Alt+F11) im Modul DieseArbeitsmappe:

Private Sub Workbook_Open()
On Error GoTo errhandler
If ThisWorkbook.Name = "test.xls" Then
ThisWorkbook.SaveCopyAs _
"C:\backup\test " & Date & ".xls"
End If
Exit Sub
errhandler:
MsgBox "Eine Sicherungskopie konnte nicht erstellt werden!"
End Sub

Mit Private Sub Workbook_BeforeSave () kann man beeinflussen, was beim
Speichern passieren soll.

Melde dich wieder, wenn du weitere Hilfe oder ein Bsp-Datei brauchst.

Gruß
stefan
Post by Tim Stammberg
Hallo NG,
um die Historie einer Datei verfolgen zu können, würde ich gerne beim Öffnen
der Datei diese als Backup mit dem Datum als Zusatz im Dateinamen in einem
anderen Verzeichnis speichern.
wenn die Datei mit speichern geschlossen wird, so soll die Datei ihren
Ursprungsnamen beibehalten.
Bsp. Ursprungsname: c:\daten\test.xls
Öffnen: c:\daten\test.xls wird geöffnet und eine Sicherung wird in das
Verzeichnis c:\backup\test_XX_XX_XX.xls abgelegt.
Ist jemandem ein Weg bekannt wie ich das realisieren kann. Diese
Modifikation soll sich dann nur auf die Datei test.xls beziehen und nicht für
alle xls Dateien gelten.
Vielen Dank für eure Hilfe und frohe Weihnachten
Tim
Tim Stammberg
2005-03-10 10:02:24 UTC
Permalink
Danke für diesen Hinweis und das Beispiel VBA das hat wunderprächtig
funktioniert, mir ist nur eins nicht klar ich wollte das VBS um die Uhrzeit
erweitern und das habe dazu folgendes gemacht:
ThisWorkbook.SaveCopyAs _"C:\backup\test " & Date" & Time &".xls"
erweitert, das funktioniert aber nicht. Auch andere Varianten die Uhrzeit
(Time) in dem Dateinamen unterzubringen war nicht möglich.
Weiß jemand Rat?
Gruß
Tim
Post by stefan onken
hallo Tim,
es gibt im Datei/Speichern unter- Dialog bei Extras/Allgemeine Optionen (so
für Excel XP, andere Versionen unterscheiden sich da glaube ich etwas) ein
Kontrollkästchen "Sicherungsdatei erstellen". Die Sicherungsdatei wird dann
allerdings im selben Verzeichnis wie die Originaldatei erstellt, und der
Dateiname ist vorgegeben (Sicherungskopie von Datei.xlk).
Evtl ist autosave.zip auf http://www.jkp-ads.com/Download.htm für dich
interessant.
Wenn du eine individuelle Lösung willst, musst du ein (VBA)-Makro
programmieren.
Private Sub Workbook_Open()
On Error GoTo errhandler
If ThisWorkbook.Name = "test.xls" Then
ThisWorkbook.SaveCopyAs _
"C:\backup\test " & Date & ".xls"
End If
Exit Sub
MsgBox "Eine Sicherungskopie konnte nicht erstellt werden!"
End Sub
Mit Private Sub Workbook_BeforeSave () kann man beeinflussen, was beim
Speichern passieren soll.
Melde dich wieder, wenn du weitere Hilfe oder ein Bsp-Datei brauchst.
Gruß
stefan
Post by Tim Stammberg
Hallo NG,
um die Historie einer Datei verfolgen zu können, würde ich gerne beim Öffnen
der Datei diese als Backup mit dem Datum als Zusatz im Dateinamen in einem
anderen Verzeichnis speichern.
wenn die Datei mit speichern geschlossen wird, so soll die Datei ihren
Ursprungsnamen beibehalten.
Bsp. Ursprungsname: c:\daten\test.xls
Öffnen: c:\daten\test.xls wird geöffnet und eine Sicherung wird in das
Verzeichnis c:\backup\test_XX_XX_XX.xls abgelegt.
Ist jemandem ein Weg bekannt wie ich das realisieren kann. Diese
Modifikation soll sich dann nur auf die Datei test.xls beziehen und nicht für
alle xls Dateien gelten.
Vielen Dank für eure Hilfe und frohe Weihnachten
Tim
arno
2005-03-10 10:20:55 UTC
Permalink
Hi,

guck mal:
Sub VersionSpeichern()
'Datei-Kopie speichern als Pfad&Datei&-JJJJ-MM-TT_hh-mm-ss.xls

Application.EnableCancelKey = xlDisabled
Pfad = "C:\daten\Versionen\" 'benutzerdefinierten Pfad am lokalen
PC eintragen!!

'aktuelle Datei Sichern
If ActiveWorkbook.Path = "" Then 'Datei wurde noch nie gespeichert
Meldung = MsgBox("Speichern Sie die Datei, bevor Sie Versionen
erstellen!", _
16, "Version speichern")
Else 'Datei wurde bereits gespeichert
ActiveWorkbook.Save
'Backup Datei speichern als Pfad&Datei&JJJJ-MM-TT_hh-mm-ss.xls
y = ActiveWorkbook.Name
Datei = Left(y, Len(y) - 4) 'Dateiname ohne ".xls"
x = Now()
Version = "-" & Year(x) & Format(Month(x), "-00-") &
Format(Day(x), "00") _
& "_" & Format(Hour(x), "00-") _
& Format(Minute(x), "00-") & Format(Second(x), "00")
ActiveWorkbook.SaveCopyAs Filename:=Pfad & Datei & Version &
".xls"
End If
End Sub


arno
Herbert Taferner
2005-03-10 10:20:16 UTC
Permalink
Hallo Tim,

du mußt die Punkte und Doppelpunkte aus
Datum und Uhrzeit rausnehmen

ThisWorkbook.SaveCopyAs _
"C:\backup\test_" & Format(Now, "dd_MM_yyyy_hh_mm") & ".xls"


mfg Herbert
Tim Stammberg
2005-03-10 10:59:55 UTC
Permalink
Danke für die schnelle Antwort. Jetzt funktioniert es tadellos.
Post by Herbert Taferner
Hallo Tim,
du mußt die Punkte und Doppelpunkte aus
Datum und Uhrzeit rausnehmen
ThisWorkbook.SaveCopyAs _
"C:\backup\test_" & Format(Now, "dd_MM_yyyy_hh_mm") & ".xls"
mfg Herbert
Herbert Taferner
2005-03-10 11:07:17 UTC
Permalink
Hallo Tim,
Post by Tim Stammberg
Danke für die schnelle Antwort. Jetzt funktioniert es tadellos.
Bitte gern !

mfg Herbert

Loading...