Hat jemand eine Idee für mich ?
Ich möchte eine geöffnete Excel-Datei vor dem Schließen als Sicherung an einen bestimmten Ort sichern UND die Datei schließen und speichern.
Danke für jeden Tip
mfG Kraus
Sub Auto_Close
ActiveWorkbook.Save
Dim sPath As String
sPath = Y:\usw.
oder wenn die Werte in einer excel Tabelle stehen
sPath = Range("was auch immer").Value & ".xls"
ActiveWorkbook.SaveAs sPath
ActiveWorkbook. Close
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Const BackupPath = "D:\Backup.xls"
'Ist dies die Backup-Datei? ja, dann abbrechen
If ThisWorkbook.FullName = BackupPath Then Exit Sub
ThisWorkbook.SaveCopyAs Filename:=BackupPath
End Sub
Um eine geöffnete Excel-Datei vor dem Schließen zu sichern und anschließend zu speichern, kannst Du VBA (Visual Basic for Applications) verwenden. Hier sind die Schritte, die Du befolgen solltest:
Öffne Excel und drücke Alt + F11, um den VBA-Editor zu öffnen.
Klicke im Projektfenster auf "DieseArbeitsmappe".
Füge den folgenden Code ein:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Const BackupPath = "D:\Backup.xls"
'Ist dies die Backup-Datei? ja, dann abbrechen
If ThisWorkbook.FullName = BackupPath Then Exit Sub
ThisWorkbook.SaveCopyAs Filename:=BackupPath
End Sub
Passe den BackupPath an den gewünschten Speicherort an.
Schließe den VBA-Editor und speichere Deine Arbeitsmappe.
Teste das Makro, indem Du die Excel-Datei schließt.
Dieser Code sichert die Excel-Datei automatisch, bevor sie geschlossen wird. Dies ist eine nützliche Methode, um Datenverlust zu vermeiden.
Fehler: Makro wird nicht ausgeführt
Datei > Optionen > Trust Center > Einstellungen für das Trust Center > Makroeinstellungen.Fehler: Datei wird nicht gespeichert
BackupPath. Der Pfad muss existieren und Du benötigst Schreibrechte.Wenn Du keine VBA-Programmierung verwenden möchtest, kannst Du auch Excel-Funktionen nutzen:
Datei > Speichern unter gehst und den Speicherort wählst.Hier sind einige Beispiele, wie Du den VBA-Code anpassen kannst:
Speichern an einem benutzerdefinierten Ort:
sPath = "C:\DeinVerzeichnis\Backup_" & Format(Now, "YYYYMMDD_HHMMSS") & ".xls"
Speichern und Schließen in einem einzigen Schritt:
Sub SpeichernUndSchließen()
ActiveWorkbook.Save
ActiveWorkbook.Close
End Sub
Diese Beispiele zeigen, wie flexibel VBA in Excel ist, wenn es darum geht, Dateien zu sichern und zu schließen.
Verwende Fehlerbehandlung: Integriere Fehlerbehandlung in Deinen VBA-Code, um unerwartete Probleme beim Speichern und Schließen zu behandeln.
On Error GoTo ErrorHandler
' Dein Code hier
Exit Sub
ErrorHandler:
MsgBox "Fehler beim Speichern: " & Err.Description
Testumgebung nutzen: Teste Deinen VBA-Code in einer Kopie Deiner Datei, um Datenverlust zu vermeiden.
1. Kann ich den VBA-Code auch für andere Excel-Versionen verwenden? Ja, der VBA-Code ist in den meisten Excel-Versionen (ab 2007) kompatibel.
2. Wie kann ich meine Excel-Datei automatisch speichern, wenn ich sie schließe? Mit dem oben beschriebenen VBA-Code wird die Datei automatisch gespeichert, bevor sie geschlossen wird.
3. Was passiert, wenn der Backup-Pfad nicht existiert? Wenn der angegebene Backup-Pfad nicht existiert, wird der Code einen Fehler auslösen. Stelle sicher, dass der Pfad korrekt ist.