Hi,
I am trying to build a wizard in ms access. The wizard wil have several forms which load as subform one by one in the main parent form.
Any way, before moving to the next form I need to pass the variables from the previus form.
I am trying to write a resuable module so that I can apply to other sections of my application (other wise I could have used public variables).
In order to do so I want to loop through the controls of each form (before loading the next one) and add the variables to a collection object for further retrival on the next form.
The problem I am facing is that in order to write a function or a sub that will get the form name and add all its controls to a collection I have to instantiate a form by its name. I am trying to use the below code but I get a Type mismatch error.
Public Sub SaveFormData(strFormName As String)
Dim ctl As Control
Dim key As String
Dim value As String
Dim f As New Form
Set f = CurrentProject.AllForms(strFormName)
For Each ctl In f.Controls
If ctl.ControlType = acTextBox Or ctl.ControlType = acComboBox Then
key = ctl.Name
value = ctl
NewWizardCol.Add value, key
End If
Next ctl
End Sub
if I use the below code to instantiate the form every thing works fine:
set f=Form_frmProductDupCheck
Any ideas how I can instantiate the form using its name. (I'm working in MS Access 2000)
Thanks
I am trying to build a wizard in ms access. The wizard wil have several forms which load as subform one by one in the main parent form.
Any way, before moving to the next form I need to pass the variables from the previus form.
I am trying to write a resuable module so that I can apply to other sections of my application (other wise I could have used public variables).
In order to do so I want to loop through the controls of each form (before loading the next one) and add the variables to a collection object for further retrival on the next form.
The problem I am facing is that in order to write a function or a sub that will get the form name and add all its controls to a collection I have to instantiate a form by its name. I am trying to use the below code but I get a Type mismatch error.
Public Sub SaveFormData(strFormName As String)
Dim ctl As Control
Dim key As String
Dim value As String
Dim f As New Form
Set f = CurrentProject.AllForms(strFormName)
For Each ctl In f.Controls
If ctl.ControlType = acTextBox Or ctl.ControlType = acComboBox Then
key = ctl.Name
value = ctl
NewWizardCol.Add value, key
End If
Next ctl
End Sub
if I use the below code to instantiate the form every thing works fine:
set f=Form_frmProductDupCheck
Any ideas how I can instantiate the form using its name. (I'm working in MS Access 2000)
Thanks