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

Question esthetique

10 réponses
Avatar
milloche
Bonjour le forum
J'utilise presque uniquement des boutons dessinés car ils sont souvent chez
moi multifonction.
A l'arrêt, bouton gris, etat 0 (couleur code 22)
Un clic, bouton vert, etat 1 (couleur code 4), mamacro1
Second clic, bouton rouge, etat 2 (couleur code 3), mamacro2
Troisième clic, retour à l'état 0, (couleur code 22), mamacro0
Pour faire joli, je voudrais que le gris de l'état 0 soit exactement le
même que le gris excel, celui des boutons formulaire ou de la barre des
menus. Le code 22 est gris, mais pas le même que le gris excel.
J'ai essayé de créer ce gris en RGB, mais cela revient à chercher un mot de
passe oublié.
Quelqu'un connaît le truc et la formule à utiliser ?
Merci.

10 réponses

Avatar
LE TROLL
Bonjour,

Déjà, un bouton n'a que deux états, et non trois, d'autant qu'au second
état, tu ne peux revenir au premier sans passer par le troisième, donc objet
inadapté à sa fonction :o)

Sinon, tu fais une copie d'écran collée dans Paint, puis avec la pipette
tu prends la couleur en question, et in fine tu regardes sa valeur en
affichant le menu des couleurs personnelles (composées) dans le logiciel,
ainsi tu auras le code...

Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"milloche" a écrit dans le message de
news:
Bonjour le forum
J'utilise presque uniquement des boutons dessinés car ils sont souvent
chez moi multifonction.
A l'arrêt, bouton gris, etat 0 (couleur code 22)
Un clic, bouton vert, etat 1 (couleur code 4), mamacro1
Second clic, bouton rouge, etat 2 (couleur code 3), mamacro2
Troisième clic, retour à l'état 0, (couleur code 22), mamacro0
Pour faire joli, je voudrais que le gris de l'état 0 soit exactement le
même que le gris excel, celui des boutons formulaire ou de la barre des
menus. Le code 22 est gris, mais pas le même que le gris excel.
J'ai essayé de créer ce gris en RGB, mais cela revient à chercher un mot
de passe oublié.
Quelqu'un connaît le truc et la formule à utiliser ?
Merci.



Avatar
LE TROLL
Suite, je viens de regarder dans VB les commandes de base, alors pour trois
états tu as un comboBox, ou les boutons radio (très adaptés pour ce que tu
veux en faire), toutefois, si tu en as plusieurs boutons, ça ne marchera
bien qu'avec des frames, et je crois que vbA n'accepte pas les frames, alors
il ne reste plus que le comboBox, ou encore un bouton pour chaque état (on
présente les boutons par groupe de trois et on gère leur apparence et leur
accès selon les besoins). d'ailleurs, même mécaniquement il est exceptionnel
d'avoir un bouton-poussoir à trois états, pour la bonne raison que
généralement on voit le bouton du dessus, et donc on ne peut deviner qu'il
faut le pousser soit à moitié, soit totalement, c'est absolument illogique !

Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"milloche" a écrit dans le message de
news:
Bonjour le forum
J'utilise presque uniquement des boutons dessinés car ils sont souvent
chez moi multifonction.
A l'arrêt, bouton gris, etat 0 (couleur code 22)
Un clic, bouton vert, etat 1 (couleur code 4), mamacro1
Second clic, bouton rouge, etat 2 (couleur code 3), mamacro2
Troisième clic, retour à l'état 0, (couleur code 22), mamacro0
Pour faire joli, je voudrais que le gris de l'état 0 soit exactement le
même que le gris excel, celui des boutons formulaire ou de la barre des
menus. Le code 22 est gris, mais pas le même que le gris excel.
J'ai essayé de créer ce gris en RGB, mais cela revient à chercher un mot
de passe oublié.
Quelqu'un connaît le truc et la formule à utiliser ?
Merci.



