【发布时间】:2015-10-20 18:08:13
【问题描述】:
所以第一件事是每个表都有 4 个字段。 Created_By、Created_Date、Last_Updated_By 和 Last_Updated_Date。这将使我能够跟踪谁保存了哪些记录以及何时保存。我想要一个公共子(或函数?)在保存任何记录时更新这些字段。
理想情况下,我不想从每个表单中复制/调用我的代码,但如果这是必要的,我会这样做。我想有一种方法可以在全球范围内做到这一点。
我目前有以下:
Public gLoggedIn As Integer
Public Function get_global(Global_name As String) As Variant
Select Case Global_name
Case "Employee_ID"
get_global = gLoggedIn
End Select
End Function
我接下来要做的是添加 vba 代码来填充 4 个字段中的 2 个。以下是我的一种形式,但就像我说的那样,我希望能够在每次保存时全局实现这一目标。
Private Sub Form_BeforeUpdate(Cancel As Integer)
If Me.NewRecord = True Then
Me.[Created_By] = gLoggedIn
Me.[Created_Date] = Now()
Else
Me.[Last_Updated_By] = gLoggedIn
Me.[Last_Updated_Date] = Now()
End If
End Sub
我怎样才能在全球范围内做到这一点?
如果这是全球性的,我不确定“我”是否是对我们的正确引用?
【问题讨论】:
-
Access 2010 有触发器别名宏。那将是这样做的理想场所
-
我不确定我是否完全理解您的意思?我也更喜欢使用 VBA 而不是宏。
-
使用 VBA,您必须为每个表单单独编码
-
什么是“触发别名宏”以及如何使用?
标签: ms-access vba ms-access-2010