Um geschützte Arbeitsmappen in einen "Berarbeitungsmodus" zu versetzen, versuche ich aus Arbeitsmappe A heraus Makros in allen offenen Arbeitsmappen zu starten. Application.Run funktioniert insofern nicht, dass Arbeitsmappe B verschiedene Mappen sein können. Auf der Herber-CD habe ich eine mögliche Lösung entdeckt:
Allerdings funktioniert es bei mir nicht. Hier mein Code:
Sub bearbeitungsmodus_an()
Dim wkb As Workbook, wks As Worksheet
Application.ScreenUpdating = False
Application.EnableEvents = False
For Each wkb In Workbooks
wkb.Activate
*** Run Left(ActiveWorkbook.name, Len(ActiveWorkbook) - 4) & "!Blattschutz_aus" ***
For Each wks In ActiveWorkbook.Worksheets
wks.UsedRange.Rows.Hidden = False
If wks.FilterMode = True Then wks.ShowAllData
Next wks
Next wkb
Application.ScreenUpdating = True
End Sub
Bei *** bricht er mit Laufzeitfehler 438 (Objekt unterstützt Methode/Eigenschaft nicht) ab. Wie muss es richtig heißen oder gibt es eine andere Möglichkeit das zu starten?
Ein Makro Blattschutz_aus befindet sich in jeder offenen Arbeitsmappe unter DieseArbeitsmappe, insofern habe ich es auch mal mit Run Left(ActiveWorkbook.name, Len(ActiveWorkbook) - 4) & "!meineArbeitsmappe.Blattschutz_aus" versucht. Auch ein Application. habe ich versuchsweise vorangestellt - ohne Erfolg.
Es wäre nett, wenn mir jemand einen Hinweis geben könnte.
Liebe Grüße
Marcel