OVH Cloud OVH Cloud

Amélioration de l'apparence d'une CommandBar

1 réponse
Avatar
Herdet
Bonsoir à tous,
Savez-vous si il est possible dans Excel 2003 d'améliorer l'apparence d'une
CommandsBar ( barre d'icônes ou d'outils pour les non-initiés) ?
Les propriétés de base des ComboBox, Bouton et PopUp sont plutôt pauvres,
pas de couleurs ni de style de police pour ces 3 seuls controls utilisables.
Je n'ai encore rien trouvé en VBA standard mais cela est sans doute possible
par une API Windows et là, je rame un peu .
Ce serait sympa de pouvoir ajouter aussi une zone image pour un Logo et une
couleur de fond pour la barre et les Combo Box.

Merci pour votre aide.
Les utilisateurs du VBA d' Excel 2007, s'abstenir car je ne suis pas encore
équipé !
Cordialement
Robert Dezan

PS : SOS, Modeste, tu dois bien avoir ça dans ton livre de chevet !!!

1 réponse

Avatar
LSteph
Bonjour Robert,


CommandsBar ( barre d'icônes ou d'outils


Pour les boutons (donc outils selon ta précision)
c'est tout à fait possible pour un bouton personnalisé, avec
l'editeur de boutons,
clic droit dans les barres, personnaliser,
clic droit sur le bouton, editeur de bouton.

Pour personnaliser la barre outils elle-même telle qu'elle sert de
support,je ne sais pas si c'est seulement possible pour excel car
il me semble que leur apparence générale (API itou syscolors) affecte
toutes les applications Windows, comme l'affichage de ce userform qui
colore également la barre d'appli de toutes les applications.
Voir plus bas après signature l'ensemble des constantes de cet API.
''''*****************
Private Declare Function SetSysColors Lib "user32" _
(ByVal nChanges As Long, lpSysColor As Long, _
lpColorValues As Long) As Long
Private Declare Function GetSysColor Lib "user32" _
(ByVal nIndex As Long) As Long

Const COLOR_ACTIVECAPTION = 2
Const COLOR_CAPTIONTEXT = 9

Private Sub userform_initialize()
SetSysColors 1, 2, RGB(0, 255, 0)
SetSysColors 1, 9, RGB(150, 0, 150)
End Sub
''''*******************

Cordialement.

Stéphane (lSteph)

Private Declare Function SetSysColors Lib "user32" (ByVal nChanges As
Long, lpSysColor As Long, lpColorValues As Long) As Long
Private Declare Function GetSysColor Lib "user32" (ByVal nIndex As Long)
As Long
Const COLOR_SCROLLBAR = 0 'The Scrollbar colour
Const COLOR_BACKGROUND = 1 'Colour of the background with no wallpaper
Const COLOR_ACTIVECAPTION = 2 'Caption of Active Window
Const COLOR_INACTIVECAPTION = 3 'Caption of Inactive window
Const COLOR_MENU = 4 'Menu
Const COLOR_WINDOW = 5 'Windows background
Const COLOR_WINDOWFRAME = 6 'Window frame
Const COLOR_MENUTEXT = 7 'Window Text
Const COLOR_WINDOWTEXT = 8 '3D dark shadow (Win95)
Const COLOR_CAPTIONTEXT = 9 'Text in window caption
Const COLOR_ACTIVEBORDER = 10 'Border of active window
Const COLOR_INACTIVEBORDER = 11 'Border of inactive window
Const COLOR_APPWORKSPACE = 12 'Background of MDI desktop
Const COLOR_HIGHLIGHT = 13 'Selected item background
Const COLOR_HIGHLIGHTTEXT = 14 'Selected menu item
Const COLOR_BTNFACE = 15 'Button
Const COLOR_BTNSHADOW = 16 '3D shading of button
Const COLOR_GRAYTEXT = 17 'Grey text, of zero if dithering is used.
Const COLOR_BTNTEXT = 18 'Button text
Const COLOR_INACTIVECAPTIONTEXT = 19 'Text of inactive window
Const COLOR_BTNHIGHLIGHT = 20 '3D highlight of button
Const COLOR_2NDACTIVECAPTION = 27 'Win98 only: 2nd active window color
Const COLOR_2NDINACTIVECAPTION = 28 'Win98 only: 2nd inactive window color


Bonsoir à tous,
Savez-vous si il est possible dans Excel 2003 d'améliorer l'apparence d'une
CommandsBar ( barre d'icônes ou d'outils pour les non-initiés) ?
Les propriétés de base des ComboBox, Bouton et PopUp sont plutôt pauvres,
pas de couleurs ni de style de police pour ces 3 seuls controls utilisables.
Je n'ai encore rien trouvé en VBA standard mais cela est sans doute possible
par une API Windows et là, je rame un peu .
Ce serait sympa de pouvoir ajouter aussi une zone image pour un Logo et une
couleur de fond pour la barre et les Combo Box.

Merci pour votre aide.
Les utilisateurs du VBA d' Excel 2007, s'abstenir car je ne suis pas encore
équipé !
Cordialement
Robert Dezan

PS : SOS, Modeste, tu dois bien avoir ça dans ton livre de chevet !!!