Experts Exchange always has the answer, or at the least points me in the correct direction! It is like having another employee that is extremely experienced.

Jim Murphy

Programmer at Smart IT Solutions

When asked, what has been your best career decision?

Deciding to stick with EE.

Mohamed Asif

Technical Department Head

Being involved with EE helped me to grow personally and professionally.

Carl Webster

CTP, Sr Infrastructure Consultant

Connect with Certified Experts to gain insight and support on specific technology challenges including:

Troubleshooting

Research

Professional Opinions

Ask a QuestionWe've partnered with two important charities to provide clean water and computer science education to those who need it most. READ MORE

troubleshooting Question

Hello,

This is a follow-up question to a previous thread located here:

**Auto-fill a cell's color based on numeric RGB values and vice versa in Excel**

In that thread, the solution (by**Ejgil Hedegaard**) includes an attached Excel file in which the fill color of a particular cell, automatically changes in response to entering various values in three other cells labeled R (red), G (green), & B (blue).

This functionality is tremendously useful for me (and I suspect will be for others) because it enables you to instantly view the new color resulting from changes in any of the RGB parameters (ie without the necessity of the four clicks typically required to obtain that information):

Home > Fill Color > More Colors > Custom

(The file also includes a chart for quickly converting from RGB decimal to RGB hex and vice versa.)

Additionally, the solution to the thread contains the formula for calculating Excel's color code:

ExcelColor = R + G *256 + B *256^2

For example:

Red = 204

Green = 102

Blue = 255

is calculated as follows:

ExcelColor = 204 + (102*256) + (255*256^2)

ExcelColor = 16737996

It also displays the following for reversing the process (ie :

R = C Mod 256

G = C \ 256 Mod 256

B = C \ 256^2 Mod 256

**Are these three formulas math or code and what is the purpose of the backslash?**

It seems that to reverse the process, the =FLOOR() function should be used to first determine Blue, then Green and then Red as follows:

ExcelColor = 16737996

ExcelBlue = FLOOR(ExcelColor,256^2)

ExcelBlue = 16711680

Blue = 16711680 / 256^2

Blue = 255

Remainder = 16737996 – 16711680

Remainder = 26316

ExcelGreen = FLOOR(26316,256)

ExcelGreen = 26112

Green = 26112 / 256

Green = 102

Remainder = 26316 – 26112

Remainder = 204

Red = 204

**How are these steps and the three equations/lines of code from the previous solution the same — assuming they are?**

Thanks

This is a follow-up question to a previous thread located here:

In that thread, the solution (by

This functionality is tremendously useful for me (and I suspect will be for others) because it enables you to instantly view the new color resulting from changes in any of the RGB parameters (ie without the necessity of the four clicks typically required to obtain that information):

Home > Fill Color > More Colors > Custom

(The file also includes a chart for quickly converting from RGB decimal to RGB hex and vice versa.)

Additionally, the solution to the thread contains the formula for calculating Excel's color code:

ExcelColor = R + G *256 + B *256^2

For example:

Red = 204

Green = 102

Blue = 255

is calculated as follows:

ExcelColor = 204 + (102*256) + (255*256^2)

ExcelColor = 16737996

It also displays the following for reversing the process (ie :

R = C Mod 256

G = C \ 256 Mod 256

B = C \ 256^2 Mod 256

It seems that to reverse the process, the =FLOOR() function should be used to first determine Blue, then Green and then Red as follows:

ExcelColor = 16737996

ExcelBlue = FLOOR(ExcelColor,256^2)

ExcelBlue = 16711680

Blue = 16711680 / 256^2

Blue = 255

Remainder = 16737996 – 16711680

Remainder = 26316

ExcelGreen = FLOOR(26316,256)

ExcelGreen = 26112

Green = 26112 / 256

Green = 102

Remainder = 26316 – 26112

Remainder = 204

Red = 204

Thanks

Our community of experts have been thoroughly vetted for their expertise and industry experience.