Convert HEX to RGB in Excel

Jamgreen picture Jamgreen · Aug 23, 2017 · Viewed 18.5k times · Source

I have a column "HEX" and three columns "R", "G", and "B".

How can I convert a HEX to RGB, e.g. ff0000 to R=255, G=0, and B=0?

I know that the first 2 characters ff belongs to "R", the next 2 00 belongs to "G", and the final 2 00 belongs to "B". So I will have to use =LEFT(A1, 2) for "R", =RIGHT(LEFT(A1, 4), 2), and =RIGHT(A1, 2) for the last.

But how can I convert ff to 255 and 00 to 0, etc.? I guess I will have to do something to parse from hexadecimal (base 16) to decimal (base 10)?

I would like to do it without VBA.

Answer

Vityata picture Vityata · Aug 23, 2017

You can try with the =Hex2Dec(A1) indeed, but you should split its input into 3 parts:

One for R, one for G and one for B, considering that you would always get them in a format like this ff0000.

=HEX2DEC(LEFT(B1,2))&"-"&HEX2DEC(MID(B1,3,2))&"-"&HEX2DEC(RIGHT(B1,2))

This is the result from the formula:

enter image description here