Convert HEX to RGB in Excel

有些话、适合烂在心里 提交于 2019-12-10 14:16:02

问题


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.


回答1:


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.

More details here.




回答2:


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:




回答3:


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)



来源:https://stackoverflow.com/questions/45833797/convert-hex-to-rgb-in-excel

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!