Private Function HEXtoRGB(strHexVal As String) As Long
'function converts HEX value to RGB value
On Error GoTo ErrHndlr
Dim strR As String
Dim lngR As Long
Dim strG As String
Dim lngG As Long
Dim strB As String
Dim lngB As Long
'remove hash
If Left(strHexVal, 1) = "#" Then
strHexVal = Mid(strHexVal, 2, 6)
Else
'do nothing
End If
'cut HEX value into 3 parts R/G/B
strR = "&H" & Left(strHexVal, 2)
strG = "&H" & Mid(strHexVal, 3, 2)
strB = "&H" & Right(strHexVal, 2)
'convert each to Long
lngR = CLng(strR)
lngB = CLng(strB)
lngG = CLng(strG)
'get final value
HEXtoRGB = RGB(lngR, lngG, lngB)
ExitHndlr:
Exit Function
ErrHndlr:
HEXtoLong = 0
GoTo ExitHndlr
End Function