Avatar
milloche
Merci LE TROLL
Mon bouton fonctionne très bien. J'en ai même qui ont 5 fonctions. Mais
bien sûr, il exécute les 5 macros dans l'ordre chronologique. Je ne peux
passer de l'etat 1 à 5, il faut que je fasse le tour.
Mon seul problème est de reproduire exactement le gris excel.
Je n'arrive pas à utiliser ton truc Mspaint, car j'obtiens 6 paramètres (r
g b transparence saturation etc)
J'ai crée pour voir un vrai bouton contrôle et j'obtiens dans les
propriétés backcolor= &H8000000F&
Comment expliquer à excel que c'est cette couleur que je veux comme
"ShapeRange.Fillcolor.sheme color" pour mon bouton dessin ?
Exemple : Que mettre à la place de 22 pour avoir le gris excel exact. Si je
mets &H8000000F& j'ai une erreur. J'ai enlevé les &, mis des parenthèses,
des guillemets, rien à faire.

ActiveSheet.DrawingObjects("BoutCoul").ShapeRange.Fillcolor.ForeColor.SchemeColor
= 22

Le bouton lui-même et les macros associées fonctionnent impeccable.
Je voudrais juste la définition du gris excel que mes macros comprennent.
@ +

"LE TROLL" <le a écrit dans le message de news:

Suite, je viens de regarder dans VB les commandes de base, alors pour
trois états tu as un comboBox, ou les boutons radio (très adaptés pour ce
que tu veux en faire), toutefois, si tu en as plusieurs boutons, ça ne
marchera bien qu'avec des frames, et je crois que vbA n'accepte pas les
frames, alors il ne reste plus que le comboBox, ou encore un bouton pour
chaque état (on présente les boutons par groupe de trois et on gère leur
apparence et leur accès selon les besoins). d'ailleurs, même
mécaniquement il est exceptionnel d'avoir un bouton-poussoir à trois
états, pour la bonne raison que généralement on voit le bouton du dessus,
et donc on ne peut deviner qu'il faut le pousser soit à moitié, soit
totalement, c'est absolument illogique !

Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"milloche" a écrit dans le message de
news:
Bonjour le forum
J'utilise presque uniquement des boutons dessinés car ils sont souvent
chez moi multifonction.
A l'arrêt, bouton gris, etat 0 (couleur code 22)
Un clic, bouton vert, etat 1 (couleur code 4), mamacro1
Second clic, bouton rouge, etat 2 (couleur code 3), mamacro2
Troisième clic, retour à l'état 0, (couleur code 22), mamacro0
Pour faire joli, je voudrais que le gris de l'état 0 soit exactement le
même que le gris excel, celui des boutons formulaire ou de la barre des
menus. Le code 22 est gris, mais pas le même que le gris excel.
J'ai essayé de créer ce gris en RGB, mais cela revient à chercher un mot
de passe oublié.
Quelqu'un connaît le truc et la formule à utiliser ?
Merci.






Avatar
milloche
Pour ce qui est de la logique, sur ta voiture, tu dois avoir 5 vitesses,
mais tu ne passe pas en 5eme lorsque tu est en 1ere !
Mon bouton fonctionne de la même façon !
<]:o))

"milloche" a écrit dans le message de news:
%23Ua%
Merci LE TROLL
Mon bouton fonctionne très bien. J'en ai même qui ont 5 fonctions. Mais
bien sûr, il exécute les 5 macros dans l'ordre chronologique. Je ne peux
passer de l'etat 1 à 5, il faut que je fasse le tour.
Mon seul problème est de reproduire exactement le gris excel.
Je n'arrive pas à utiliser ton truc Mspaint, car j'obtiens 6 paramètres
(r g b transparence saturation etc)
J'ai crée pour voir un vrai bouton contrôle et j'obtiens dans les
propriétés backcolor= &H8000000F&
Comment expliquer à excel que c'est cette couleur que je veux comme
"ShapeRange.Fillcolor.sheme color" pour mon bouton dessin ?
Exemple : Que mettre à la place de 22 pour avoir le gris excel exact. Si
je mets &H8000000F& j'ai une erreur. J'ai enlevé les &, mis des
parenthèses, des guillemets, rien à faire.


