Hallo,
habe in einer Exceldatei (office2007) TEST1.xls ein VBA-Makro integriert, welches beim Start automatisch die Multifunktionsleiste ausblendet.
Starte ich nun über den Desktop eine 2. od. 3. Exceldatei ohne hinterlegten Makros, wird auch sofort bei Anzeige bei diesen Dateien d. Multifunktionsleiste ausgeblendet dargestellt. Warum ?
In „diese Arbeitsmappe“ steht:
Private Sub Workbook_Open()
Ausblenden_Multifunktionsleiste
Zeilen_Spaltenüberschriften_Aus
End Sub
In „Module1“ steht:
Sub Ausblenden_Multifunktionsleiste()
Application.ExecuteExcel4Macro „Show.Toolbar(“„Ribbon“", False)"
End Sub
Mit dem Code wird das Ribbon ausgeblendet und diese Einstellung speichert Excel.
Eine Möglichkeit dies zu Umgehen, wäre zB einen Code einzufügen, der das Ribbon beim Beenden dieser Mappe wieder einblendet.
Dafür muss man in dem Modul folgendes anhängen:
Sub Einblenden\_Multifunktionsleiste()
Application.ExecuteExcel4Macro "Show.Toolbar(""Ribbon"", True)"
End Sub
und in „DieseArbeitmappe“ folgendes einfügen:
Private Sub Workbook\_BeforeClose(Cancel As Boolean)
Einblenden\_Multifunktionsleiste
End Sub
Nun wird beim Beenden der Mappe das Ribbon standartmässig wieder eingeblendet.
Mit „Zeilen_Spaltenüberschriften_Aus“ wird wahrscheinlich auch eine Prozedur gestartet, doch diese kommt aus den Infos hier nicht heraus.
Viel Spass bei probieren.
Hallo,
habe in einer Exceldatei (office2007) TEST1.xls ein VBA-Makro
integriert, welches beim Start automatisch die
Multifunktionsleiste ausblendet.
Starte ich nun über den Desktop eine 2. od. 3. Exceldatei ohne
hinterlegten Makros, wird auch sofort bei Anzeige bei diesen
Dateien d. Multifunktionsleiste ausgeblendet dargestellt.
Warum ?
In „diese Arbeitsmappe“ steht:
Private Sub Workbook_Open()
Ausblenden_Multifunktionsleiste
Zeilen_Spaltenüberschriften_Aus
End Sub
In „Module1“ steht:
Sub Ausblenden_Multifunktionsleiste()
Application.ExecuteExcel4Macro „Show.Toolbar(“„Ribbon“",
False)"
End Sub
gehe ich recht in der Annahme, dass das Problem nicht auftritt, wenn Du zuerst eine andere Datei öffnest?
Arbeite zwar mit 2000, und kann das Problem nicht in einer aktuellen Version prüfen, glaube aber, dass Dein Problem in der Objekthierarchie liegt.
…welches beim Start automatisch die Multifunktionsleiste ausblendet.
Das Einblenden der Leiste wird „deaktiviert“ mit dem Öffnen einer bestimmten Datei (workbook), aber beim Wechseln der Datei nicht wieder „aktiviert“.
… Starte ich nun über den Desktop eine 2. od. 3. Exceldatei ohne hinterlegten Makros, wird auch sofort bei … diesen … d. Multifunktionsleiste ausgeblendet …
Bin mir nicht ganz sicher, aber eigentlich sollte es für den Event „Workbook.Change“ die Möglichkeit geben, die Leiste wieder zu aktivieren (Show.Toolbar … :True)?
Makros können, soweit ich weis die Gültigkeit in allen offenen Arbeitsmappen, in dieser Arbeitsmappe und in der Datei haben.
Überprüfe doch mal über das Makrofenster, wie Du das geregelt hast.
Änderungen an den Symmbolleisten gelten grundsätzlich nicht nur für das geöffnete Workbook sondern für die Excel-Session als ganzes.
Wenn Du Excel öffnest und eine Symbolleiste einblendest, ist die auch noch vorhanden, wenn Du weitere Workbooks öffnest.
Da ist es egal, ob Du die Symbolleisten über ein Makro steuerst oder über den „normalen“ Weg.
Hallo,
an Alle die mir so schnell geantwortet haben meinen Dank.
Ich muß wohl das Aus/Einschalten der Multifunktionsleiste GLOBAL d.h. für alle Workbooks betrachten.
Es stimmt, wenn ich zuerst das 2. Workbook (ohne Ausschaltmakro) öffne, dann kommt die Leiste, geht aber weg, wenn ich das 1. Workbook öffne.
So habe ich dann für beide geöffneten Workbooks keine Multifunktionsleiste.
Abhilfe: Habe jetzt im 1. Workbook beim Beenden, dass Wiedereinschalten der Leiste eingebaut. Dann kommt auch wieder die Leiste wenn das 2. Workbook noch geöffnet ist.
Für beide Workbooks kann ich wenn das Makro einmal ausgeführt ist auch nicht manuell, also mit STRG + F1 die Multifunktionsleiste ein/ausschalten.
Habe daher fürs Einschalten das Makro mit einer Tastenkombination z.B. „STRG + a“ und f. Ausschalten „STRG + b“ versehen.
Jetzt klappts, wahlweise Aufrufbar in jedem Workbook.
Wie in der Anweisung „Application.ExecuteExcel4Macro Show.Toolbar(„Ribbon“, False)“ steht, wird das Menü-Band für die ANWENDUNG EXCEL ausgeblendet. Wenn Du nun einen neue DATEI in der ANWENDUNG öffnest, dann bleibt das Menü-Band natürlich weg, weil es ja für die ganze Anwendung ausgeblendet ist.
Lösung: Entweder kann man das Menü datei-bezogen ausschalten (ActiveWorkbook. statt Application.) oder man muss evtl. mit ActiveWorkbook abfragen, welche Datei gerade ausgewählt ist und das Menü dahingehend ein- bzw. ausblenden.
Hallo Harry,
Danke für Deine Antwort.
Menüliste kann man leider nicht Dateibezogen ausschalten.
Ist ne Globale Leiste.
Schau mal was ich an „MwieMichel“ geschrieben habe.
(wenn ich zwei Excel-Dateien auf dem Desktop geöffnet habe und in einer die Leiste ausschalte, geht auch in der anderen excel-datei die Leiste weg.
du solltest wissen, dass Excel-Sheets, also Excel Arbeitsmappen, oder Dateien keine eigenständigen Programme sind.
Auch in Excel-VBA, oder andere Scripts wirken sich immer auf alle geöffneten Tabellen-, Dateien-, oder Arbeitsblätter aus.
Sie greifen alle auf eine Plattform von Runtimes (Programmcode) von MicroSoft zu und sind keine EXE-Dateien.
Ist deine Multifunktionsleiste in einer Excelmappe ausgeblendet, betrifft das alle anderen Excel-Dateien, welche zu danach öffnest.
Lösung ist nur möglich, wenn dú alle anderen Dateien von Excel schließt, so dass nur noch die Datei offen ist, in der die Multifunktionsleiste ausgeblendet wurde.
hättest Du meine Posts mitverfolgt, wäre Dir klargewortden, daß ich von den Bunte-Bildchen-Versionen von Office (ie 2007, 2010 und höher) keine Ahnung habe.
Weil Dein Problem spezifisch für diese Versionen ist, kann ich Deine Frage beim besten Willen nicht ansatzweise beantworten.