循环浏览记录时,访问中的更改事件将不起作用

Change event in access won't work when cycling through records

我目前有一个包含两个子表单的表单,在一个名为 Customer Addresses 的子表单中,我有一个包含地址 table 主键的文本框。我在此表单上放置按钮以循环到下一条或上一条记录,当我循环浏览这些记录时,我可以看到我的不同地址 ID 在文本框中循环。

现在,当我的 addressID 被循环时,我希望该值自动更新另一个名为 CustomerContacts 的子表单中的另一个文本框。我向更改和更新事件添加了一些代码,但没有成功。

Private Sub Text0_Change()
        Me.Parent!ContactInformation.Form!ContactInformation_Address.Value = Text0.Value

End Sub

以上代码中的引用是正确的。我用一个组合框测试了这段代码,我实际上点击了下拉箭头并选择了一个值,它成功地更新了另一个子表单中的另一个文本框。

所以我在这里遗漏了一些东西,当循环浏览记录时它不会触发更改或更新事件,所以我想知道如何解决所有这些问题。

已将 Forms 宏转换为 Visual Basic。现在,我选择下一条和上一条记录的命令按钮位于 vba 代码中。 Next 获取要更新的文本框的代码,并将其放在选择记录的行下方。

'------------------------------------------------------------
' Command24_Click
'
'------------------------------------------------------------
Private Sub Command24_Click()
On Error GoTo Command24_Click_Err

    On Error Resume Next
    DoCmd.GoToRecord , "", acPrevious
    Me.Parent!ContactInformation.Form!ContactInformation_Address.Value = Text0.Value
    If (MacroError <> 0) Then
        Beep
        MsgBox MacroError.Description, vbOKOnly, ""
    End If


Command24_Click_Exit:
    Exit Sub

Command24_Click_Err:
    MsgBox Error$
    Resume Command24_Click_Exit

End Sub


'------------------------------------------------------------
' Command25_Click
'
'------------------------------------------------------------
Private Sub Command25_Click()
On Error GoTo Command25_Click_Err

    ' _AXL:<?xml version="1.0" encoding="UTF-16" standalone="no"?>
    ' <UserInterfaceMacro For="Command24" xmlns="http://schemas.microsoft.com/office/accessservices/2009/11/application"><Statements><Action Name="OnError"/><Action Name="GoToRecord"><Argument Name
    ' _AXL:="Record">Previous</Argument></Action><ConditionalBlock><If><Condition>[MacroError]&lt;&gt;0</Condition><Statements><Action Name="MessageBox"><Argument Name="Message">=[MacroError].[Description]</Argument></Action></Statements></If></ConditionalBlo
    ' _AXL:ck></Statements></UserInterfaceMacro>
    On Error Resume Next
    DoCmd.GoToRecord , "", acNext
    Me.Parent!ContactInformation.Form!ContactInformation_Address.Value = Text0.Value
    If (MacroError <> 0) Then
        Beep
        MsgBox MacroError.Description, vbOKOnly, ""
    End If


Command25_Click_Exit:
    Exit Sub

Command25_Click_Err:
    MsgBox Error$
    Resume Command25_Click_Exit

End Sub