ActiveSheet.DrawingObjects("BoutCoul").ShapeRange.Fillcolor.ForeColor.SchemeColor
= 22

Le bouton lui-même et les macros associées fonctionnent impeccable.
Je voudrais juste la définition du gris excel que mes macros comprennent.
@ +

"LE TROLL" <le a écrit dans le message de news:

Suite, je viens de regarder dans VB les commandes de base, alors pour
trois états tu as un comboBox, ou les boutons radio (très adaptés pour
ce que tu veux en faire), toutefois, si tu en as plusieurs boutons, ça
ne marchera bien qu'avec des frames, et je crois que vbA n'accepte pas
les frames, alors il ne reste plus que le comboBox, ou encore un bouton
pour chaque état (on présente les boutons par groupe de trois et on gère
leur apparence et leur accès selon les besoins). d'ailleurs, même
mécaniquement il est exceptionnel d'avoir un bouton-poussoir à trois
états, pour la bonne raison que généralement on voit le bouton du
dessus, et donc on ne peut deviner qu'il faut le pousser soit à moitié,
soit totalement, c'est absolument illogique !

Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"milloche" a écrit dans le message de
news:
Bonjour le forum
J'utilise presque uniquement des boutons dessinés car ils sont souvent
chez moi multifonction.
A l'arrêt, bouton gris, etat 0 (couleur code 22)
Un clic, bouton vert, etat 1 (couleur code 4), mamacro1
Second clic, bouton rouge, etat 2 (couleur code 3), mamacro2
Troisième clic, retour à l'état 0, (couleur code 22), mamacro0
Pour faire joli, je voudrais que le gris de l'état 0 soit exactement le
même que le gris excel, celui des boutons formulaire ou de la barre des
menus. Le code 22 est gris, mais pas le même que le gris excel.
J'ai essayé de créer ce gris en RGB, mais cela revient à chercher un
mot de passe oublié.
Quelqu'un connaît le truc et la formule à utiliser ?
Merci.










Avatar
isabelle
bonjour Milloche,

couleur des entête de ligne et de colonne RGB(239, 237, 222)

il y a un classeur à télécharger ici :
http://silkyroad.developpez.com/VBA/ConversionCodesCouleurs/

très pratique pour récupérer les valeurs de couleur RGB, Hex et Long
merci à SilkyRoad

isabelle

milloche a écrit :
Pour ce qui est de la logique, sur ta voiture, tu dois avoir 5 vitesses,
mais tu ne passe pas en 5eme lorsque tu est en 1ere !
Mon bouton fonctionne de la même façon !
<]:o))

"milloche" a écrit dans le message de news:
%23Ua%

Merci LE TROLL
Mon bouton fonctionne très bien. J'en ai même qui ont 5 fonctions. Mais
bien sûr, il exécute les 5 macros dans l'ordre chronologique. Je ne peux
passer de l'etat 1 à 5, il faut que je fasse le tour.
Mon seul problème est de reproduire exactement le gris excel.
Je n'arrive pas à utiliser ton truc Mspaint, car j'obtiens 6 paramètres
(r g b transparence saturation etc)
J'ai crée pour voir un vrai bouton contrôle et j'obtiens dans les
propriétés backcolor= &H8000000F&
Comment expliquer à excel que c'est cette couleur que je veux comme
"ShapeRange.Fillcolor.sheme color" pour mon bouton dessin ?
Exemple : Que mettre à la place de 22 pour avoir le gris excel exact. Si
je mets &H8000000F& j'ai une erreur. J'ai enlevé les &, mis des
parenthèses, des guillemets, rien à faire.


ActiveSheet.DrawingObjects("BoutCoul").ShapeRange.Fillcolor.ForeColor.SchemeColor
= 22

Le bouton lui-même et les macros associées fonctionnent impeccable.
Je voudrais juste la définition du gris excel que mes macros comprennent.
@ +

"LE TROLL" <le a écrit dans le message de news:


