AW: Fehlermeldung beim Speichern
01.12.2016 13:01:46
Daniel
Da es die selbe Datei betrifft, möchte ich das als "Unterarm" in diesem Thread noch schreiben. Vielleicht hilft es ja auch das andere Problem zu lösen...
Beim Speichern kommt häufig der Fehler
"Das Dokument wurde erfolgreich gespeichert, aber Excel kann das Dokument aufgrund einer Zugriffsverletzung nicht erneut öffnen. Bitte schließen Sie dieses Dokument, und versuchen Sie erneut es zu öffnen."
Es ist dabei unerheblich an welcher Stelle das Dokument gespeichert ist (Desktop, Stick, Netzwerk, Festplatte). Als System nutze ich Win7 mit Excel 2007
Es gibt in dem Dokument ein BeforeClose-Event, dass die Combo-Boxen leert, weil es sonst ständig zu Fehlern in den Boxen beim Schließen des Programmes kam.
Weiterhin gibt es ein workbook Events
Private Sub Workbook_Open()
done = False
For i = 1 To 4 '
If Dir(ThisWorkbook.Path & "\Sicherungen\") = "" Then Call MkDir(ThisWorkbook.Path & "\ _
Sicherungen\")
If Dir(ThisWorkbook.Path & "\Sicherungen\" & ThisWorkbook.Name & ".temp" & i) = "" Then
If done = False Then
Application.DisplayAlerts = False
ThisWorkbook.SaveCopyAs Filename:=ThisWorkbook.Path & "\Sicherungen\" & ThisWorkbook.Name & _
".temp" & i
If i "" Then Kill (ThisWorkbook.Path & "\Sicherungen\" & ThisWorkbook.Name & ".temp" & i + 1)
If i = 4 Then If Dir(ThisWorkbook.Path & "\Sicherungen\" & ThisWorkbook.Name & ".temp" & _
1) "" Then Kill (ThisWorkbook.Path & "\Sicherungen\" & ThisWorkbook.Name & ".temp" & 1)
Application.DisplayAlerts = True
done = True
i = 4
End If
End If
Next i
If Sheets("Willkommen").Visible = True Then Sheets("Willkommen").Select
LetztesBlatt = CStr(Sheets("Willkommen").Cells(22, 3))
On Error Resume Next
Sheets(LetztesBlatt).Select
If Err 0 Then Sheets("Zusammen").Select
Err = 0
End Sub
Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As _
Boolean)
'Cancel = True
End Sub
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
Dim Antwort As Integer
If Sh Is Nothing Then Exit Sub
If Sh.Name = "PrintList" Then
If ThisWorkbook.Sheets("PrintList").Visible = xlSheetHidden Or ThisWorkbook.Sheets(" _
PrintList").Visible = xlSheetVeryHidden Then Exit Sub
Antwort = MsgBox("Kann ""PrintList"" ausgeblendet werden?" + Chr(10) + "(Wird über ""Liste _
Drucken"" in ""Rechnungsauswahl"" neu erzeugt)", vbYesNoCancel, "Tabelle schließen")
If Antwort = vbYes Then
Application.DisplayAlerts = False
ThisWorkbook.Sheets("PrintList").Visible = False
ThisWorkbook.Sheets("PrintList").Delete
Application.DisplayAlerts = True
Exit Sub
End If
If Antwort = vbCancel Then ThisWorkbook.Sheets("PrintList").Activate
End If
If Sh Is Nothing Then Exit Sub
If Sh.Name = "FAListe" Then
If ThisWorkbook.Sheets("FAListe").Visible = xlSheetHidden Or ThisWorkbook.Sheets("FAListe"). _
Visible = xlSheetVeryHidden Then Exit Sub
Antwort = MsgBox("Kann ""FAListe"" ausgeblendet werden?" + Chr(10) + "(Wird über ""FA Liste" _
" in ""Rechnungsauswahl"" neu erzeugt)", vbYesNoCancel, "Tabelle schließen")
If Antwort = vbYes Then
Application.DisplayAlerts = False
'ThisWorkbook.Sheets("FAListe").Visible = True
'ThisWorkbook.Sheets("FAListe").Visible = xlSheetVisible
'ThisWorkbook.Sheets("FAListe").Visible = xlSheetHidden
'ThisWorkbook.Sheets("FAListe").Visible = xlSheetVeryHidden
ThisWorkbook.Sheets("FAListe").Visible = False
ThisWorkbook.Sheets("FAListe").Delete
Application.DisplayAlerts = True
Exit Sub
End If
If Antwort = vbCancel Then ThisWorkbook.Sheets("FAListe").Activate
End If
End Sub
Das BeforeSave Event ist im Moment rausgelöscht und soll später nur einige Blätter vor dem Speichern verstecken, damit beim Öffnen ohne aktive Makros kein direkter Zugriff auf die Blätter möglich ist. Wie gesagt - ist aber im Moment rauskommentiert um das als Fehlerquelle auszuschließen.
Alle anderen Events sind Blattspezifisch
Grüße
Daniel