Hallo Experten,
letzte Woche wurde mir geholfen mit der BeforeSave Funktion.
unter XL2003 gibt es für die Arbeitsmappe das Event "BeforeSave".
Dort schreibst du dann den Code für das Speichern rein.
Ich wollte eine Arbeitsmappe 2x an verschieden Orten abspeichern. und so ein Backup erzeugen.
das funktioniert fast.
Wenn ich die Arbeitmappe abspeichere mit der beforeSave funktion merkt sich Excel natürlich Name und Pfad.
Meine Lösung: in der before save 2x abspeichern, das ist aber sehr unelegant. (ich würde dann 3x abspeichern)
Kann ich den Path setzten?
so z.b.
ThisWorkbook.Path = strPath
Das speziell funktioniert nicht !
Grüße
Winter
Ich wollte eine Arbeitsmappe 2x an verschieden Orten
abspeichern. und so ein Backup erzeugen.
das funktioniert fast.
Halllo Winter,
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
ThisWorkbook.SaveCopyAs „H:“ & ThisWorkbook.Name
ThisWorkbook.SaveCopyAs „C:“ & ThisWorkbook.Name
End Sub
Gruß
Reinhard
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean,
Cancel As Boolean)
ThisWorkbook.SaveCopyAs „H:“ & ThisWorkbook.Name
ThisWorkbook.SaveCopyAs „C:“ & ThisWorkbook.Name
End Sub
Hallo Reinhard,
also doch 3x abspeichern. Zweimal in beforesave 1x dann in Save.
Private Sub Workbook\_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim strName As String, strNewName As String
Dim Datum As Date
strName = ThisWorkbook.Name
strpath = ThisWorkbook.Path
Datum = Date
strNewName = "D:\Backup\" & Datum & ".xls"
Application.DisplayAlerts = False 'Nachfrage soll überschrieben werden AUS
Workbooks(strName).SaveAs Filename:=strNewName, FileFormat:= \_
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False \_
, CreateBackup:=False
strName = strpath & "\" & strName
Workbooks(ThisWorkbook.Name).SaveAs Filename:=strName, FileFormat:= \_
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False \_
, CreateBackup:=False
Application.DisplayAlerts = True 'Nachfrage soll überschrieben werden wieder AN
End Sub
Schade dachte es gibt was eleganteres ;-(
Grüße
Winter
also doch 3x abspeichern. Zweimal in beforesave 1x dann in
Save.
Hallo Winter,
ich kann doch nicht bis drei zählen 
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim strNewName As String
strNewName = „D:\Backup“ & Date & „.xls“
Application.DisplayAlerts = False 'Nachfrage soll überschrieben werden AUS
ThisWorkbook.SaveCopyAs Filename:=strNewName, FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
Application.DisplayAlerts = True 'Nachfrage soll überschrieben werden wieder AN
End Sub
Gruß
Reinhard
ThisWorkbook.SaveCopyAs
Gruß
Reinhard
SUUUPER
Danke
3-2-1- Danke (also doch drei
)