Suite, je viens de regarder dans VB les commandes de base, alors pour
trois états tu as un comboBox, ou les boutons radio (très adaptés pour
ce que tu veux en faire), toutefois, si tu en as plusieurs boutons, ça
ne marchera bien qu'avec des frames, et je crois que vbA n'accepte pas
les frames, alors il ne reste plus que le comboBox, ou encore un bouton
pour chaque état (on présente les boutons par groupe de trois et on gère
leur apparence et leur accès selon les besoins). d'ailleurs, même
mécaniquement il est exceptionnel d'avoir un bouton-poussoir à trois
états, pour la bonne raison que généralement on voit le bouton du
dessus, et donc on ne peut deviner qu'il faut le pousser soit à moitié,
soit totalement, c'est absolument illogique !

Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"milloche" a écrit dans le message de
news:

Bonjour le forum
J'utilise presque uniquement des boutons dessinés car ils sont souvent
chez moi multifonction.
A l'arrêt, bouton gris, etat 0 (couleur code 22)
Un clic, bouton vert, etat 1 (couleur code 4), mamacro1
Second clic, bouton rouge, etat 2 (couleur code 3), mamacro2
Troisième clic, retour à l'état 0, (couleur code 22), mamacro0
Pour faire joli, je voudrais que le gris de l'état 0 soit exactement le
même que le gris excel, celui des boutons formulaire ou de la barre des
menus. Le code 22 est gris, mais pas le même que le gris excel.
J'ai essayé de créer ce gris en RGB, mais cela revient à chercher un
mot de passe oublié.
Quelqu'un connaît le truc et la formule à utiliser ?
Merci.














Avatar
milloche
Toujours la logique, version 2
J'ai un ventilateur avec un bouton marche/arrêt puis un autre bouton pour
la vitesse.
A chaque pression sur ce bouton, sa vitesse augmente, jusqu'a la vitesse
maxi et la, un nouvel appui le ramène à la vitesse minimum. Mais un seul
bouton vitesse.
<]:o))

"milloche" a écrit dans le message de news:
uF9OD%
Pour ce qui est de la logique, sur ta voiture, tu dois avoir 5 vitesses,
mais tu ne passe pas en 5eme lorsque tu est en 1ere !
Mon bouton fonctionne de la même façon !
<]:o))

"milloche" a écrit dans le message de news:
%23Ua%
Merci LE TROLL
Mon bouton fonctionne très bien. J'en ai même qui ont 5 fonctions. Mais
bien sûr, il exécute les 5 macros dans l'ordre chronologique. Je ne peux
passer de l'etat 1 à 5, il faut que je fasse le tour.
Mon seul problème est de reproduire exactement le gris excel.
Je n'arrive pas à utiliser ton truc Mspaint, car j'obtiens 6 paramètres
(r g b transparence saturation etc)
J'ai crée pour voir un vrai bouton contrôle et j'obtiens dans les
propriétés backcolor= &H8000000F&
Comment expliquer à excel que c'est cette couleur que je veux comme
"ShapeRange.Fillcolor.sheme color" pour mon bouton dessin ?
Exemple : Que mettre à la place de 22 pour avoir le gris excel exact. Si
je mets &H8000000F& j'ai une erreur. J'ai enlevé les &, mis des
parenthèses, des guillemets, rien à faire.


ActiveSheet.DrawingObjects("BoutCoul").ShapeRange.Fillcolor.ForeColor.SchemeColor
= 22

Le bouton lui-même et les macros associées fonctionnent impeccable.
Je voudrais juste la définition du gris excel que mes macros
comprennent.
@ +

"LE TROLL" <le a écrit dans le message de news:

