0

I have created a form with some fields that I want to transfer to a new form with the use of variables. The settings for the form's code are 'Option Compare Database' and 'Option Explicit.' I have declared four public variables just below this as follows:

Option Compare Database
Option Explicit
Public LnNum As Long
Public InvLnNum As String
Public Inv As String
Public DefID As Long

Further down is the code to open the form. I have a button set-up on the first form, and when it opens I want a few fields to copy over to the new form (these fields have the same names). This is the code for that specific event:

Private Sub cmdNewDefect_Click()

LnNum = Me.LoanNumber.Value
InvLnNum = Me.InvestorLoanNumber.Value
Inv = Me.Investor.Value
DefID = Me.ID.Value

DoCmd.OpenForm "frmInvestorDefects"
DoCmd.GoToRecord acDataForm, "frmInvestorDefects", acNewRec
Form_frmInvestorDefects.LoanNumber.Value = LnNum
Form_frmInvestorDefects.InvestorLoanNumber.Value = InvLnNum
Form_frmInvestorDefects.Investor.Value = Inv
Form_frmInvestorDefects.ID.Value = DefID

End Sub

When I click the button I get the error message, 'Compile Error: Variable Not Defined.' I have another database with multiple forms that do the exact thing that I am wanting this form to do without issue. The code is exactly the same, except that the event occurs on an After Update event instead of On Click, so I am stumped. I have tried moving the variable declarations into the actual sub procedure with Dim statements instead of Public, but that doesn't work either. I am thinking there is a setting or something that I am forgetting. Thanks in advance!

0

1 Answer 1

0

If the form you are opening is: "frmInvestorDefects" Then try:

frmInvestorDefects.LoanNumber.Value = LnNum

Not sure why the 'Form_' prefix is required...
Not sure why the .Value part is needed either

frmInvestorDefects.LoanNumber = LnNum 

or

[frmInvestorDefects].[LoanNumber] = LnNum
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.