我正在尝试在更新表单“next button”上使用.FindNext(和.FindPrevious)函数来查找符合特定条件的记录。
Private Sub NextRecord_Click()
Dim foundmatch As Boolean
For x = 0 To 3 Step 1
With Me.RecordsetClone
.FindNext "[Sensitivity] = " & [TempVars]![AccessLevel] + x
If .NoMatch Then
foundmatch = False
Else
Me.Bookmark = .Bookmark
foundmatch = True
Exit For
End If
End With
Next
If foundmatch = False Then
MsgBox "No More Records"
End If
End Sub
当用户进入数据库时,用户访问级别被分配给临时变量(1到4),并且每个项目的灵敏度等级为1到4.以下代码仅用于下一个和之前的代码当灵敏度和访问级别相等时查找记录,但不能低于他们有资格查看的用户访问级别以下的敏感性。
Private Sub PrevRecord_Click()
Dim Stringy As String
Stringy = "[Sensitivity] = " & [txtaccess]
With Me.RecordsetClone
.FindPrevious Stringy
If .NoMatch Then
MsgBox "No More Records"
Else
Me.Bookmark = .Bookmark
End If
End With
End Sub
注意:表单是从具有敏感性的查询中提取的一个字段,[txtaccess]是字段上的文本框,默认值设置为[TempVars]![AccessLevel] 。我也尝试将其更改为:
Stringy = "[Sensitivity] >= " & [txtaccess]
但这不起作用
答案 0 :(得分:1)
我能够通过在实际表单On_Load事件而不是命令按钮上设置灵敏度过滤器来解决问题。它现在使用添加了默认代码/设置的下一个记录命令按钮!