Bonjour,
j'ai un problème d'affichage de menu, c'est la première fois que j'en fait
un tout seul et ça marche pas quelqu'un peut-il m'aider à résoudre le
problème d'affichage?
les 3 menus restent grisés ???
merci
voici ce que j'ai mis dans un module1
Public Menuligne1, MenuLigne2, MenuLigne3, SousMenu31, SousMenu32 As
CommandBarControl
Sub AnnuleMenu()
CommandBars(1).Reset
CommandBars(2).Reset
CommandBars(3).Reset
End Sub
Sub AjoutMenu()
' Réinitialise la barre de commandes "Menu Barre"
CommandBars(1).Reset
' Ajout du menu "OLERON" à la fin de la barre "Menu Barre"
' et de ses articles et sous-articles
Set Menu = CommandBars(1).Controls.Add(Type:=msoControlPopup)
Menu.Caption = "&OLERON"
Set Menuligne1 = Menu.Controls.Add(Type:=msoControlButton)
Menuligne1.Caption = "MISE EN FORME"
Menuligne1.OnAction = "MISENFORME" 'macro associée
Menuligne1.Enabled = False
Menuligne1.FaceId = 343
Set MenuLigne2 = Menu.Controls.Add(Type:=msoControlButton)
MenuLigne2.Caption = "REMISE A ZERO"
MenuLigne2.OnAction = "efface" 'nom de la macro associée
MenuLigne2.Enabled = False
MenuLigne2.FaceId = 343
Set MenuLigne3 = Menu.Controls.Add(Type:=msoControlPopup)
MenuLigne3.Caption = "IMPRIME"
Set SousMenu31 = MenuLigne3.Controls.Add(Type:=msoControlButton)
SousMenu31.Caption = "format A3"
SousMenu31.OnAction = "imprimea3" 'nom à donner a la macro
SousMenu31.FaceId = 210
Set SousMenu32 = MenuLigne3.Controls.Add(Type:=msoControlButton)
SousMenu32.Caption = "format A4"
SousMenu32.OnAction = "imprimea4" 'nom a donner a la macro
SousMenu32.FaceId = 211
MenuLigne3.Enabled = False
' ----------- Ajout d'une ligne de séparation avant l'article 3
MenuLigne3.BeginGroup = True
End Sub
dans le workbook j'ai mis ceci
Dim modif As Boolean
'déclaration de la macro modif
Private Sub Workbook_Open()
AjoutMenu
Sheets("OLERON").Activate
modif = False
'dès qu'il y a modif
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
' If modif = True Then
' Sheets("Saisie").Range("p1").Value = "Modif le " & Format(Date, _
'"dd/mm/yyyy") & " " & Format(Time, "hh:mm")
'c'est là que la date de modif s'affiche
'End If
AnnuleMenu 'important pour que le menu apparaisse que dans ce document
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
modif = True
End Sub
sur l'onglet OLERON ceci
Private Sub Worksheet_Activate()
Menuligne1.Enabled = True
MenuLigne2.Enabled = True
MenuLigne3.Enabled = True
Range("a3").Activate
End Sub
Bonjour,
j'ai un problème d'affichage de menu, c'est la première fois que j'en fait
un tout seul et ça marche pas quelqu'un peut-il m'aider à résoudre le
problème d'affichage?
les 3 menus restent grisés ???
merci
voici ce que j'ai mis dans un module1
Public Menuligne1, MenuLigne2, MenuLigne3, SousMenu31, SousMenu32 As
CommandBarControl
Sub AnnuleMenu()
CommandBars(1).Reset
CommandBars(2).Reset
CommandBars(3).Reset
End Sub
Sub AjoutMenu()
' Réinitialise la barre de commandes "Menu Barre"
CommandBars(1).Reset
' Ajout du menu "OLERON" à la fin de la barre "Menu Barre"
' et de ses articles et sous-articles
Set Menu = CommandBars(1).Controls.Add(Type:=msoControlPopup)
Menu.Caption = "&OLERON"
Set Menuligne1 = Menu.Controls.Add(Type:=msoControlButton)
Menuligne1.Caption = "MISE EN FORME"
Menuligne1.OnAction = "MISENFORME" 'macro associée
Menuligne1.Enabled = False
Menuligne1.FaceId = 343
Set MenuLigne2 = Menu.Controls.Add(Type:=msoControlButton)
MenuLigne2.Caption = "REMISE A ZERO"
MenuLigne2.OnAction = "efface" 'nom de la macro associée
MenuLigne2.Enabled = False
MenuLigne2.FaceId = 343
Set MenuLigne3 = Menu.Controls.Add(Type:=msoControlPopup)
MenuLigne3.Caption = "IMPRIME"
Set SousMenu31 = MenuLigne3.Controls.Add(Type:=msoControlButton)
SousMenu31.Caption = "format A3"
SousMenu31.OnAction = "imprimea3" 'nom à donner a la macro
SousMenu31.FaceId = 210
Set SousMenu32 = MenuLigne3.Controls.Add(Type:=msoControlButton)
SousMenu32.Caption = "format A4"
SousMenu32.OnAction = "imprimea4" 'nom a donner a la macro
SousMenu32.FaceId = 211
MenuLigne3.Enabled = False
' ----------- Ajout d'une ligne de séparation avant l'article 3
MenuLigne3.BeginGroup = True
End Sub
dans le workbook j'ai mis ceci
Dim modif As Boolean
'déclaration de la macro modif
Private Sub Workbook_Open()
AjoutMenu
Sheets("OLERON").Activate
modif = False
'dès qu'il y a modif
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
' If modif = True Then
' Sheets("Saisie").Range("p1").Value = "Modif le " & Format(Date, _
'"dd/mm/yyyy") & " " & Format(Time, "hh:mm")
'c'est là que la date de modif s'affiche
'End If
AnnuleMenu 'important pour que le menu apparaisse que dans ce document
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
modif = True
End Sub
sur l'onglet OLERON ceci
Private Sub Worksheet_Activate()
Menuligne1.Enabled = True
MenuLigne2.Enabled = True
MenuLigne3.Enabled = True
Range("a3").Activate
End Sub
Bonjour,
j'ai un problème d'affichage de menu, c'est la première fois que j'en fait
un tout seul et ça marche pas quelqu'un peut-il m'aider à résoudre le
problème d'affichage?
les 3 menus restent grisés ???
merci
voici ce que j'ai mis dans un module1
Public Menuligne1, MenuLigne2, MenuLigne3, SousMenu31, SousMenu32 As
CommandBarControl
Sub AnnuleMenu()
CommandBars(1).Reset
CommandBars(2).Reset
CommandBars(3).Reset
End Sub
Sub AjoutMenu()
' Réinitialise la barre de commandes "Menu Barre"
CommandBars(1).Reset
' Ajout du menu "OLERON" à la fin de la barre "Menu Barre"
' et de ses articles et sous-articles
Set Menu = CommandBars(1).Controls.Add(Type:=msoControlPopup)
Menu.Caption = "&OLERON"
Set Menuligne1 = Menu.Controls.Add(Type:=msoControlButton)
Menuligne1.Caption = "MISE EN FORME"
Menuligne1.OnAction = "MISENFORME" 'macro associée
Menuligne1.Enabled = False
Menuligne1.FaceId = 343
Set MenuLigne2 = Menu.Controls.Add(Type:=msoControlButton)
MenuLigne2.Caption = "REMISE A ZERO"
MenuLigne2.OnAction = "efface" 'nom de la macro associée
MenuLigne2.Enabled = False
MenuLigne2.FaceId = 343
Set MenuLigne3 = Menu.Controls.Add(Type:=msoControlPopup)
MenuLigne3.Caption = "IMPRIME"
Set SousMenu31 = MenuLigne3.Controls.Add(Type:=msoControlButton)
SousMenu31.Caption = "format A3"
SousMenu31.OnAction = "imprimea3" 'nom à donner a la macro
SousMenu31.FaceId = 210
Set SousMenu32 = MenuLigne3.Controls.Add(Type:=msoControlButton)
SousMenu32.Caption = "format A4"
SousMenu32.OnAction = "imprimea4" 'nom a donner a la macro
SousMenu32.FaceId = 211
MenuLigne3.Enabled = False
' ----------- Ajout d'une ligne de séparation avant l'article 3
MenuLigne3.BeginGroup = True
End Sub
dans le workbook j'ai mis ceci
Dim modif As Boolean
'déclaration de la macro modif
Private Sub Workbook_Open()
AjoutMenu
Sheets("OLERON").Activate
modif = False
'dès qu'il y a modif
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
' If modif = True Then
' Sheets("Saisie").Range("p1").Value = "Modif le " & Format(Date, _
'"dd/mm/yyyy") & " " & Format(Time, "hh:mm")
'c'est là que la date de modif s'affiche
'End If
AnnuleMenu 'important pour que le menu apparaisse que dans ce document
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
modif = True
End Sub
sur l'onglet OLERON ceci
Private Sub Worksheet_Activate()
Menuligne1.Enabled = True
MenuLigne2.Enabled = True
MenuLigne3.Enabled = True
Range("a3").Activate
End Sub