Access表单Dynaset模式下内置搜索框卡顿问题求助
问题描述
我有一个数据表视图的拆分表单,用户频繁使用表单底部的内置搜索框。当表单的RecordsetType=Snapshot时,搜索速度极快;但设为RecordsetType=Dynaset时,搜索变得非常缓慢。
我自行制作了一个文本框作为搜索框,代码如下:
Private Sub txtSearch_Change() On Error GoTo ErrorHandler Dim searchText As String Dim sql As String searchText = Me.txtSearch.Text Dim rs As Recordset 'default DAO recordset Set rs = Me.RecordsetClone rs.FindFirst "[f1] like '*" & searchText & "*'" If Not rs.NoMatch Then Me.Bookmark = rs.Bookmark Else MsgBox "Not Found!" End If Me.txtSearch.SetFocus Me.txtSearch.SelStart = Len(searchText) Exit Sub ErrorHandler: MsgBox "Error Number: " & Err.Number & vbCrLf & Err.description End Sub
该表单AllowAdditons=False,仅需更新一个复选字段。我尝试查找是否可使用数据表或连续未绑定表单,通过VBA仅更新该字段,但仅找到单表单相关实现方案。
更新内容
- 我曾尝试用断开连接的ADODB记录集绑定表单,但不确定该方案是否适用于数据表或连续表单,实际测试后无效。
- 理想方案是使用绑定到快照的表单且控件可编辑,通过VBA执行SQL UPDATE语句保存更改,但快照模式下控件不可编辑。
内容的提问来源于stack exchange,提问作者NonLinear
相关产品推荐
相关产品推荐

