toto = vbWindowBackground
MsgBox toto
MsgBox Hex(vbWindowBackground) & vbCrLf & "0x80000005"
MsgBox Val("&H80000005") = vbWindowBackground
Private lacoul As Long
Private Type mescomposantes
R As Long
G As Long
B As Long
End Type
Private Declare Function TranslateColor Lib "olepro32.dll" Alias "OleTranslateColor" (ByVal clr As OLE_COLOR, ByVal palet As Long, col As Long) As Long
Private Sub Command1_Click()
Dim coulchoisie As Long
coulchoisie = vbWindowBackground ' ou celle que tu veux parmi les constantes/couleurs/système
ret = TranslateColor(coulchoisie, 0, lacoul)
MsgBox "la couleur choisie est ainsi composée, dans l'ordre R,G,B : " & vbCrLf & TRANSLATERGB(lacoul).R & vbCrLf & TRANSLATERGB(lacoul).G & vbCrLf & TRANSLATERGB(lacoul).B
End Sub
Private Function TRANSLATERGB(ByVal lacoul) As mescomposantes
TranslateColor lacoul, 0, lacoul
TRANSLATERGB.R = lacoul And &HFF&
TRANSLATERGB.G = (lacoul And &HFF00&) / 2 ^ 8
TRANSLATERGB.B = (lacoul And &HFF0000) / 2 ^ 16
End Function
Private Type mescomposantes
R As Long
G As Long
B As Long
End Type
Private Declare Function TranslateColor Lib "olepro32.dll" Alias "OleTranslateColor" (ByVal clr As OLE_COLOR, ByVal palet As Long, col As Long) As Long
Private Sub Command1_Click()
Dim coulchoisie As Long
coulchoisie = vbHighlight ' où celle que tu veux parmi les constantes/couleurs/système
MsgBox "la couleur choisie est ainsi composée, dans l'ordre R,G,B : " & vbCrLf & TRANSLATERGB(coulchoisie).R & vbCrLf & TRANSLATERGB(coulchoisie).G & vbCrLf & TRANSLATERGB(coulchoisie).B
End Sub
Private Function TRANSLATERGB(ByVal coulchoisie As Long) As mescomposantes
Dim lacoul As Long
TranslateColor coulchoisie, 0, lacoul
TRANSLATERGB.R = lacoul And &HFF&
TRANSLATERGB.G = (lacoul And &HFF00&) / 2 ^ 8
TRANSLATERGB.B = (lacoul And &HFF0000) / 2 ^ 16
End Function
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.