What does VBA Excel RGB Property do?
VBA Excel RGB Property is a color Property of Objects, commonly used for Cell color or Shape color.
“RGB” stands for Red Green Blue, which are known as three additive primary colors, which can be combined to produce other colors. For example, purple is a mix of blue and red. In RGB Property, you need to give a value (from 0 to 255) for each color in order to mix a new color. For example, Red = 255 means the brightness of color red is 100%.
If you try to change a color but you don’t know the color code, you can visit the websites below
You may also want to compare ColorIndex Property with RGB Property to use a different Property to set color for Cells.
Syntax of VBA Excel RGB Property
expression.RGB(red, green, blue)
|red||Integer from 0-255|
|green||Integer from 0-255|
|blue||Integer from 0-255|
Example of Excel VBA RGB Property
Example 1: Set Cell A1 font color to red
Range("A1").Font.Color = RGB(255, 0, 0)
Example 2: Set Cell A1 back color to red
Range("A1").Interior.Color = RGB(255, 0, 0)
Example 3: Set Cell A1 border color to red
Range("A1").Borders.Color = RGB(255, 0, 0)
Get RGB Color
Usually Property comes in a pair, one is to Set Property Method and another is Get Property Method. However, RGB does not seem to have the Get Method.
To get the RGB Color, we need to get the use Interior.Color Property to get Interior Color first and then convert to RGB color based on the below formula
Interior Color = red+ green * 256 + blue * 256 ^ 2
Note carefully that if a Cell is colorless (no color), Interior.Color would return value 16777215, which is also the white color.
Below is a Function to get RGB color, where r, g, b are RGB value of Red, Green, Blue
Public Function wRGB(rng As Range) Dim intColor As Long Dim rgb As String intColor = rng.Interior.Color r = intColor And 255 g = intColor \ 256 And 255 b = intColor \ 256 ^ 2 And 255 wRGB = r & "," & g & "," & b End Function