RGB

D

Douglas J. Steele

Believe it or not, 123456 is RGB, but in the reverse order. If you convert
that value to Hex (01E240), the first 2 digits (Hex 01, or Decimal 1) are
the Blue value, the middle 2 digits (Hex E2, or decimal 226) are the Green
value and the last 2 digits (Hex 40, or Decimal 64) are the Red value.

Try the following will work:

Function Red(ColourValue As Long) As Long
Dim strHexColour As String

strHexColour = Right$("000000" & Hex(ColourValue), 6)
Red = CLng("&H" & Right$(strHexColour, 2))


End Function


Function Green(ColourValue As Long) As Long
Dim strHexColour As String


strHexColour = Right$("000000" & Hex(ColourValue), 6)
Green = CLng("&H" & Mid$(strHexColour, 3, 2))


End Function


Function Blue(ColourValue As Long) As Long
Dim strHexColour As String


strHexColour = Right$("000000" & Hex(ColourValue), 6)
Blue = CLng("&H" & Left$(strHexColour, 2))


End Function
 
R

RABEA

Hello All
Can Anyone Tell Me How Can I Get The RGP Color Format RGB(,,) For The
BackColor

For Example The BackColor For The Form Is 123456
What Is The RGB Equvalant To It

Thanks For All In Advanced
 
J

Jamie Collins

If you convert
that value to Hex (01E240), the first 2 digits (Hex 01, orDecimal1) are
the Blue value

Function Blue(ColourValue As Long) As Long
Dim strHexColour As String

strHexColour = Right$("000000" & Hex(ColourValue), 6)
Blue = CLng("&H" & Left$(strHexColour, 2))

End Function

You could use bit-wise operators:

Sub SplitRGB( _
ByVal RGBValue As Long, _
ByRef R As Long, _
ByRef G As Long, _
ByRef B As Long _
)
R = RGBValue And 255
G = RGBValue \ 256 And 255
B = RGBValue \ 256 ^ 2 And 255
End Sub

Jamie.

--
 
P

Pieter Wijnen

Or
R = RGBValue And &HFF&
G = (RGBValue And &HFF00&) \ &H100&
B = (RGBValue And &HFF0000&) \ &H10000&

Pieter
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads

RGB 4
Excel 2007 VBA: Convert laaaaarge number to Hex 27
call the function query 2
Trimming a dynamically changing string 2
UDF to return as text 4
RC4 StrToHex function 1
Excel VBA 1
hex2dec conversion using mscomm 1

Top