ACC97: Previous/ActiveControl Name Property Not in Auto List (175216)
The information in this article applies to:
This article was previously published under Q175216 Moderate: Requires basic macro, coding, and interoperability skills.
SYMPTOMS
You can use the ActiveControl property together with the Screen object to
identify or refer to the control that has the focus. However, if you type
Screen.ActiveControl or Screen.PreviousControl in a module or the Debug
window to view the properties that you can apply from the Auto List Members
list, the Name property does not appear on the list.
RESOLUTION
To refer to the Name property of the Screen.ActiveControl or
Screen.PreviousControl, you should create a variable and assign the
name of the control to that variable. For example, the following sample
piece of code is one way you could refer to the active control's name:
Dim ctlCurrentControl As Control
Set ctlCurrentControl = Screen.ActiveControl
If ctlCurrentControl.Name = "txtCustomerID" Then
' Do this.
ElseIf ctlCurrentControl.Name = "btnCustomerDetails" Then
' Do this.
End If
WARNING: Code that refers to Screen.ActiveControl or Screen.ActiveForm
will not work correctly when called from the Debug window because the
Debug window has the focus at that time. If no control has the focus when
you use the Screen.ActiveControl property, or if all of the active form's
controls are hidden or disabled, a run-time error will occur. Use the Me
object instead of the ActiveControl property in Event procedures.
REFERENCES
For more information about using the ActiveControl object, search the Help
Index for "ActiveControl property," or ask the Office Assistant.
Modification Type: | Major | Last Reviewed: | 9/26/2003 |
---|
Keywords: | kbprb KB175216 |
---|
|