Home » excel » Convert HEX to RGB in Excel

# Convert HEX to RGB in Excel

Questions:

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.

You can convert from hex to decimal using the `HEX2DEC()` function. For instance:

``````=HEX2DEC(A1)
``````

Where cell `A1` contains the string `FF`, this will return `255`.

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: Some pages make that (w3SCHOOL PICKER), but in excel you can make this

vba rgb to hex and inverse

If you try without vba, you’ll only can use 56 colors.
(in case use the colors from a cell)

Red: `=HEX2DEC(LEFT([Cell],2))`
Green: `=HEX2DEC(MID([Cell],3,2))`
Blue: `=HEX2DEC(RIGHT([Cell],2))`
`=DEC2HEX(([Red]*65536)+([Green]*256)+[Blue],6)`