OVH Cloud OVH Cloud

Menu et Séparateurs

10 réponses
Avatar
John Fuss
Bonjour à tous,

je créé des menus mais à part en déplaçant les boutons je n'arrive pas à me
débarasser des barres de séparations entre boutons. Existe t'il un moyen
pour les supprimer ?

Merci d'avance

John

10 réponses

Avatar
Emcy
Salut,

Voila une macro qui devrait t'aider :

Sub Efface1() 'efface les séparations dans MonMenu de la
barre principale

For Each Element In Application.CommandBars("Worksheet
Menu Bar").Controls("MonMenu").Controls

If Element.BeginGroup = True Then
aa = Element.Caption
Element.BeginGroup = False
End If

Next

End Sub


ça te va ?


j'ai fait une autre macro qui ne marche pas, previens moi
si tu arrive à la debugger


Sub efface() 'efface les séparations dans tous les
controls de la barre principale (ça marche pas)

For Each Element In Application.CommandBars("Worksheet
Menu Bar").Controls
Set Element1 = Element

For Each Elements In Element.Controls
If Elements.BeginGroup = True Then
aa = Elements.Caption
Elements.BeginGroup = False
End If
End If
Next

Next

End Sub




-----Message d'origine-----
Bonjour à tous,

je créé des menus mais à part en déplaçant les boutons
je n'arrive pas à me

débarasser des barres de séparations entre boutons.
Existe t'il un moyen

pour les supprimer ?

Merci d'avance

John


.



Avatar
Emcy
resalut,

j'ai fait un classeur qui est sur le site (sous le nom de
MARMONIER Cédric) :
http://www.excel-
downloads.com/html/French/fichiers/utilitaires-date_maj-
1.htm

Il traite de la création de menu : si ça t'interesse...


-----Message d'origine-----
Bonjour à tous,

je créé des menus mais à part en déplaçant les boutons
je n'arrive pas à me

débarasser des barres de séparations entre boutons.
Existe t'il un moyen

pour les supprimer ?

Merci d'avance

John


.



Avatar
John Fuss
Merci c exactement ce que je cherchais.

John

"Emcy" a écrit dans le message de
news:023301c3c482$0a414c70$
Salut,

Voila une macro qui devrait t'aider :

Sub Efface1() 'efface les séparations dans MonMenu de la
barre principale

For Each Element In Application.CommandBars("Worksheet
Menu Bar").Controls("MonMenu").Controls

If Element.BeginGroup = True Then
aa = Element.Caption
Element.BeginGroup = False
End If

Next

End Sub


ça te va ?


j'ai fait une autre macro qui ne marche pas, previens moi
si tu arrive à la debugger


Sub efface() 'efface les séparations dans tous les
controls de la barre principale (ça marche pas)

For Each Element In Application.CommandBars("Worksheet
Menu Bar").Controls
Set Element1 = Element

For Each Elements In Element.Controls
If Elements.BeginGroup = True Then
aa = Elements.Caption
Elements.BeginGroup = False
End If
End If
Next

Next

End Sub




-----Message d'origine-----
Bonjour à tous,

je créé des menus mais à part en déplaçant les boutons
je n'arrive pas à me

débarasser des barres de séparations entre boutons.
Existe t'il un moyen

pour les supprimer ?

Merci d'avance

John


.



Avatar
John Fuss
Je viens de récupérer ton classeur (et d'autres).... Merci

John

"Emcy" a écrit dans le message de
news:071001c3c482$653aa2c0$
resalut,

j'ai fait un classeur qui est sur le site (sous le nom de
MARMONIER Cédric) :
http://www.excel-
downloads.com/html/French/fichiers/utilitaires-date_maj-
1.htm

Il traite de la création de menu : si ça t'interesse...


-----Message d'origine-----
Bonjour à tous,

je créé des menus mais à part en déplaçant les boutons
je n'arrive pas à me

débarasser des barres de séparations entre boutons.
Existe t'il un moyen

pour les supprimer ?

Merci d'avance

John


.



Avatar
John Fuss
Pour ta fonction qui ne marche pas, je l'ai refaite un peu :

Sub efface()
Dim element As CommandBarPopup, elements As CommandBarControl

For Each element In Application.CommandBars("Worksheet Menu
Bar").Controls
For Each elements In element.Controls
If elements.BeginGroup Then elements.BeginGroup = False
Next
Next
For Each elements In Application.CommandBars("Worksheet Menu
Bar").Controls
If elements.BeginGroup Then elements.BeginGroup = False
Next
End Sub

Si tu as des questions.....

John

"Emcy" a écrit dans le message de
news:023301c3c482$0a414c70$
Salut,

Voila une macro qui devrait t'aider :

Sub Efface1() 'efface les séparations dans MonMenu de la
barre principale

For Each Element In Application.CommandBars("Worksheet
Menu Bar").Controls("MonMenu").Controls

If Element.BeginGroup = True Then
aa = Element.Caption
Element.BeginGroup = False
End If

Next

End Sub


ça te va ?


j'ai fait une autre macro qui ne marche pas, previens moi
si tu arrive à la debugger


Sub efface() 'efface les séparations dans tous les
controls de la barre principale (ça marche pas)

For Each Element In Application.CommandBars("Worksheet
Menu Bar").Controls
Set Element1 = Element

For Each Elements In Element.Controls
If Elements.BeginGroup = True Then
aa = Elements.Caption
Elements.BeginGroup = False
End If
End If
Next

Next

End Sub




-----Message d'origine-----
Bonjour à tous,

je créé des menus mais à part en déplaçant les boutons
je n'arrive pas à me

débarasser des barres de séparations entre boutons.
Existe t'il un moyen

pour les supprimer ?

Merci d'avance

John


.



Avatar
Emcy
Merci de ton aide mais ça n'a rien résolu

Voila le bon code :

Sub efface()
Dim element As CommandBarPopup, elements As
CommandBarControl

For Each element In Application.CommandBars
("Worksheet Menu
Bar").Controls
For Each elements In element.Controls
If elements.BeginGroup Then
on error resume next
elements.BeginGroup = False
end if
Next
Next

End Sub

remarque : ça marche mais je n'ai toujours pas identifié
le problème

une fois qu'on a enlevé les groupes, comment fait-on pour
remettre les paramètres par defaut ?



-----Message d'origine-----
Pour ta fonction qui ne marche pas, je l'ai refaite un
peu :


Sub efface()
Dim element As CommandBarPopup, elements As
CommandBarControl


For Each element In Application.CommandBars
("Worksheet Menu

Bar").Controls
For Each elements In element.Controls
If elements.BeginGroup Then
elements.BeginGroup = False

Next
Next
For Each elements In Application.CommandBars
("Worksheet Menu

Bar").Controls
If elements.BeginGroup Then elements.BeginGroup
= False

Next
End Sub

Si tu as des questions.....

John

"Emcy" a écrit
dans le message de

news:023301c3c482$0a414c70$
Salut,

Voila une macro qui devrait t'aider :

Sub Efface1() 'efface les séparations dans MonMenu de la
barre principale

For Each Element In Application.CommandBars("Worksheet
Menu Bar").Controls("MonMenu").Controls

If Element.BeginGroup = True Then
aa = Element.Caption
Element.BeginGroup = False
End If

Next

End Sub


ça te va ?


j'ai fait une autre macro qui ne marche pas, previens moi
si tu arrive à la debugger


Sub efface() 'efface les séparations dans tous les
controls de la barre principale (ça marche pas)

For Each Element In Application.CommandBars("Worksheet
Menu Bar").Controls
Set Element1 = Element

For Each Elements In Element.Controls
If Elements.BeginGroup = True Then
aa = Elements.Caption
Elements.BeginGroup = False
End If
End If
Next

Next

End Sub




-----Message d'origine-----
Bonjour à tous,

je créé des menus mais à part en déplaçant les boutons
je n'arrive pas à me

débarasser des barres de séparations entre boutons.
Existe t'il un moyen

pour les supprimer ?

Merci d'avance

John


.




.




Avatar
John Fuss
Je ne comprends pas bien ton "une fois qu'on a enlevé les groupes, comment
fait-on pour remettre les paramètres par defaut ?"

Mais pour info, au début j'ai planté à moitié Excel en essayant de créer des
menus, des boutons avec des sous-menu, et j'avais un menu 'caché' que je
n'arrivait plus à détruire ou à modifier. Peut-être est-ce ce qui t'oblige à
mettre un On error resume next

John


"Emcy" a écrit dans le message de
news:086501c3c4a1$929df4f0$
Merci de ton aide mais ça n'a rien résolu

Voila le bon code :

Sub efface()
Dim element As CommandBarPopup, elements As
CommandBarControl

For Each element In Application.CommandBars
("Worksheet Menu
Bar").Controls
For Each elements In element.Controls
If elements.BeginGroup Then
on error resume next
elements.BeginGroup = False
end if
Next
Next

End Sub

remarque : ça marche mais je n'ai toujours pas identifié
le problème

une fois qu'on a enlevé les groupes, comment fait-on pour
remettre les paramètres par defaut ?



-----Message d'origine-----
Pour ta fonction qui ne marche pas, je l'ai refaite un
peu :


Sub efface()
Dim element As CommandBarPopup, elements As
CommandBarControl


For Each element In Application.CommandBars
("Worksheet Menu

Bar").Controls
For Each elements In element.Controls
If elements.BeginGroup Then
elements.BeginGroup = False

Next
Next
For Each elements In Application.CommandBars
("Worksheet Menu

Bar").Controls
If elements.BeginGroup Then elements.BeginGroup
= False

Next
End Sub

Si tu as des questions.....

John

"Emcy" a écrit
dans le message de

news:023301c3c482$0a414c70$
Salut,

Voila une macro qui devrait t'aider :

Sub Efface1() 'efface les séparations dans MonMenu de la
barre principale

For Each Element In Application.CommandBars("Worksheet
Menu Bar").Controls("MonMenu").Controls

If Element.BeginGroup = True Then
aa = Element.Caption
Element.BeginGroup = False
End If

Next

End Sub


ça te va ?


j'ai fait une autre macro qui ne marche pas, previens moi
si tu arrive à la debugger


Sub efface() 'efface les séparations dans tous les
controls de la barre principale (ça marche pas)

For Each Element In Application.CommandBars("Worksheet
Menu Bar").Controls
Set Element1 = Element

For Each Elements In Element.Controls
If Elements.BeginGroup = True Then
aa = Elements.Caption
Elements.BeginGroup = False
End If
End If
Next

Next

End Sub




-----Message d'origine-----
Bonjour à tous,

je créé des menus mais à part en déplaçant les boutons
je n'arrive pas à me

débarasser des barres de séparations entre boutons.
Existe t'il un moyen

pour les supprimer ?

Merci d'avance

John


.




.




Avatar
Emcy
Cette macro enlève toutes les varres de séparation du
menu principale : je voulais donc les remetrres => il n'y
a pas une fonction qui remet tous les menu par defaut ?

-----Message d'origine-----
Je ne comprends pas bien ton "une fois qu'on a enlevé
les groupes, comment

fait-on pour remettre les paramètres par defaut ?"

Mais pour info, au début j'ai planté à moitié Excel en
essayant de créer des

menus, des boutons avec des sous-menu, et j'avais un
menu 'caché' que je

n'arrivait plus à détruire ou à modifier. Peut-être est-
ce ce qui t'oblige à

mettre un On error resume next

John


"Emcy" a écrit
dans le message de

news:086501c3c4a1$929df4f0$
Merci de ton aide mais ça n'a rien résolu

Voila le bon code :

Sub efface()
Dim element As CommandBarPopup, elements As
CommandBarControl

For Each element In Application.CommandBars
("Worksheet Menu
Bar").Controls
For Each elements In element.Controls
If elements.BeginGroup Then
on error resume next
elements.BeginGroup = False
end if
Next
Next

End Sub

remarque : ça marche mais je n'ai toujours pas identifié
le problème

une fois qu'on a enlevé les groupes, comment fait-on pour
remettre les paramètres par defaut ?



-----Message d'origine-----
Pour ta fonction qui ne marche pas, je l'ai refaite un
peu :


Sub efface()
Dim element As CommandBarPopup, elements As
CommandBarControl


For Each element In Application.CommandBars
("Worksheet Menu

Bar").Controls
For Each elements In element.Controls
If elements.BeginGroup Then
elements.BeginGroup = False

Next
Next
For Each elements In Application.CommandBars
("Worksheet Menu

Bar").Controls
If elements.BeginGroup Then elements.BeginGroup
= False

Next
End Sub

Si tu as des questions.....

John

"Emcy" a écrit
dans le message de

news:023301c3c482$0a414c70$
Salut,

Voila une macro qui devrait t'aider :

Sub Efface1() 'efface les séparations dans MonMenu de la
barre principale

For Each Element In Application.CommandBars("Worksheet
Menu Bar").Controls("MonMenu").Controls

If Element.BeginGroup = True Then
aa = Element.Caption
Element.BeginGroup = False
End If

Next

End Sub


ça te va ?


j'ai fait une autre macro qui ne marche pas, previens
moi


si tu arrive à la debugger


Sub efface() 'efface les séparations dans tous les
controls de la barre principale (ça marche pas)

For Each Element In Application.CommandBars("Worksheet
Menu Bar").Controls
Set Element1 = Element

For Each Elements In Element.Controls
If Elements.BeginGroup = True Then
aa = Elements.Caption
Elements.BeginGroup = False
End If
End If
Next

Next

End Sub




-----Message d'origine-----
Bonjour à tous,

je créé des menus mais à part en déplaçant les boutons
je n'arrive pas à me

débarasser des barres de séparations entre boutons.
Existe t'il un moyen

pour les supprimer ?

Merci d'avance

John


.




.




.





Avatar
Papyty
Bonjour @ tous et à Emcy :
=> il n'y
a pas une fonction qui remet tous les menu par defaut ?


A tester

Sub Macro1()
'Papyty MPFE
Dim Bar As CommandBar
For Each Bar In Application.CommandBars
With Application.CommandBars(Bar.Name)
If .Enabled Then
.Reset
End If
End With
Next Bar
End Sub
--
@+
Thierry
17/12/2003 22:30:40

Avatar
John Fuss
ça fonctionne mais j'ai du rajouter un on error resume next...

Merci

John

Sub Macro1()
'Papyty MPFE
Dim Bar As CommandBar
On Error Resume Next
For Each Bar In Application.CommandBars
With Application.CommandBars(Bar.Name)
If .Enabled Then
.Reset
End If
End With
Next Bar
End Sub

"Papyty" a écrit dans le message de
news:b9em17t0ky5m$
Bonjour @ tous et à Emcy :
=> il n'y
a pas une fonction qui remet tous les menu par defaut ?


A tester

Sub Macro1()
'Papyty MPFE
Dim Bar As CommandBar
For Each Bar In Application.CommandBars
With Application.CommandBars(Bar.Name)
If .Enabled Then
.Reset
End If
End With
Next Bar
End Sub
--
@+
Thierry
17/12/2003 22:30:40