ich habe ein kleines Makro geschrieben, um eine Datei mit einem Zeitstempel zu speichern und die alte Datei in einen "000Old" Ordner zu schieben. Jetzt würde ich gerne sicherstellen, dass der Nutzer auch immer damit speichert und bin gewillt das in eine workbook beforesave Prozedur zu packen.
Das Makro sieht so aus:
Sub DateiSpeichernUndVerschieben()
Dim NameAlt As String
Dim NameNeu As String
Dim Pfad As String
Dim fso As Object
Pfad = ThisWorkbook.Path & "\"
NameAlt = ThisWorkbook.Name
NameNeu = "Logbook " & Year(Date) & "-" & Format(Month(Date), "00") & "-" & Format(Day(Date), " _
_
00") & ".xlsm"
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs (Pfad & NameNeu)
Application.DisplayAlerts = True
If NameNeu = NameAlt Then
Exit Sub
Else
On Error Resume Next
Set fso = CreateObject("Scripting.FileSystemObject")
fso.MoveFile Pfad & NameAlt, Pfad & "000Old\"
'fso.CopyFile strPath_quelle & Datei.Name, strPath_Ziel & Datei.Name, True
'fso.DeleteFile strPath_quelle & Datei.Name
End If
End Sub
Rufe ich jetzt call DateiVerschieben... in der workbook BeforeSave Prozedur auf entsteht eine Endlos-Schleife.
Wie kann ich das verhindern?