在记录更改时运行VBA,而不是打开Access 2013

时间:2016-07-27 15:07:19

标签: vba ms-access access-vba ms-access-2013

我的宏有两个标准。

  • 只有在用户切换记录
  • 时才会运行
  • 无论记录是否被修改,都应该运行

On Current有效,但也可以在表格打开时运行。 After Update仅在字段更改时运行。是否有符合我标准的活动?

1 个答案:

答案 0 :(得分:2)

您可以使用静态变量:

Private Sub Form_Current()

    Static Opened As Boolean

    If Opened = False
        ' Form opens.
        Opened = True
    Else
        ' Do stuff.
    End If

End Sub

操纵上一条记录:

Private Sub Form_Current()

    Static Opened As Boolean
    Static LastId As Long

    If Opened = False
        ' Form opens.
        Opened = True
    ElseIf LastId <> 0 Then
        ' Do stuff using LastId as the Id.            
    End If

    ' Save current Id.
    LastId = Nz(Me!Id.Value, 0)

End Sub