ms-access - 导航到下一条记录时触发事件

标签 ms-access vba ms-access-2010

我需要根据当前记录在表单中设置特定下拉列表的记录源,即当我单击下一条记录时,记录源应该更新。

但我找不到任何这样做的事件。这需要在不添加任何额外/新按钮的情况下完成。

我尝试使用“Form Current”事件,但显然它仅在加载表单时触发一次,而不是在我移至同一表单中的下一条记录时触发。

有什么建议吗?

示例代码:

Private Sub Form_Current()

 MsgBox ("hello")

 Dim strSQL As String

 strSQL = "SELECT DISTINCTROW StudentTeachingStatusTbl.ID, StudentTeachingStatusTbl.SuccessStatus FROM StudentTeachingStatusTbl WHERE Active = -1" & _
        "or ID IN (Select SuccessID from StudentTeachingExperiencesTbl where StuId = " & Me.Text2.Value

 If Not IsNull(Me.StudentTeachExp_SubF.Controls("SemesterID")) Then
    strSQL = strSQL & " and SemesterID = " & Me.StudentTeachExp_SubF.Controls("SemesterID").Value
 End If

 strSQL = strSQL & ")"

 Me.StudentTeachExp_SubF.Controls("SuccessID").RowSource = strSQL               
 End Sub

最佳答案

当表单聚焦于新记录时,将触发“当前”事件。 打开表单时确实会发生这种情况,因为表单上有记录。

“加载时”和“打开时”在打开表单时触发一次。

尝试将 MsgBox 添加到“On Current”事件代码中以进行测试。

祝你好运。

关于ms-access - 导航到下一条记录时触发事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42956159/

相关文章:

c# - 插入具有外键约束的表

excel - 让 PowerShell 等待 Excel 完成刷新数据透视表

vba - 函数只在宏调用对话框中给出错误

vba - 将形状颜色与单元格颜色匹配 - vba

java - 使用 COUNT(*) 对 netbean 中多个表中的多行进行计数

mysql - MS Access 连接到两个数据库

java - System.out.println() 从数据库到表

forms - 无法在 MS Access 表单中编辑数据,显示为 "Recordset is not updatable"

ms-access - 如何查找 Access 数据库中是否调用了 VBA 代码?

mysql - mysql 的 MS Access 错误