以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 逻辑列与 普通字符的一起筛选 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=183992) |
-- 作者:lianghanyu -- 发布时间:2022/11/22 11:35:00 -- 逻辑列与 普通字符的一起筛选 提示: 无法在 System.Boolean 和 System.String 上执行“=”操作。 有一个信息表,其中 是否查看 与是否下载 是逻辑列。 想用合成条件筛选,报告出错,代码如下: Dim filter As String Dim sts() As String = {"发送人", "接收人", "信息内容"} For Each st As String In sts Dim val As String = e.Form.Controls(st).value If val > "" Then val = val.Replace("*", "[*]") If filter = "" Then filter = st & " like \'*" & val & "*\'" Else filter = filter & " and " & st & " like \'*" & val & "*\'" End If End If Next Dim c As WinForm.ComboBox = e.Form.Controls("是否下载") Dim t As WinForm.ComboBox = e.Form.Controls("是否查看") Filter = c.Name & " = \'" & e.Sender.Value & "\'" If t.Value > "" Then Filter = filter & " and " & t.Name & " = \'" & t.Value & "\'" End If If c.Value > "" Then Filter = filter & " and " & c.Name & " = \'" & c.Value & "\'" End If Tables("信息记录").Filter = filter |
-- 作者:有点蓝 -- 发布时间:2022/11/22 11:37:00 -- 逻辑列只能使用true/false判断 第一列=true 或者 第一列=false
|