![]() |
||
![]() |
Makro: Menüleiste aktivieren und deaktivierenAus unerklärlichen Gründen hat sich die Menüleiste von Word 97 verabschiedet. Wie kann ich sie zurückholen? Die Menüleiste von Word 97 ist intern nichts anderes als eine Symbolleiste. Dennoch lässt sie sich nicht über den Befehl »Extras | Anpassen« ausschalten. Das schaffen Sie am besten mit VBA-Befehlen. Auf ähnliche Weise verankern auch Drittanwendungen ihre Befehle in der Menüleiste. Vielleicht hat genau solch eine Anwendung eine fehlerhafte VBA-Prozedur ausgeführt und Ihre Menüleiste dabei deaktiviert.
Mit dem Word-97-Dokument MENLEIST.DOC von der Heft-CD können Sie Ihre Menüleiste wieder aktivieren. CHIP-Code MENLEIST. Öffnen Sie das Dokument und aktivieren Sie die Makros. Dann erscheint der Dialog »Menüleiste aktivieren und deaktivieren«. Mit der Schaltfläche »Menüleiste aktivieren« können Sie die Leiste wieder zurückholen. Das Dokument ruft nämlich beim Öffnen die VBA-Prozedur »AutoOpen()« auf, die dann den Dialog »Menüleiste aktivieren und deaktivieren« lädt. Dahinter verbirgt sich folgende VBA-Prozedur: Private Sub LeisteAktivieren_Click() Dim cb As Office.CommandBar foundFlag = False For Each cb In Application.CommandBars If cb.Name = „Menu Bar“ Then cb.Protection = msoBarNoChangeDock cb.Enabled = True cb.Visible = True cb.Protection = msoBarNoChangeVisible foundFlag = True MsgBox „Menüleiste „ + cb.Name + „ aktiviert“ End If Next cb If Not foundFlag Then MsgBox „The collection does not contain a Forms command bar.“ End If Me.Hide Unload ControlMenueleiste End Sub Die Prozedur sucht in der Liste aller Objekte des Typs »CommandBar« die Menüleiste namens »Menu Bar«. Die Eigenschaft »Protection« repräsentiert die Sicherheitsklasse und wird so belegt, dass der Anwender die Leiste ändern darf. Dann setzt die Prozedur die Eigenschaften »Enabled« und »Visible« auf »True«, wodurch die Menüleiste wieder aktiviert und sichtbar wird. Die Eigenschaft »Visible« lässt sich nur anpassen, wenn Sie zuvor »Enabled« auf »True« gesetzt haben. Zum Schluss belegt die Prozedur die Eigenschaft »Protection« mit dem Wert »msoBar NoChangeVisible«. Dabei handelt es sich um eine Sicherheitsklasse, die das Deaktivieren der Menüleiste mit dem Befehl »Extras | Anpassen« sperrt. Die VBA-Prozedur hinter der Schaltfläche »Menüleiste deaktivieren« arbeitet entsprechend umgekehrt. |
![]() |