[Resolu]choix d'une couleur dans un userform (VBA)

choix d'une couleur dans un userform (VBA) [Resolu] - VB/VBA/VBS - Programmation

Marsh Posté le 19-07-2006 à 15:41:35    

Bonjour,
 
Je voudrais savoir s'il est possible de faire choisir à l'utilisateur une couleur dans un userform avec un objet (que je connais pas) afin de l'appliquer sur une cellule.
 
Merci.

Message cité 1 fois
Message édité par Paul Hood le 21-07-2006 à 08:46:32
Reply

Marsh Posté le 19-07-2006 à 15:41:35   

Reply

Marsh Posté le 19-07-2006 à 15:43:56    

Paul Hood a écrit :

Bonjour,
 
Je voudrais savoir s'il est possible de faire choisir à l'utilisateur une couleur dans un userform avec un objet (que je connais pas) afin de l'appliquer sur une cellule.
 
Merci.


il y a en effet plusieurs moyens d'arriver à cette fin. Quelle est ton support de choix de couleur ? image ? bouton ? code hexa ? texte ? dis nous en plus stp :)

Reply

Marsh Posté le 19-07-2006 à 15:46:38    

En fait l'utilisateur sélectionne une couleur (je ne sais pas comment) et je la récupère pour l'appliquer sur des cellules.
Mon support de choix de couleur je ne le connais pas, j'imagine bien une palette, ou un truc du genre .... mais je ne connais pas l'objet correspondant à intégrer à mon userform....

Reply

Marsh Posté le 19-07-2006 à 15:49:34    

Paul Hood a écrit :

En fait l'utilisateur sélectionne une couleur (je ne sais pas comment) et je la récupère pour l'appliquer sur des cellules.
Mon support de choix de couleur je ne le connais pas, j'imagine bien une palette, ou un truc du genre .... mais je ne connais pas l'objet correspondant à intégrer à mon userform....


perso j'ai fait ca pour un mastermind, en cliquant sur une image par exemple.
tu appliques dans ton evenement déclencheur ta fonction .interior.colorindex par exemple.

Reply

Marsh Posté le 19-07-2006 à 16:14:18    

En fait j'ai récupéré un ensemble de valeurs de couleur RGB(255,255,0) pour le jaune, etc... je mets jaune, vert dans une listbox et quand l'utilisateur choisit sa couleur je récupére le RGB correspondant et je l'applique à la cellule.

Reply

Marsh Posté le 19-07-2006 à 16:45:05    

tu cherchais un bout de code en particulier ?
pour le code RGB, moi je passais en Hexa avec les &H.......&
 

Reply

Marsh Posté le 19-07-2006 à 16:49:24    

essaiye ca :
 
Application.Dialogs(xlDialogPatterns).Show
MsgBox "Background color: " & Selection.Interior.ColorIndex
MsgBox "Font color: " & Selection.Font.ColorIndex
 
ce code va t'afficher la boite de dialogue permettant le choix d'une couleur
la valeur sera en decimal
 
il faudra ensuite la convertir en hexadecimal et l'utiliser dans les propriété des composants de ta userform
 
http://www.help-info.net/convertis [...] cimal.html
on doit bien pouvoir faire la conversion en programmant cela sous VBA
 
Edit  
je viens de m'appercevoir que les données d'origine sont en decimal... mais tu devrais trouver ton bonheur ici :
http://www.vbfrance.com/codes/HEXA [...] 27172.aspx


Message édité par daniel-12 le 19-07-2006 à 16:55:28
Reply

Marsh Posté le 19-07-2006 à 17:19:07    

bonsoir,
je sais pas si ça peux t'interresser

Code :
  1. Sub test()
  2. i = Application.Dialogs(xlDialogPatterns).Show
  3. End Sub

Pour les polices, tu peux remplacer la constante xlDialogPatterns par :
xlDialogFontProperties ou  
xlDialogFormatFont
ya p'tetre d'autre constantes... YAKA Chercher !
A+
 
 
Bah ! j'ai un peu de retard :D


Message édité par galopin01 le 19-07-2006 à 17:20:36
Reply

Marsh Posté le 19-07-2006 à 17:20:59    

la aussi c'est très intéressant  
http://xlwiki.free.fr/wiki/wakka.php?wiki=PickColor

Reply

Marsh Posté le 21-07-2006 à 08:46:16    

Merci.
J'ai trouvé. En fait je voulais faire correspondre les couleurs de fond d'un bouton (backcolor) avec les couleurs d'un texte dans une feuille (colorindex).
En fait les 56 couleurs de base dans la feuille excel peuvent être réaffectées avec ActiveWorkbook.Colors(NumCouleur)=RGB(x,y,z)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed