diese Sonne... eine Feinheit!
Also hier mein Problem: Ich möchte in Word per VBA-Makro ein zusätzliches
PopUpmenü mit Untermenüs erstellen.
Die Fkt. Makro aufzeichnen hat nicht gaholfen. Weiß jemand adhoc ein verläßliches
Coding?
C YA (Peter)
Antwort:
Hi,
Wenn ich es richtig verstehe, willst Du einfach ein neues Menü in die Menüzeile einfügen oder?
Mach es doch genau gleich wie wenn Du ein Symbol in die Symbolleiste einfügst. Ab Word97 kannst Du via Anpassen die Befehle einach dorthin ziehen, wo Du die Befehle haben willst.
Ansonsten musst Du schon in die VBA-Programmierung einsteigen.
Etwa mit untenstehendem Hilfetext Auszug.
Hoffe es war das, was Du gesucht hast.
Trix
Hinzufügen und Organisieren von Menüleisten und Menüelementen
In manchen Container-Anwendungen ist es nicht möglich, neue Menüleisten zu erstellen. Das heißt, Sie müssen neue Menüleisten mit Visual Basic erstellen. Nachdem Sie in Visual Basic eine Menüleiste erstellt haben, können Sie diese entweder in der Oberfläche der Container-Anwendung oder auch in Visual Basic anpassen.
Hinzufügen von Menüleisten während der Laufzeit
Wenn Sie einer Anwendung während der Laufzeit eine Menüleiste hinzufügen, verwenden Sie die Add-Methode für die CommandBars-Auflistung und geben für das MenuBar-Argument True an. Im folgenden Beispiel wird eine nicht verschiebbare Menüleiste hinzugefügt. Diese Menüleiste wird rechts im Anwendungsfenster verankert. Die neue Menüleiste wird aktiviert, wenn der Benutzer die ALT-TASTE drückt.
Set menüLeiste = CommandBars.Add _
(Name:="meineLeiste", Position:=msoBarRight, MenuBar:=True)
With menüLeiste
.Protection = msoBarNoMove
.Visible = True
End With
Durchführen von Laufzeit-Änderungen an Menüleisten
Sie können Änderungen an der Menüleiste und an den Steuerelementen dieser Menüleiste während der Laufzeit durchführen. Änderungen, die Sie an der Menüleiste durchführen, wirken sich auf deren Darstellung oder Position aus. Änderungen, die Sie an den Steuerelementen durchführen können, hängen vom Typ des Steuerelements ab. In der folgenden Tabelle werden die am häufigsten für die Änderung von Menüleisten während der Laufzeit verwendeten Eigenschaften und Methoden aufgeführt.
Eigenschaft oder Methode Beschreibung
Add Fügt eine Menüleiste hinzu, indem die Add-Methode der CommandBars-Auflistung verwendet wird und für das MenuBar-Argument True angegeben wird.
Enabled Wenn diese Eigenschaft auf True festgelegt ist, kann der Benutzer die Menüleiste mit einem Visual Basic-Code sichtbar machen. Ist diese Eigenschaft auf False eingestellt, kann der Benutzer die Menüleiste nicht sichtbar machen. Sie wird jedoch in der Liste der verfügbaren Befehlsleisten angezeigt.
Protection Ermöglicht Ihnen, für die Menüleiste einen Zugriffsschutz für bestimmte Benutzeraktionen festzulegen. Dies kann eine oder können mehrere der folgenden Konstanten sein: msoBarNoChangeDock, msoBarNoChangeVisible, msoBarNoCustomize, msoBarNoCustomize, msoBarNoHorizontalDock, msoBarNoMove, msoBarNoProtection, msoBarNoResize und msoBarNoVerticalDock.
Position Gibt die Position der neuen Menüleiste relativ zum Anwendungsfenster an. Dies kann eine der folgenden Konstanten sein: msoBarLeft, msoBarTop, msoBarRight, msoBarBottom, msoBarFloating, msoBarPopup (für die Erstellung von Kontextmenüs) oder msoBarMenuBar (gibt eine Menüleiste für den Macintosh an).
Visible Gibt an, ob das Steuerelement für den Benutzer angezeigt oder ausgeblendet wird. Ist das Steuerelement ausgeblendet, wird der Name der Menüleiste nach wie vor in der Liste der verfügbaren Befehlsleisten angezeigt.
Im folgenden Beispiel wird die aktive Menüleiste ausgeblendet und durch eine temporäre Menüleiste ersetzt, die rechts im Anwendungsfenster verankert ist. Für diese Menüleiste besteht außerdem ein Zugriffsschutz.
Set alteMenüLeiste = CommandBars.ActiveMenuBar
Set neueMenüLeiste = CommandBars.Add _
(Name:="neueMenüleiste", Position:=msoBarRight, _
MenuBar:=True, temporary:=True)
With neueMenüLeiste
.Visible = True
.Protection = msoBarNoMove
End With
Verbinden v