Foxtable(狐表)用户栏目专家坐堂 → [求助]查询内容中包含*如何模糊查询--已解决,谢谢程老师


  共有6311人关注过本帖树形打印复制链接

主题:[求助]查询内容中包含*如何模糊查询--已解决,谢谢程老师

帅哥哟,离线,有人找我吗?
shaifegh
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:22 积分:432 威望:0 精华:0 注册:2011/9/7 12:59:00
[求助]查询内容中包含*如何模糊查询--已解决,谢谢程老师  发帖心情 Post By:2013/9/17 20:37:00 [只看该作者]

我所查询的内容中在规格列可能包含“500*100*203”这类的数据,这样做的话模糊查询该怎么写啊,只要不出现*号一切正常,一带*号必报错。可是我的规格需要这种。
菜单代码如下:
Dim HeTongHao As String
Dim PiaoHao As String
Dim GuiGe As String

With RibbonTabs("废品登记")("fp查询")
    HeTongHao = .Items("合同号").Text
    PiaoHao = .Items("piao号").Text
    GuiGe = .Items("规格").Text
   End With
Tables("废品登记").Filter = "[合同号] like '*" & HeTongHao & "*' And [piao号] Like '*" & PiaoHao & "*'And [规格] Like '*" & GuiGe & "*'"
[此贴子已经被作者于2013-9-17 21:00:35编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/9/17 20:43:00 [只看该作者]

用 [*]

比如 Tables("xxx").Filter = "xxxxx like '*[*]*'"

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/9/17 20:49:00 [只看该作者]

Dim HeTongHao As String
Dim PiaoHao As String
Dim GuiGe As String

With RibbonTabs("废品登记")("fp查询")
    HeTongHao = .Items("合同号").Text
    PiaoHao = .Items("piao号").Text
    GuiGe = .Items("规格").Text
    GuiGe = GuiGe.Replace("*","[*]")
   End With
Tables("废品登记").Filter = "[合同号] like '*" & HeTongHao & "*' And [piao号] Like '*" & PiaoHao & "*'And [规格] Like '*" & GuiGe & "*'"

 回到顶部
帅哥哟,离线,有人找我吗?
shaifegh
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:22 积分:432 威望:0 精华:0 注册:2011/9/7 12:59:00
  发帖心情 Post By:2013/9/17 20:50:00 [只看该作者]

Like 运算符中出错: 字符串模式“*[*]*500*20*”无效。
Like 运算符中出错: 字符串模式“*[*]*500*”无效。
经测试只有在规格查询框为空值或*时可查询,但是只要规格查询框内出现除*外的任意字符报错

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/9/17 20:52:00 [只看该作者]

 看3楼,测试一下。
[此贴子已经被作者于2013-9-17 20:52:20编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
shaifegh
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:22 积分:432 威望:0 精华:0 注册:2011/9/7 12:59:00
  发帖心情 Post By:2013/9/17 20:54:00 [只看该作者]

程老师的刚测试了,除了空值其余全报

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/9/17 20:54:00 [只看该作者]

以下是引用shaifegh在2013-9-17 20:50:00的发言:
Like 运算符中出错: 字符串模式“*[*]*500*20*”无效。
Like 运算符中出错: 字符串模式“*[*]*500*”无效。
经测试只有在规格查询框为空值或*时可查询,但是只要规格查询框内出现除*外的任意字符报错

很明显,除了两端的*其他都应该有中括号,请看3楼!


 回到顶部
帅哥哟,离线,有人找我吗?
shaifegh
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:22 积分:432 威望:0 精华:0 注册:2011/9/7 12:59:00
  发帖心情 Post By:2013/9/17 20:57:00 [只看该作者]

呵呵,程老师对不起,你的代码是正确的。我刚才忘记删*[*]*这个代码了
谢谢程老师

 回到顶部
帅哥哟,离线,有人找我吗?
shaifegh
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:22 积分:432 威望:0 精华:0 注册:2011/9/7 12:59:00
  发帖心情 Post By:2013/9/17 20:57:00 [只看该作者]

完美运行,结果满足需求

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/9/17 21:03:00 [只看该作者]

If e.Form.Controls("TextBox1").Value = Nothing
    MessageBox.show("请输入查找内容!")
    Return
End If
Dim s As String = e.Form.Controls("TextBox1").Value
s = s.Replace("[","[[]").Replace("]","[]]").Replace("*","[*]")
Tables("表A").Filter = "第一列 like '*" & s & "*'"

 回到顶部
总数 13 1 2 下一页