Public Declare Function GetSysColor Lib "user32" (ByVal nIndex As Long) As Long Public Function OleColorToRGB(ByVal Color As OLE_COLOR) As Long If Color And &H80000000 Then OleColorToRGB = GetSysColor(Color Xor &H80000000) Else OleColorToRGB = Color End If End Function
Text.backcolor = OleColorToRGB ( &h8000000F& )
Private Declare Function GetSysColor Lib "user32" (ByVal nIndex As Long) As Long Private Function RGBToOleColor(ByVal Color As Long) As OLE_COLOR Dim i As Long For i = 0 To 32 If GetSysColor(i) = Color Then RGBToOleColor = (&H80000000 Or i) Exit Function End If Next i End Function
Private Sub Form_Load() MsgBox "&H" & Hex$(RGBToOleColor(RGB(255, 204, 0))) End End Sub