Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Re : Question simple : Menu

1 réponse
Avatar
Sébastien WICKER
TT d'abord merci bcp pr ta collaboration très consciencieuse et suivie

Mon pb est que si j'exécute la macro qui suit, La barre flottante qui
s'affiche, ne permet de visualiser que "Gestion1" et "Production5"
Et même si elle permet d'exécuter les 2 autres Adm et arrêter, elle ne les
affiche pas clairement

Merci d'avance pr la réponse que tu pourras m'apporter

Bonne fin de semaine

Sub TestBoAvecMenus()

' Code qui marche

Dim Nouv_Menu As CommandBar

Set Nouv_Menu = Application.CommandBars.Add(Name:="Société WICKER", _
Position:=msoBarFloating, temporary:=True)
' Nv menu flottant : "Société WICKER"

Dim gestion1, gestion11, gestion111, prod2, prod21, prod22, adm3, fermer1

Set gestion1 = Nouv_Menu.Controls.Add(msoControlPopup, , , , True)
With gestion1
.Caption = "Gestion&1"
' 1er menu
End With

Set gestion11 = gestion1.Controls.Add(msoControlPopup, , , , True)
With gestion11
.Caption = "Gérard&2"
' 1er ss menu
End With

Set gestion111 = gestion11.Controls.Add(msoControlButton, , , , True)
With gestion111
.Caption = "Achat&3"
.OnAction = "GGA"
' 1er ss ss menu
' => Exécution de la macro "GGA"
End With

Set gestion111 = gestion11.Controls.Add(msoControlButton, , , , True)
With gestion111
.Caption = "Vente&4"
.OnAction = "GGV"
End With

' 2e menu

Set prod2 = Nouv_Menu.Controls.Add(msoControlPopup, , , , True)
With prod2
.Caption = "Production&5"

End With

Set prod21 = prod2.Controls.Add(msoControlButton, , , , True)
With prod21
.Caption = "Nicolas&6"
.OnAction = "NP"
End With

Set prod22 = prod2.Controls.Add(msoControlButton, , , , True)
With prod22
.Caption = "Maman&7"
.OnAction = "MN"
End With

' 3e menu

Set adm3 = Nouv_Menu.Controls.Add(msoControlButton, , , , True)
With adm3
.Caption = "Administration&8"
.OnAction = "SA"
' 3e menu
' => Exécution de la macro "SA"
End With

Set fermer1 = Nouv_Menu.Controls.Add(msoControlButton, , , , True)
With fermer1
.Caption = "Arrêter le travail&9"
.OnAction = "Fermer"
' 4e menu
' => Exécution de la macro "Fermer"
End With

Nouv_Menu.Visible = True

End Sub
Sub GGA()
MsgBox "Papa gère la fonction Achats", , "Société WICKER"
End Sub
Sub GGV()
MsgBox "Papa gère la fonction Ventes", , "Société WICKER"
End Sub
Sub NP()
MsgBox "Nico produit", , "Société WICKER"
End Sub
Sub SA()
MsgBox "Séba administre", , "Société WICKER"
End Sub
Sub MN()
MsgBox "Maman nettoie", , "Société WICKER"
End Sub
Sub Fermer()
MsgBox "C'est fini pour aujourd'hui", , "Société WICKER"
Application.CommandBars("Société WICKER").Delete
End Sub

1 réponse

Avatar
anomymousA
bonojur,

With fermer1
.Caption = "Arrêter le travail&9"
.OnAction = "Fermer"
.Width = 50
.Style = msoButtonCaption

les propriétés Width et Style te permettent d'agrandir la taille des
controles et de porter sur le bouton la légende que tu as déterminés.

A+


TT d'abord merci bcp pr ta collaboration très consciencieuse et suivie

Mon pb est que si j'exécute la macro qui suit, La barre flottante qui
s'affiche, ne permet de visualiser que "Gestion1" et "Production5"
Et même si elle permet d'exécuter les 2 autres Adm et arrêter, elle ne les
affiche pas clairement

Merci d'avance pr la réponse que tu pourras m'apporter

Bonne fin de semaine

Sub TestBoAvecMenus()

' Code qui marche

Dim Nouv_Menu As CommandBar

Set Nouv_Menu = Application.CommandBars.Add(Name:="Société WICKER", _
Position:=msoBarFloating, temporary:=True)
' Nv menu flottant : "Société WICKER"

Dim gestion1, gestion11, gestion111, prod2, prod21, prod22, adm3, fermer1

Set gestion1 = Nouv_Menu.Controls.Add(msoControlPopup, , , , True)
With gestion1
.Caption = "Gestion&1"
' 1er menu
End With

Set gestion11 = gestion1.Controls.Add(msoControlPopup, , , , True)
With gestion11
.Caption = "Gérard&2"
' 1er ss menu
End With

Set gestion111 = gestion11.Controls.Add(msoControlButton, , , , True)
With gestion111
.Caption = "Achat&3"
.OnAction = "GGA"
' 1er ss ss menu
' => Exécution de la macro "GGA"
End With

Set gestion111 = gestion11.Controls.Add(msoControlButton, , , , True)
With gestion111
.Caption = "Vente&4"
.OnAction = "GGV"
End With

' 2e menu

Set prod2 = Nouv_Menu.Controls.Add(msoControlPopup, , , , True)
With prod2
.Caption = "Production&5"

End With

Set prod21 = prod2.Controls.Add(msoControlButton, , , , True)
With prod21
.Caption = "Nicolas&6"
.OnAction = "NP"
End With

Set prod22 = prod2.Controls.Add(msoControlButton, , , , True)
With prod22
.Caption = "Maman&7"
.OnAction = "MN"
End With

' 3e menu

Set adm3 = Nouv_Menu.Controls.Add(msoControlButton, , , , True)
With adm3
.Caption = "Administration&8"
.OnAction = "SA"
' 3e menu
' => Exécution de la macro "SA"
End With

Set fermer1 = Nouv_Menu.Controls.Add(msoControlButton, , , , True)
With fermer1
.Caption = "Arrêter le travail&9"
.OnAction = "Fermer"
' 4e menu
' => Exécution de la macro "Fermer"
End With

Nouv_Menu.Visible = True

End Sub
Sub GGA()
MsgBox "Papa gère la fonction Achats", , "Société WICKER"
End Sub
Sub GGV()
MsgBox "Papa gère la fonction Ventes", , "Société WICKER"
End Sub
Sub NP()
MsgBox "Nico produit", , "Société WICKER"
End Sub
Sub SA()
MsgBox "Séba administre", , "Société WICKER"
End Sub
Sub MN()
MsgBox "Maman nettoie", , "Société WICKER"
End Sub
Sub Fermer()
MsgBox "C'est fini pour aujourd'hui", , "Société WICKER"
Application.CommandBars("Société WICKER").Delete
End Sub