ActiveWorkbook.Save aus personl.xls
29.07.2004 09:22:46
Franz
ActiveWorkbook.Save aus "personl.xls" heraus aufgerufen ergibt Probleme mit "Workbook_BeforeSave":
Folgenden Code rufe ich aus der "personl.xls" heraus auf:
Sub Sicherungskopie_mit_Datum_und_Uhrzeit()
Dim myPath As String
Dim myName As String
Dim myNameOEnd As String
Dim myNewName As String
myPath = ActiveWorkbook.Path & "\"
myName = ActiveWorkbook.Name
myNameOEnd = Replace(myName, Right(myName, 4), "")
myNewName = myPath & myNameOEnd & Format(Date, "yyyy.mm.dd") & " " & Format(Time, "hh-mm") & ".xls"
ActiveWorkbook.Save
ActiveWorkbook.SaveCopyAs myNewName
End Sub
Die gewünschte Speicherung wird auch vollzogen.Unterwegs wird dabei bei der Zeile " ActiveWorkbook.Save " in der aufrufenden Datei ein " Workbook_BeforeSave-Makro " aufgerufen:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Application.ScreenUpdating = False
Worksheets("Kalender").Shapes("TextfeldLaufen").Visible = False
Worksheets("Geburtstagskalender").Activate
[b2].Select
With Worksheets("Kalender")
.Activate
.Protect
End With
End Sub
Der Einzelschrittmodus zeigt, dass die Anweisungen des Makros auch durchgegangen werden. Allerdings werden sie nicht ausgeführt:
- so ist z.B. im Blatt "Geburtstagskalender" "B2" NICHT selektiert !?!
- außerdem ist das Blatt "Kalender" NICHT mit dem Blattschutz belegt !?!
Könnt ihr mir da bitte einen Tipp geben, woran das liegen kann?
Vielen Dank schon mal im Voraus und Grüße
Franz
P.S.:
Hab in das "Workbook_BeforeSave-Makro " mal als Test immer " ActiveWorkbook. " davorgesetzt, ändert aber auch nix:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Application.ScreenUpdating = False
ActiveWorkbook.Worksheets("Kalender").Shapes("TextfeldLaufen").Visible = False
FullScreenNein
'Speichern möglich nicht bei einer Sicherungsdatei:
'If Not ThisWorkbook.Name = DatNam Then Cancel = True
ActiveWorkbook.Worksheets("Geburtstagskalender").Activate
[b2].Select
With ActiveWorkbook.Worksheets("Kalender")
.Activate
.Protect
End With
End Sub