Menu en vba
Fermé
boby87000
Messages postés
113
Date d'inscription
lundi 19 janvier 2009
Statut
Membre
Dernière intervention
10 juin 2011
-
23 oct. 2010 à 19:10
cousinhub29 Messages postés 1049 Date d'inscription mardi 10 août 2010 Statut Membre Dernière intervention 27 avril 2025 - 24 oct. 2010 à 01:42
cousinhub29 Messages postés 1049 Date d'inscription mardi 10 août 2010 Statut Membre Dernière intervention 27 avril 2025 - 24 oct. 2010 à 01:42
A voir également:
- Menu en vba
- Menu déroulant excel - Guide
- Windows 11 menu démarrer classique - Guide
- Réinitialiser menu démarrer windows 10 - Guide
- Canon quick menu - Télécharger - Utilitaires
- Excel menu déroulant en cascade - Guide
1 réponse
cousinhub29
Messages postés
1049
Date d'inscription
mardi 10 août 2010
Statut
Membre
Dernière intervention
27 avril 2025
359
24 oct. 2010 à 01:42
24 oct. 2010 à 01:42
Bonjour,
Modifie ainsi ton code :
Et dans un module standard, tu mets ces procédures :
Les MsgBox étant bien évidemment remplacés par tes codes...
Bonne nuit
Modifie ainsi ton code :
Private Sub addCQTMToolbar() Const menuName = "Mon menu " Dim menuItems(4, 1) As String Dim value As Variant Dim i As Integer Dim myMenuBar As CommandBar Dim newMenu As CommandBarControl Dim ctrl1 As CommandBarControl menuItems(0, 0) = "Quitter..": menuItems(0, 1) = "Proc_Quitter" menuItems(1, 0) = "Annuler": menuItems(1, 1) = "Proc_Annuler" menuItems(2, 0) = "Ouvrir": menuItems(2, 1) = "Proc_Ouvrir" menuItems(3, 0) = "Additionner": menuItems(3, 1) = "Proc_Additionner" menuItems(4, 0) = "Soustraire": menuItems(4, 1) = "Proc_Soustraire" On Error Resume Next Set myMenuBar = Application.CommandBars.ActiveMenuBar myMenuBar.Controls(menuName).Delete On Error GoTo 0 Set newMenu = myMenuBar.Controls.Add(msoControlPopup, , , 10, True) newMenu.Caption = menuName For i = LBound(menuItems) To UBound(menuItems) Set ctrl1 = newMenu.Controls.Add(msoControlButton) ctrl1.Caption = menuItems(i, 0) ctrl1.TooltipText = menuItems(i, 0) ctrl1.Style = msoButtonCaption ctrl1.OnAction = menuItems(i, 1) If i = 2 Then ctrl1.BeginGroup = True Next End Sub
Et dans un module standard, tu mets ces procédures :
Sub Proc_Quitter() MsgBox "Je quitte" End Sub Sub Proc_Annuler() MsgBox "J'annule" End Sub Sub Proc_Ouvrir() MsgBox "J'ouvre" End Sub Sub Proc_Additionner() MsgBox "J'additionne" End Sub Sub Proc_Soustraire() MsgBox "Je soustraits" End Sub
Les MsgBox étant bien évidemment remplacés par tes codes...
Bonne nuit