把十六进制的数前面加0补成长度为6的数,然后前两位化成十进制数代表红色,中间两位化成十进制数代表绿色,最后两位化成十进制数代表蓝色。如&FFFF,先变成00FFFF,于是等于RGB(0,255,255)
反回RGB数组的一个函数
Public Function ColorRGB(Color As Long) As Byte()
Const ByN As Integer = 256
Const ByN2 As Long = 65536
Dim A(2) As Byte
A(0) = (Color Mod ByN)
A(1) = ((Color Mod ByN2) \ ByN)
A(2) = (Color \ ByN2)
ColorRGB = A
End Function
例如:
Print ColorRGB(&H1111FF)(0) '红色RGB
Print ColorRGB(&H11FF11)(1) '绿色RGB
Print ColorRGB(&HFF1111)(2) '蓝色RGB
都等于255
变回十六进制更简单
HEX(RGB(1,1,1))