Suite, je viens de regarder dans VB les commandes de base, alors pour
trois états tu as un comboBox, ou les boutons radio (très adaptés pour
ce que tu veux en faire), toutefois, si tu en as plusieurs boutons, ça
ne marchera bien qu'avec des frames, et je crois que vbA n'accepte pas
les frames, alors il ne reste plus que le comboBox, ou encore un bouton
pour chaque état (on présente les boutons par groupe de trois et on
gère leur apparence et leur accès selon les besoins). d'ailleurs, même
mécaniquement il est exceptionnel d'avoir un bouton-poussoir à trois
états, pour la bonne raison que généralement on voit le bouton du
dessus, et donc on ne peut deviner qu'il faut le pousser soit à moitié,
soit totalement, c'est absolument illogique !

Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"milloche" a écrit dans le message de
news:
Bonjour le forum
J'utilise presque uniquement des boutons dessinés car ils sont souvent
chez moi multifonction.
A l'arrêt, bouton gris, etat 0 (couleur code 22)
Un clic, bouton vert, etat 1 (couleur code 4), mamacro1
Second clic, bouton rouge, etat 2 (couleur code 3), mamacro2
Troisième clic, retour à l'état 0, (couleur code 22), mamacro0
Pour faire joli, je voudrais que le gris de l'état 0 soit exactement
le même que le gris excel, celui des boutons formulaire ou de la barre
des menus. Le code 22 est gris, mais pas le même que le gris excel.
J'ai essayé de créer ce gris en RGB, mais cela revient à chercher un
mot de passe oublié.
Quelqu'un connaît le truc et la formule à utiliser ?
Merci.














Avatar
MichDenis
Bonjour Milloche,

Si tu es sur une version antérieure à excel 2007, il faut oublier cela.
Ces classeurs ne peuvent pas afficher plus de 56 couleurs par palette
de couleurs. Cependant, tu peux définir autant de palette de couleurs
que tu veux avec toutes sortes de couleurs. Pour ce faire, c'est-à-dire
modifier un index des couleurs de la palette d'un classeur, tu dois
utiliser la ligne de code suivante :

'Tu choisis lequel des index tu veux modifier entre 1 et 56
ThisWorkbook.Color(1) = VBA.RGB(255, 124, 26)

Ensuite, tu peux utiliser cet index pour définir la couleur d'un objet
en utilisant la propriété MonObject.ColorIndex =1 (en fait l'index
que tu as défini )

Si tu utilises un bouton de commande de la barre d'outils
contrôle, en mode création, dans les propriétés du bouton,
tu peux définir la propriété "BackColor" en utilisant les couleurs
système qu'affiche l'application.

Un exemple de code pour accéder aux principales
propriétés d'un bouton de commande :
'--------------------------------------------
Sub Bouton_Commande_Contrôle1()

'Code avec un Bouton de commande
'de la barre d'outils "Contrôle"

With ActiveSheet
With .OLEObjects("CommandButton2")
'.Delete 'si désiré
With .Object
.Caption = "denis"
With .Font
.Name = "Arial"
.Size = 14
.Bold = True
.Underline = True
End With
.ForeColor = RGB(125, 100, 255)
.BackColor = RGB(255, 255, 255)
.AutoSize = True
.Enabled = True
End With
End With
End With
End Sub
'--------------------------------------------

Si cela t'intéresse, tu peux utiliser cet API pour obtenir les
différentes couleurs système. Dans ta procédure, au lieux
d'utiliser ThisWorkbook.colors(1) = Rgb(12,45,158), tu peux
utiliser ceci :
ThisWorkbook.Colors(1)= GetSysColor(COLOR_ACTIVEBORDER)
si tu préfères, tu peux utiliser la valeur numérique pour chacune
des constantes.

'Déclaration de l'API dans le haut d'un module standard :
Declare Function GetSysColor Lib "user32" (ByVal nIndex As Long) As Long

'Liste des constantes disponibles - Haut du module standard.
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
Avatar
LE TROLL
Bonjour, bonjour,

