Я создал форму с некоторыми полями, которые я хочу передать в новую форму с использованием переменных. Параметры для кода формы: «Option Compare Database» и «Option Explicit». Я объявил четыре общедоступных переменных чуть ниже этого:MS Access VBA - переменная неопределенная ошибка при объявлении переменных
Option Compare Database
Option Explicit
Public LnNum As Long
Public InvLnNum As String
Public Inv As String
Public DefID As Long
Далее - код, чтобы открыть форму. У меня есть кнопка настройки в первой форме, и когда она открывается, я хочу, чтобы несколько полей копировались в новую форму (эти поля имеют одинаковые имена). Это код для этого конкретного события:
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
Когда я нажимаю кнопку, я получаю сообщение об ошибке "Compile Error: Переменная не определена. У меня есть другая база данных с несколькими формами, которые делают то, что я хочу, чтобы эта форма делала без проблем. Код точно такой же, за исключением того, что событие происходит в событии After Update вместо On Click, поэтому я в тупике. Я попытался переместить объявления переменных в фактическую процедуру sub с инструкциями Dim вместо Public, но это тоже не сработает. Я думаю, что есть настроение или что-то, что я забываю. Заранее спасибо!