Clever-Excel-Forum

Normale Version: CommandBar in UserForm
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo liebe Community,

Ich habe eine CommandBar in einer Uf als Menüleiste, soweit so gut.
Ich möchte aber gerne die Hintergrundfarbe ändern von dem Popup Menü.

Hier mal mein code:
Code:
Public Sub DoMenu(ByVal ctl As Object)
Dim i As Integer

On Error Resume Next
Set Menu = Application.CommandBars.Add(Position:=msoBarPopup, Temporary:=True)

For i = LBound(arrSubMenu) To UBound(arrSubMenu, 2)
   If VBA.Mid(arrSubMenu(0, i), 4, InStr(1, arrSubMenu(0, i), "_") - 4) = ctl.tag Then
       If arrSubMenu(4, i) = "" Then arrSubMenu(4, i) = 0
       DoSubMenu arrSubMenu(0, i), CByte(arrSubMenu(1, i)), arrSubMenu(2, i), arrSubMenu(3, i), CInt(arrSubMenu(4, i)), CBool(arrSubMenu(5, i))
   End If
Next i

Menu.ShowPopup (UF.Left * 4 / 3 + 3) + (ctl.Left * 4 / 3), (UF.Top * 4 / 3) + (ctl.Top + ctl.Height) * 4 / 3 * 2.1

Set ctl = Nothing
Set Menu = Nothing
End Sub
Ich dachte an eine API lösung aber Ich weiß nicht wie.
hoffe Ihr könnt mir helfen.
Lg Flo
Hallöchen,

Code:
Ich habe eine CommandBar in einer Uf als Menüleiste,

Bist Du Dir sicher Das die Commandbar in der UF ist?

Auch der Code spricht dagegen:

Code:
Set Menu = Application.CommandBars.Add(Position:=msoBarPopup, Temporary:=True)

Da ist nix von einem UF zu sehen …
Guten Morgen,

Doch die ist schon da der Code bzw. das Modul ist eine Klasse und ich greife darauf zurück.
Aber Ich hab jetzt eine lösung gefunden :19:

Lg Flo
(04.09.2018, 07:00)Florian20 schrieb: [ -> ]Aber Ich hab jetzt eine lösung gefunden :19:

da Du trotz Aufforderung keinen Link schreibst, mache ich das mal: http://www.office-loesung.de/p/viewtopic.php?f=166&t=777315&sid=bcc181243dc9adebdb4e6208ca2c64da  Angry
Weil das nicht die Lösung ist Blush
da wird nur beschrieben wie man ein Menü erstellt das weiß ich.
Hallo,

Zitat aus dem Nachbarforum von Flotter Feger, wo Du davon ausgehen kannst, dass es seine Richtigkeit hat ...

Zitat:...die Backcolor einer CommandBar kannst du programmatisch nicht ändern.

Du kannst Dir ein Menü ausschließlich mit Windows API programmieren, wie auch im Nachbarforum verlinkt.

Gruß