Il faut simplement tenir compte des couleurs rouge, vert et bleu (rgb),
a priori (sous réserve), ça donne 240,240,240 le gris (soit f0f0f0), alors
que ton gris (7) à 16 couleurs ça donne (c0c0c0) h.
La couleur VB sur 8 bits (un octet), c'est une décomposition en 4 fois 2
bits, les bits allant par paires, soit dans l'ordre : couleur système ou
palette, puis r, g, b, soit 00,00,00,00 = système (80) ou pas (00) ; 00
rouge, 00 vert, 00 bleu en hexa.
Le système que tu utilises est un 16 couleurs, commande VB =
QBColor(couleur), alors que tu veux utiliser un 16 millions, la commande VB
est : rgb(rouge, vert, bleu)
Le tout en décimal, je ne sais pas si cette commande fonctionne sous vbA ?
ça donnerait :
command1.baccolor = rgb(240, 240, 240)
Mais... dans VB si on fait ça, il faut préalablement déclarer que c'est un
objet avec un style graphique (graphical ou 1), soit au total :
command1.style = 1
command1.baccolor = rgb(240, 240, 240)
Mais attention certaines commandes ne sont pas acceptées dans le code, dans
ce cas tu auras un message d'erreur, car il faut les déclarer dans les
propriété de l'éditeur de propriétés, qu'elles soient présentes avant le
lancement du code écrit.
Bon, si ça ne marche pas, il faut trouver l'équivalence vbA, là je ne sais
pas :o)

Est-ce que ça marche ???

Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"milloche" a écrit dans le message de
news:uF9OD%
Pour ce qui est de la logique, sur ta voiture, tu dois avoir 5 vitesses,
mais tu ne passe pas en 5eme lorsque tu est en 1ere !
Mon bouton fonctionne de la même façon !
<]:o))

"milloche" a écrit dans le message de news:
%23Ua%
Merci LE TROLL
Mon bouton fonctionne très bien. J'en ai même qui ont 5 fonctions. Mais
bien sûr, il exécute les 5 macros dans l'ordre chronologique. Je ne peux
passer de l'etat 1 à 5, il faut que je fasse le tour.
Mon seul problème est de reproduire exactement le gris excel.
Je n'arrive pas à utiliser ton truc Mspaint, car j'obtiens 6 paramètres
(r g b transparence saturation etc)
J'ai crée pour voir un vrai bouton contrôle et j'obtiens dans les
propriétés backcolor= &H8000000F&
Comment expliquer à excel que c'est cette couleur que je veux comme
"ShapeRange.Fillcolor.sheme color" pour mon bouton dessin ?
Exemple : Que mettre à la place de 22 pour avoir le gris excel exact. Si
je mets &H8000000F& j'ai une erreur. J'ai enlevé les &, mis des
parenthèses, des guillemets, rien à faire.


ActiveSheet.DrawingObjects("BoutCoul").ShapeRange.Fillcolor.ForeColor.SchemeColor
= 22

Le bouton lui-même et les macros associées fonctionnent impeccable.
Je voudrais juste la définition du gris excel que mes macros comprennent.
@ +

"LE TROLL" <le a écrit dans le message de news:

Suite, je viens de regarder dans VB les commandes de base, alors pour
trois états tu as un comboBox, ou les boutons radio (très adaptés pour
ce que tu veux en faire), toutefois, si tu en as plusieurs boutons, ça
ne marchera bien qu'avec des frames, et je crois que vbA n'accepte pas
les frames, alors il ne reste plus que le comboBox, ou encore un bouton
pour chaque état (on présente les boutons par groupe de trois et on gère
leur apparence et leur accès selon les besoins). d'ailleurs, même
mécaniquement il est exceptionnel d'avoir un bouton-poussoir à trois
états, pour la bonne raison que généralement on voit le bouton du
dessus, et donc on ne peut deviner qu'il faut le pousser soit à moitié,
soit totalement, c'est absolument illogique !

Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"milloche" a écrit dans le message de
news:
Bonjour le forum
J'utilise presque uniquement des boutons dessinés car ils sont souvent
chez moi multifonction.
A l'arrêt, bouton gris, etat 0 (couleur code 22)
Un clic, bouton vert, etat 1 (couleur code 4), mamacro1
Second clic, bouton rouge, etat 2 (couleur code 3), mamacro2
Troisième clic, retour à l'état 0, (couleur code 22), mamacro0
Pour faire joli, je voudrais que le gris de l'état 0 soit exactement le
même que le gris excel, celui des boutons formulaire ou de la barre des
menus. Le code 22 est gris, mais pas le même que le gris excel.
J'ai essayé de créer ce gris en RGB, mais cela revient à chercher un
mot de passe oublié.
Quelqu'un connaît le truc et la formule à utiliser ?
Merci.














