【发布时间】:2018-03-30 11:11:07
【问题描述】:
我正在尝试使用 instr() 函数在记录集中搜索与给定字符串中的特定单词匹配的任何记录。我似乎无法在记录集中正确移动,通常只有当它是记录集字段中的第一个或最后一个值时才会得到结果。原谅这个愚蠢的例子。下面,如果你在 boxSentence 中输入“我喜欢 tacos”,boxPlace 应该返回“Taco Bell”。这基本上就是我想要实现的目标。
Private Sub btnRecommend_Click()
dim db as database
set db = currentdb
dim rst as dao.recordset
set rst = db.openrecordset("Foods")
dim strsentence as string
me.boxsentence.setfocus
strsentence = me.boxsentence.text
rst.movefirst
do until rst.EOF
if Instr(strsentence, rst("Food").value) then
me.boxplace.value = dlookup("Place", "Foods", "ID =" & rst("ID").value)
else
me.boxplace.value = "Attempt Failed"
End If
rst.movenext
loop
rst.close
【问题讨论】:
-
似乎在记录集的基础上形成正确的SQL语句会更有效率。