BackColor of ActiveControl

Hello, Experts! I'm using the following code in a module to 'highlight' the active field of a multi-tabbed form. In each field's GotFocus I have =Blue_BackGround(), in LostFocus I have =White_BackGround(). Works great, except opening the form produces "Run-time error '2474': The expression you entered requires the control to be in the active window." If I un-comment On Error..., seems to work ok but I'm wondering if that's the best way to deal with the problem. I've tried 'forcing' the ActiveControl to a field of the first tab, but can't seem to make that work. Thanks...Scott

Option Compare Database

Global Const PURE_WHITE = 16777215
Global Const PALE_BLUE = 16777175

Public Function White_Background()
    Screen.ActiveControl.BackColor = PURE_WHITE
End Function

Public Function Blue_BackGround()
    'On Error Resume Next
    Screen.ActiveControl.BackColor = PALE_BLUE
End Function
Who is Participating?
ahmedbahgatConnect With a Mentor Commented:
you can actually do thiseasy by making the the background color property of all controls the color you want to see when highlighted, then make the background  style property transparent, however when any control is focused the transparent background color should be visible,

no code is required

rsanglimAuthor Commented:
One more thing...there's over 500 fields across 23 tabs, so simply putting a piece of code in the Got/Lost Focus would be a bit messy.
While a form is openning, and the Onfocus event of the first control is triggered, there is not yet an active control.

At the point you are right now, I will use the On Error resume next statement.

An alternative, if you have Access 2000 or more recent, will be to define conditional formating.  But for 500 fields, I am not certain of the impact on performance...

rsanglimAuthor Commented:
ahmedbahgat - I like your solution...clean and simple, no errors to deal with on form load. Thanks!
no problems, cheers
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.