Avatar
LE TROLL
Hé hé, un accélérateur, oui tu peux en faire un avec un bouton (en
prenant les bonnes propriétés), par exemple si l'appui est permanent,
jusqu'à une seconde tu fais plus un, puis de une à deux secondes tu fais
plus dix, puis ensuite plus cent, et au lâcher tu stoppes évidemment
(MouseDown et MouseUp). Ceci par contre est plus logique, car il n'y a pas
d'objet de base qui accélère, par conséquent il faut le faire...

Le seul problème est que normalement l'objet est utilisé selon ses
propriétés, de facto un bouton à deux états sus-cités, on le clique (appui)
ou on ne le clique pas, or là tu lui donnes des propriété qu'il n'a pas
nativement, tu en es libre, toutefois je persiste à penser que la conception
n'est pas optimisée, car dans un choix multiple sans revenir en arrière,
théoriquement on n'utilise pas la même commande pour poursuivre, on en prend
une autre, c'est plus clair pour le code, ainsi ça me fait penser aux
programmes avec un inputBox qui demande toutes l'adresse question par
question, et si on se trompe on est foutu, faut faire toute la boucle, genre
: nom + <rc>, prénom + <rc>...

Sauf cas extrêmes, simplement le fait de ne pas pouvoir revenir en
arrière est tendancieux sur un point de vue programmation, m'enfin, c'est
toi le chef.

Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"milloche" a écrit dans le message de
news:
Toujours la logique, version 2
J'ai un ventilateur avec un bouton marche/arrêt puis un autre bouton pour
la vitesse.
A chaque pression sur ce bouton, sa vitesse augmente, jusqu'a la vitesse
maxi et la, un nouvel appui le ramène à la vitesse minimum. Mais un seul
bouton vitesse.
<]:o))

"milloche" a écrit dans le message de news:
uF9OD%
Pour ce qui est de la logique, sur ta voiture, tu dois avoir 5 vitesses,
mais tu ne passe pas en 5eme lorsque tu est en 1ere !
Mon bouton fonctionne de la même façon !
<]:o))

"milloche" a écrit dans le message de news:
%23Ua%
Merci LE TROLL
Mon bouton fonctionne très bien. J'en ai même qui ont 5 fonctions. Mais
bien sûr, il exécute les 5 macros dans l'ordre chronologique. Je ne peux
passer de l'etat 1 à 5, il faut que je fasse le tour.
Mon seul problème est de reproduire exactement le gris excel.
Je n'arrive pas à utiliser ton truc Mspaint, car j'obtiens 6 paramètres
(r g b transparence saturation etc)
J'ai crée pour voir un vrai bouton contrôle et j'obtiens dans les
propriétés backcolor= &H8000000F&
Comment expliquer à excel que c'est cette couleur que je veux comme
"ShapeRange.Fillcolor.sheme color" pour mon bouton dessin ?
Exemple : Que mettre à la place de 22 pour avoir le gris excel exact. Si
je mets &H8000000F& j'ai une erreur. J'ai enlevé les &, mis des
parenthèses, des guillemets, rien à faire.


ActiveSheet.DrawingObjects("BoutCoul").ShapeRange.Fillcolor.ForeColor.SchemeColor
= 22

Le bouton lui-même et les macros associées fonctionnent impeccable.
Je voudrais juste la définition du gris excel que mes macros
comprennent.
@ +

"LE TROLL" <le a écrit dans le message de news:

