【发布时间】:2020-01-02 17:47:06
【问题描述】:
这项工作正在 Access 2016 中执行。创建了一个查询,然后根据该查询创建了一个表单。将文本框作为搜索框来查询记录。搜索脚本如下。
Dim strsearch As String
Dim Task As String
'Check if a keyword entered or not
If IsNull(Me.txtSearch) Or Me.txtSearch = "" Then
MsgBox "Please type in your search keyword.", vbOKOnly, "Keyword Needed"
Me.txtSearch.SetFocus
Else
strsearch = Me.txtSearch.Value
Task = "SELECT * FROM [RSIDCircuit] WHERE ((RSID Like ""*" & strsearch & "*""))"
Me.RecordSource = Task
End If
搜索按预期工作,但希望在多个可编辑的不同文本框中显示结果。希望第 1 列转到 text4,第 2 列转到 text5,依此类推。无法弄清楚如何让结果出现在各种文本框中。提交搜索时,其他文本框会变为空白,并且在没有进行任何搜索时,其他文本框会显示表的第一条记录。非常感谢任何帮助。
【问题讨论】:
-
组合框的第 1 列? txtSearch 是一个组合框吗?您的代码设置表单 RecordSource,而不是组合框 RowSource。如果要编辑数据,请将文本框绑定到 RecordSource 中的字段。应该保存组合框选择的键值,而不是与该键关联的其他数据。
-
txtSearch 是一个文本框,根据给出的答案,这似乎是不可能的,需要使用组合框。感谢您的回复。
-
只要有足够的代码,大多数事情都是可能的。你的叙述没有意义。
-
是的。当时对 Access 2016 的搜索功能知之甚少。过去四天花了很多时间研究并找到了几乎可以完成所有期望的方法。剩下的唯一问题是创建一个搜索功能,该功能不仅可以找到第一条记录。起初这是一个很好的解决方案,但不再可取。再次感谢您的帮助,并将继续研究更多。