An sich klingt mein Problem nicht schwer aber ich hänge da trotzdem.
Ich speicher eine Datei in einem Netzwerkpfad ab. Wenn man auf den Pfad kein Zugriff hat, soll sich die Datei "ungespeichert" schließen.
Ich wollte das mit einer "On error GoTo"-Lösung angehen. Das klappt leider nicht. Ich bekomme den Laufzeitfehler.
Kann mir jemand helfen:
Private Sub Workbook_AfterSave(ByVal Success As Boolean)
Call aus
On Error GoTo raus
Const strNetzPfad As String = "Hier steht mein Pfad" 'Pfad für Kopie!!!
Dim strTempName As String, strCopyName As String, strName As String, lngFormat As Long
Dim wkbCopy As Workbook
Dim I As Integer
If Success = True Then
Application.EnableEvents = False
Application.ScreenUpdating = False
lngFormat = Me.FileFormat
strName = Me.Name
Application.DisplayAlerts = False
Sheets(4).Delete
Sheets(3).Delete
Sheets(2).Delete
For I = 24 To 5 Step -1
Worksheets(1).Columns(I).Delete
Next
Application.DisplayAlerts = True
strName = Left(strName, Len(strName) - 4)
strCopyName = strNetzPfad & strName & "xlsx"
strTempName = strNetzPfad & "Temp" & strName & "xlsm"
Me.SaveCopyAs strTempName
Set wkbCopy = Workbooks.Open(strTempName)
strTempName = strNetzPfad & "Temp" & strName & "xlsx"
Application.DisplayAlerts = False
wkbCopy.SaveAs Filename:=strTempName, FileFormat:=51
Application.DisplayAlerts = True
wkbCopy.Close SaveChanges:=False
If Dir(strCopyName) "" Then Kill strCopyName
Name strTempName As strCopyName
strTempName = strNetzPfad & "Temp" & strName & "xlsm"
VBA.Kill strTempName
Application.EnableEvents = True
Application.ScreenUpdating = True
ActiveWorkbook.Close SaveChanges:=False
End If
Call an
Exit Sub
raus:
Call an
Workbooks("Warranty problem list 2018.xlsm").Close SaveChanges:=False
End Sub