Home  Fees/Services  Microsoft Access Templates  Tutorials  Tutorial Download  Articles  Search  Contact  Privacy  Links
Access Forms & Subform Reference Methods
Referring to Subforms in VBA
Referring to Subforms in VBA  
 




Reference Nested Form Fields in VBA

Reference Microsoft Access Form Controls from VB Script

Have you come across the maddening task of trying to reference a deeply nested form, form field or control? Here is a real example of a deeply nested subform control - a combo box control which we want to disable.

Forms![MainMenu]![F_Project_Results].Form![F_Test_Results].
Form![F_Test_Materials].Form![F_Test_Results_Dates].Form![F_Test_Result_Parameters]
.Form![Parameter_Combo].Enabled = False

Isn't there an easier way to reference these fields directly?  The answer is YES!

You can reference any form directly using its reference in visual basic:

Form_F_Test_Result_Parameters.Parameter_Combo.Enabled = False

Notice that we prefix the form name with Form_ use the dot '.' operator to reference the form control.

There is one trick to this referencing method - the form which you are referencing must have its Has Module property set to Yes.

This method only seems to work in VBA code.  Doesn't work when referencing a form field as a query parameter nor in any of the property settings.

Note that you can also reference a form's functions and subroutines using the same method.  For example:

Form_F_Test_Result_Parameters.Requery
(requeries the form)

Call Form_F_Test_Result_Parameters.Find_Test_Combo_AfterUpdate
(Note that the function or subroutine must be Public and not Private to reference it from another form or VBA module.)

And requery a combo box after its row source updates:

Form_F_Test_Materials.Find_Material_Combo.Requery









A Blue Claw Database Design Article:

Software Risk Assessment
 





Blue Claw Database Design Downloadable Tutorial:
Programming MS Access Security Alternative  





A Blue Claw Database Design Template:

Marina Management Reservations Software
 





Contact Information

Copyright 2000-2012 Blue Claw Database Design, LLC

VBA Tutorials:
VBA Access-Google Earth
VBA Age Calculation
VBA Change Case
VBA Email via Gmail
VBA Outlook Email
VBA Read Email Access
VBA Email Attachment
VBA Send Outlook Email
VBA Running Sum
VBA Concatenate Records
VBA Stock Quotes
VBA CreateQueryDef
VBA Find Database Path
VBA Detail-Master Update
VBA Data Validation
VBA Field Value New-Old
VBA FindFirst
VBA Access Version
VBA Global Variable Parameter
VBA Global Variables
VBA Active Labels
VBA Files List Box
VBA Mail Merge
VBA Quick Sort
VBA Recordset Filters
VBA Reference Form Field
VBA Select Case
VBA Access Transactions


Visual Basic Function Examples