call.execute funktioniert nicht mehr
19.01.2022 09:06:22
Bernhard
ich habe ein Problem mit einer schreibgeschützten Datei, bei deren Speicherung ein einheitliches Namensformat gewählt werden soll. Mit Hilfe aus diesem Forum wurde das so geregelt:
Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim objFileDialog As FileDialog
Dim wks1 As Worksheet, wks2 As Worksheet
...
...
If ThisWorkbook.ReadOnly Then
Application.EnableEvents = False
Set objFileDialog = Application.FileDialog(msoFileDialogSaveAs)
With objFileDialog
.FilterIndex = 2 '2 = .xlsm
.InitialFileName = ThisWorkbook.Path & "\" & "TP.Vs33-" & wks1.Cells(2, 10) & "-" & wks1.Cells(1, 2) & "-" & wks1.Cells(1, 10).Text
If .Show Then
Call .Execute
End If
End With
Else
ThisWorkbook.Save
End If
Das lief immer ohne Probleme. Ich habe nun an einigen Makros gearbeitet. Beim Problelauf funktionierte für mich völlig überraschend dieser Mechanismus aber nun nicht mehr, obwohl ich daran gar nicht rumgefummelt habe. Anzumerken ist, dass sich bei den "Baumaßnahmen" die Datei auch mal aufgehängt hat, weil ich mich ungeschickt angestellt habe.
Die Datei wird nicht gespeichert. Ich habe mir Markierungen gesetzt und festgestellt, dass es nach Call.Execute nicht weitergeht. Eine Fehlermeldung kommt nicht.
Hat jemand eine Idee, woran das liegen kann ?
Gruß Bernhard