OVH Cloud OVH Cloud

ColorPalette

4 réponses
Avatar
RGI
Bonjour

je voudrai utiliser la boite de dialogue colorpalette

Application.Dialogs(xlDialogColorPalette).Show

afin de donner au label1 la couleur choisie
pouvez vous me donner la procédure qu'il faut utiliser
pour avoir par exemple :
Me.Label1.BackColor = 8454143

merci

RGI

4 réponses

Avatar
MichDenis
Tu peux procéder de cette façon :

'première ligne de code sert à modifier la couleur No 1
'de la palette de couleur du classeur
Application.Dialogs(xlDialogColorPalette).Show
'Affecte à une cellule la couleur qui vient d'être modifié à la palette du Classeur
Range("A1").Interior.Color = ThisWorkbook.Colors(1)

P.S. un classeur ne peut pas avoir plus de 56 couleurs dans sa palette
chaque couleur à un index de 1 à 56
En conséquence, si tu modifies la couleur de l'index 1 de ThisWorkbook.Colors(1)
la cellule qui en est affecté modifiera la couleur affichée.

La suite ---> Modeste te donnera tous les détails sur le sujet... c'est un peintre !!!



"RGI" a écrit dans le message de news:
%
Bonjour

je voudrai utiliser la boite de dialogue colorpalette

Application.Dialogs(xlDialogColorPalette).Show

afin de donner au label1 la couleur choisie
pouvez vous me donner la procédure qu'il faut utiliser
pour avoir par exemple :
Me.Label1.BackColor = 8454143

merci

RGI
Avatar
RGI
Merci Denis

J'ai essayé avec ceci mais je ne dois pas avoir la bonne référence

Private Function ChooseColor(ByVal iColor&) As Long
On Error GoTo Handler
With CreateObject("MSComDlg.CommonDialog")
.CancelError = True
.Flags = &H105 ' Choix simplifié (sans bouton d'aide)
.Color = iColor
.ShowColor
ChooseColor = .Color
End With
Handler:
End Function


Tu peux procéder de cette façon :

'première ligne de code sert à modifier la couleur No 1
'de la palette de couleur du classeur
Application.Dialogs(xlDialogColorPalette).Show
'Affecte à une cellule la couleur qui vient d'être modifié à la palette du Classeur
Range("A1").Interior.Color = ThisWorkbook.Colors(1)

P.S. un classeur ne peut pas avoir plus de 56 couleurs dans sa palette
chaque couleur à un index de 1 à 56
En conséquence, si tu modifies la couleur de l'index 1 de ThisWorkbook.Colors(1)
la cellule qui en est affecté modifiera la couleur affichée.

La suite ---> Modeste te donnera tous les détails sur le sujet... c'est un peintre !!!



"RGI" a écrit dans le message de news:
%
Bonjour

je voudrai utiliser la boite de dialogue colorpalette

Application.Dialogs(xlDialogColorPalette).Show

afin de donner au label1 la couleur choisie
pouvez vous me donner la procédure qu'il faut utiliser
pour avoir par exemple :
Me.Label1.BackColor = 8454143

merci

RGI





Avatar
MichDenis
Bonjour RGI,

Essaie ceci : Te permet de choisiir une couleur de la palette
existante d'excel et de l'affecter à une cellule.

'----------------------
Sub test1()
Range("A1").Interior.Color = ChooseColor()
End Sub

'----------------------
Private Function ChooseColor() As Long
On Error Resume Next
With CreateObject("MSComDlg.CommonDialog")
.CancelError = True
.Flags = &H105 ' Choix simplifié (sans bouton d'aide)
.Color = iColor
.ShowColor
ChooseColor = .Color
End With

End Function
'----------------------




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

Merci Denis

J'ai essayé avec ceci mais je ne dois pas avoir la bonne référence

Private Function ChooseColor(ByVal iColor&) As Long
On Error GoTo Handler
With CreateObject("MSComDlg.CommonDialog")
.CancelError = True
.Flags = &H105 ' Choix simplifié (sans bouton d'aide)
.Color = iColor
.ShowColor
ChooseColor = .Color
End With
Handler:
End Function


Tu peux procéder de cette façon :

'première ligne de code sert à modifier la couleur No 1
'de la palette de couleur du classeur
Application.Dialogs(xlDialogColorPalette).Show
'Affecte à une cellule la couleur qui vient d'être modifié à la palette du Classeur
Range("A1").Interior.Color = ThisWorkbook.Colors(1)

P.S. un classeur ne peut pas avoir plus de 56 couleurs dans sa palette
chaque couleur à un index de 1 à 56
En conséquence, si tu modifies la couleur de l'index 1 de ThisWorkbook.Colors(1)
la cellule qui en est affecté modifiera la couleur affichée.

La suite ---> Modeste te donnera tous les détails sur le sujet... c'est un peintre !!!



"RGI" a écrit dans le message de news:
%
Bonjour

je voudrai utiliser la boite de dialogue colorpalette

Application.Dialogs(xlDialogColorPalette).Show

afin de donner au label1 la couleur choisie
pouvez vous me donner la procédure qu'il faut utiliser
pour avoir par exemple :
Me.Label1.BackColor = 8454143

merci

RGI





Avatar
MichDenis
Tu auras compris que cette ligne de code ne sert à rien dans la fonction

'.Color = iColor

Elle fut simplement oubliée.




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

Bonjour RGI,

Essaie ceci : Te permet de choisiir une couleur de la palette
existante d'excel et de l'affecter à une cellule.

'----------------------
Sub test1()
Range("A1").Interior.Color = ChooseColor()
End Sub

'----------------------
Private Function ChooseColor() As Long
On Error Resume Next
With CreateObject("MSComDlg.CommonDialog")
.CancelError = True
.Flags = &H105 ' Choix simplifié (sans bouton d'aide)
.Color = iColor
.ShowColor
ChooseColor = .Color
End With

End Function
'----------------------




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

Merci Denis

J'ai essayé avec ceci mais je ne dois pas avoir la bonne référence

Private Function ChooseColor(ByVal iColor&) As Long
On Error GoTo Handler
With CreateObject("MSComDlg.CommonDialog")
.CancelError = True
.Flags = &H105 ' Choix simplifié (sans bouton d'aide)
.Color = iColor
.ShowColor
ChooseColor = .Color
End With
Handler:
End Function


Tu peux procéder de cette façon :

'première ligne de code sert à modifier la couleur No 1
'de la palette de couleur du classeur
Application.Dialogs(xlDialogColorPalette).Show
'Affecte à une cellule la couleur qui vient d'être modifié à la palette du Classeur
Range("A1").Interior.Color = ThisWorkbook.Colors(1)

P.S. un classeur ne peut pas avoir plus de 56 couleurs dans sa palette
chaque couleur à un index de 1 à 56
En conséquence, si tu modifies la couleur de l'index 1 de ThisWorkbook.Colors(1)
la cellule qui en est affecté modifiera la couleur affichée.

La suite ---> Modeste te donnera tous les détails sur le sujet... c'est un peintre !!!



"RGI" a écrit dans le message de news:
%
Bonjour

je voudrai utiliser la boite de dialogue colorpalette

Application.Dialogs(xlDialogColorPalette).Show

afin de donner au label1 la couleur choisie
pouvez vous me donner la procédure qu'il faut utiliser
pour avoir par exemple :
Me.Label1.BackColor = 8454143

merci

RGI