Foxtable(狐表)用户栏目专家坐堂 → [求助]


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

主题:[求助]

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


加好友 发短信
等级:幼狐 帖子:85 积分:777 威望:0 精华:0 注册:2015/8/31 11:01:00
[求助]  发帖心情 Post By:2015/10/19 16:34:00 [只看该作者]

设计了一个查询窗体,有一个文本输入控件,和两个时间输入控件,文本控件是要求模糊条件,现在通过两段代码都能分别操作查询,但两个条件同时输入时,提示AND运算符前缺少操作数:请问代码在哪里错了?

Dim tbl As Table = Tables("查询_Table1")
Dim txt As String = e.Form.Controls("TextBox1").TEXT
If txt = "" Then
   tbl.Filter = "  " 
Else
    txt = "'%" & txt & "%'" 
    tbl.Filter = "XM Like " & txt & " Or TXRY Like " & txt
End If


With e.Form.Controls("KS")
    If .Value IsNot Nothing Then
        If tbl.Filter >"" Then
            tbl.Filter = Filter & " And "
        End If
        tbl.Filter = Filter & "FSSJ >= #" & .Value & "#"
    End If
End With
With e.Form.Controls("JS")
    If .Value IsNot Nothing Then
        If tbl.Filter >"" Then
            tbl.Filter = Filter & " And "
        End If
        tbl.Filter = Filter & "FSSJ <= #" & .Value & "#"
    End If
End With


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/10/19 16:37:00 [只看该作者]

Dim tbl As Table = Tables("查询_Table1")
Dim txt As String = e.Form.Controls("TextBox1").TEXT
If txt > "" Then
    txt = "'%" & txt & "%'" 
    tbl.Filter = "(XM Like " & txt & " Or TXRY Like " & txt & ")"
End If


With e.Form.Controls("KS")
    If .Value IsNot Nothing Then
        If tbl.Filter >"" Then
            tbl.Filter = Filter & " And "
        End If
        tbl.Filter = Filter & "FSSJ >= #" & .Value & "#"
    End If
End With
With e.Form.Controls("JS")
    If .Value IsNot Nothing Then
        If tbl.Filter >"" Then
            tbl.Filter = Filter & " And "
        End If
        tbl.Filter = Filter & "FSSJ <= #" & .Value & "#"
    End If
End With


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


加好友 发短信
等级:幼狐 帖子:85 积分:777 威望:0 精华:0 注册:2015/8/31 11:01:00
  发帖心情 Post By:2015/10/19 17:04:00 [只看该作者]

还是不行,而且代码中这个Dim Filter As String 是不能少的,加上后运行,提示错误:


图片点击可在新窗口打开查看此主题相关图片如下:未命名.bmp
图片点击可在新窗口打开查看

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/10/19 17:11:00 [只看该作者]

Dim filter As String = ""
Dim tbl As Table = Tables("查询_Table1")
Dim txt As String = e.Form.Controls("TextBox1").TEXT
If txt > "" Then
    txt = "'%" & txt & "%'" 
    Filter = "(XM Like " & txt & " Or TXRY Like " & txt & ")"
End If


With e.Form.Controls("KS")
    If .Value IsNot Nothing Then
        If filter >"" Then
            filter = Filter & " And "
        End If
        filter = Filter & "FSSJ >= #" & .Value & "#"
    End If
End With
With e.Form.Controls("JS")
    If .Value IsNot Nothing Then
        If filter >"" Then
            filter = Filter & " And "
        End If
        filter = Filter & "FSSJ <= #" & .Value & "#"
    End If
End With
tbl.filter = filter


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


加好友 发短信
等级:幼狐 帖子:85 积分:777 威望:0 精华:0 注册:2015/8/31 11:01:00
  发帖心情 Post By:2015/10/19 17:16:00 [只看该作者]

问题解决,非常感谢!


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


加好友 发短信
等级:幼狐 帖子:85 积分:777 威望:0 精华:0 注册:2015/8/31 11:01:00
  发帖心情 Post By:2015/10/23 15:57:00 [只看该作者]

按上面的代码稍稍变了一下,查询字段来自两个文本控件,不知道如何用AND连接,可以组合多个文本筛选条件,下面的代码不知如何修改才能达到目的:

Dim filter As String = ""
Dim txt As String = e.Form.Controls("TextBox1").TEXT
If txt > "" Then
Filter = Filter & " And "

    txt = "'%" & txt & "%'" 
    Filter = "部门名称 Like " & txt 
End If

Dim txt1 As String = e.Form.Controls("TextBox2").TEXT
If txt1 > "" Then
    txt1 = "'%" & txt1 & "%'" 
    Filter = "专业 Like " & txt1
End If


If Filter > "" Then
    Tables("机构").Filter = Filter
End If


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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2015/10/23 16:22:00 [只看该作者]

Dim filter As String = ""
Dim txt As String = e.Form.Controls("TextBox1").TEXT
If txt > "" Then
    txt = "'%" & txt & "%'"
    Filter = "部门名称 Like " & txt
End If

Dim txt1 As String = e.Form.Controls("TextBox2").TEXT
If txt1 > "" Then
    txt1 = "'%" & txt1 & "%'"
    If Filter > "" Then
        Filter = Filter & " and 专业 Like " & txt1
    Else
        Filter = "专业 Like " & txt1
    End If
End If


If Filter > "" Then
    Tables("机构").Filter = Filter
End If


 回到顶部