Foxtable(狐表)用户栏目专家坐堂 → 模糊筛选辅助录入


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

主题:模糊筛选辅助录入

美女呀,离线,留言给我吧!
FB学生
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:37 积分:377 威望:0 精华:0 注册:2013/6/19 16:06:00
模糊筛选辅助录入  发帖心情 Post By:2013/8/29 9:47:00 [只看该作者]

我在用模糊筛选辅助录入的时候,如果内容遇到“*”系统就会卡死。我的筛选代码如下:

If e.Col.Name = "产品编号" Then '如果编辑的是客户ID列
    If e.Col.DroppedDown Then '如果下拉窗口已经打开
        Dim tbl As Table = Tables("料号_table1")
        If e.Text = "" Then '如果内容为空
            tbl.Filter = "" '显示所有产品

        Else '否则根据输入内容进行模糊筛选
            Dim txt As String = "'*" & e.Text & "*'"
            tbl.Filter = "料号 Like " & txt & " Or 品名 Like " & txt & " Or 规格CM Like " & txt & " Or 客户名称 Like " & txt & " Or 工程单号 Like " & txt  & " Or 材料名称 Like " & txt
        End If
    End If
End If

 

 


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/8/29 9:55:00 [只看该作者]

上例子.

 回到顶部
美女呀,离线,留言给我吧!
FB学生
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:37 积分:377 威望:0 精华:0 注册:2013/6/19 16:06:00
  发帖心情 Post By:2013/8/29 9:59:00 [只看该作者]

例子是帮助中的自定义录入之三,如果单元格中输入带“*”的内容进行模糊筛选就会报错

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/8/29 10:04:00 [只看该作者]

星号是特殊字符 需要使用[*] 括起来

例如 CurrentTable.Filter="型号 like '*XG[*]118*'"

 回到顶部
美女呀,离线,留言给我吧!
FB学生
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:37 积分:377 威望:0 精华:0 注册:2013/6/19 16:06:00
  发帖心情 Post By:2013/8/29 10:29:00 [只看该作者]

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:系统.foxdb


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


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

 楼主,你处理一下*号就行了。

If e.Col.Name = "产品编号" Then '如果编辑的是客户ID列

    If e.Col.DroppedDown Then '如果下拉窗口已经打开

        Dim tbl As Table = Tables("料号_table1") 

        If e.Text = "" Then '如果内容为空

            tbl.Filter = "" '显示所有产品

        Else '否则根据输入内容进行模糊筛选

            Dim txt As String = "'*" & e.Text.Replace("*", "[*]") & "*'"

            tbl.Filter = "料号 Like " & txt & " Or 品名 Like " & txt & " Or 规格CM Like " & txt & " Or 客户名称 Like " & txt & " Or 工程单号 Like " & txt  & " Or 材料名称 Like " & txt 

        End If

    End If

End If




 回到顶部