Suite, je viens de regarder dans VB les commandes de base, alors pour
trois états tu as un comboBox, ou les boutons radio (très adaptés pour
ce que tu veux en faire), toutefois, si tu en as plusieurs boutons, ça
ne marchera bien qu'avec des frames, et je crois que vbA n'accepte pas
les frames, alors il ne reste plus que le comboBox, ou encore un bouton
pour chaque état (on présente les boutons par groupe de trois et on
gère leur apparence et leur accès selon les besoins). d'ailleurs, même
mécaniquement il est exceptionnel d'avoir un bouton-poussoir à trois
états, pour la bonne raison que généralement on voit le bouton du
dessus, et donc on ne peut deviner qu'il faut le pousser soit à moitié,
soit totalement, c'est absolument illogique !

Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"milloche" a écrit dans le message de
news:
Bonjour le forum
J'utilise presque uniquement des boutons dessinés car ils sont souvent
chez moi multifonction.
A l'arrêt, bouton gris, etat 0 (couleur code 22)
Un clic, bouton vert, etat 1 (couleur code 4), mamacro1
Second clic, bouton rouge, etat 2 (couleur code 3), mamacro2
Troisième clic, retour à l'état 0, (couleur code 22), mamacro0
Pour faire joli, je voudrais que le gris de l'état 0 soit exactement
le même que le gris excel, celui des boutons formulaire ou de la barre
des menus. Le code 22 est gris, mais pas le même que le gris excel.
J'ai essayé de créer ce gris en RGB, mais cela revient à chercher un
mot de passe oublié.
Quelqu'un connaît le truc et la formule à utiliser ?
Merci.


















Avatar
milloche
Vous cassez plus la tête les mecs.
Isabelle a trouvé. Avec en prime un fichier à télécharger très intéressant.
Il faut faire : ShapeRange.Fill.ForeColor.RGB = RGB(239, 237, 222)
Cela me donne exactement le gris excel que je recherchais.
Un grand merci à tous trois.
Une bise en plus à Isabelle
<]:o))






"MichDenis" a écrit dans le message de news:
%
Bonjour Milloche,

Si tu es sur une version antérieure à excel 2007, il faut oublier cela.
Ces classeurs ne peuvent pas afficher plus de 56 couleurs par palette
de couleurs. Cependant, tu peux définir autant de palette de couleurs
que tu veux avec toutes sortes de couleurs. Pour ce faire, c'est-à-dire
modifier un index des couleurs de la palette d'un classeur, tu dois
utiliser la ligne de code suivante :

'Tu choisis lequel des index tu veux modifier entre 1 et 56
ThisWorkbook.Color(1) = VBA.RGB(255, 124, 26)

Ensuite, tu peux utiliser cet index pour définir la couleur d'un objet
en utilisant la propriété MonObject.ColorIndex =1 (en fait l'index
que tu as défini )

Si tu utilises un bouton de commande de la barre d'outils
contrôle, en mode création, dans les propriétés du bouton,
tu peux définir la propriété "BackColor" en utilisant les couleurs
système qu'affiche l'application.

Un exemple de code pour accéder aux principales
propriétés d'un bouton de commande :
'--------------------------------------------
Sub Bouton_Commande_Contrôle1()

'Code avec un Bouton de commande
'de la barre d'outils "Contrôle"

With ActiveSheet
With .OLEObjects("CommandButton2")
'.Delete 'si désiré
With .Object
.Caption = "denis"
With .Font
.Name = "Arial"
.Size = 14
.Bold = True
.Underline = True
End With
.ForeColor = RGB(125, 100, 255)
.BackColor = RGB(255, 255, 255)
.AutoSize = True
.Enabled = True
End With
End With
End With
End Sub
'--------------------------------------------

Si cela t'intéresse, tu peux utiliser cet API pour obtenir les
différentes couleurs système. Dans ta procédure, au lieux
d'utiliser ThisWorkbook.colors(1) = Rgb(12,45,158), tu peux
utiliser ceci :
ThisWorkbook.Colors(1)= GetSysColor(COLOR_ACTIVEBORDER)
si tu préfères, tu peux utiliser la valeur numérique pour chacune
des constantes.

'Déclaration de l'API dans le haut d'un module standard :
Declare Function GetSysColor Lib "user32" (ByVal nIndex As Long) As Long

'Liste des constantes disponibles - Haut du module standard.
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