以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 下面代码如何实现模糊查找 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=108266) |
-- 作者:291051468 -- 发布时间:2017/10/19 10:38:00 -- 下面代码如何实现模糊查找 Dim Filter As String With e.Form.Controls("TextBox1") If .Value IsNot Nothing Then Filter = "申报条件_对象要求 = \'" & .Value & "\'" End If End With With e.Form.Controls("TextBox2") If .Value IsNot Nothing Then If Filter > "" Then Filter = Filter & " And " End If Filter = Filter & "申报条件_行业要求= \'" & .Value & "\'" End If End With With e.Form.Controls("TextBox3") If .Value IsNot Nothing Then If Filter >"" Then Filter = Filter & " And " End If Filter = Filter & "申报条件_财务要求 = \'" & .Value & "\'" End If End With With e.Form.Controls("TextBox4") If .Value IsNot Nothing Then If Filter >"" Then Filter = Filter & " And " End If Filter = Filter & "申报条件_立项要求 = \'" & .Value & "\'" End If End With If Filter > "" Then Tables("申报项目数据库").Filter = Filter End If 现在可以实现查找功能,但是不是模糊的,
|
-- 作者:cd_tdh -- 发布时间:2017/10/19 10:51:00 -- 参考: With e.Form.Controls("项目名称") [此贴子已经被作者于2017/10/19 10:51:15编辑过]
|
-- 作者:291051468 -- 发布时间:2017/10/19 11:04:00 -- 非常感谢 |
-- 作者:motorcar88 -- 发布时间:2017/11/9 14:16:00 -- If e.DataCol.Name = "合同日期" Then \'发生变化的是政策日期吗? \'在政策表找出该产品 Dim dr As DataRow dr = DataTables("政策").Find("政策日期 = \'" & e.DataRow("合同日期") & "\'" ) If dr IsNot Nothing \'如果找到, 则设置各列内容 e.DataRow("政策日期")= dr("政策日期") End If End If 以上代码只能实现精确查找,但不能模糊匹配。 比如:政策日期有2017-1-1、2017-1-15、2017-2-10,如果合同日期是2017-1-18,期望能自动找到2017-1-15这个政策日期。 如何实现,请各位老师批教。
|
-- 作者:有点甜 -- 发布时间:2017/11/9 15:13:00 -- If e.DataCol.Name = "合同日期" Then \'发生变化的是政策日期吗?
\'在政策表找出该产品
Dim dr As DataRow
dr = DataTables("政策").Find("政策日期 <= \'" & e.DataRow("合同日期") & "\'", "政策日期 desc")
If dr IsNot Nothing \'如果找到, 则设置各列内容
e.DataRow("政策日期")= dr("政策日期")
End If
End If
|