以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  TextChanged 事件  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=153765)

--  作者:long086
--  发布时间:2020/8/21 21:47:00
--  TextChanged 事件

TextChanged 事件代码如下

 

With DataTables("物料信息")
    .LoadFilter = "客户 = \'" & Tables("订单主表").Current("客户")  & "\'"
    .load
End With
Dim va As WinForm.TextBox = e.Form.Controls("型号规格")
Tables("物料信息").Filter = "型号规格 like \'*" & va.text & "*\'"

 

现在有个问题,如果输入 *  号就报错,请问怎么用 Replace 替换掉。


--  作者:long086
--  发布时间:2020/8/21 22:00:00
--  

With DataTables("物料信息")
    .LoadFilter = "客户 = \'" & Tables("订单主表").Current("客户")  & "\'"
    .load
End With
Dim va As WinForm.TextBox = e.Form.Controls("型号规格")
If va.text IsNot Nothing  Then
    va.text = va.text.Replace("*","[*]")
    Tables("物料信息").Filter = "型号规格 like \'*" & va.text & "*\'"
    
 End If

 

 

这么写为什么不对,求指点


--  作者:有点蓝
--  发布时间:2020/8/22 9:17:00
--  
Tables("物料信息").Filter = "型号规格 like \'%" & va.text.Replace("*","[*]") & "%\'"
--  作者:long086
--  发布时间:2020/8/22 13:44:00
--  

老师能不能详细解释一下,谢谢。


--  作者:有点蓝
--  发布时间:2020/8/22 16:02:00
--  
在筛选条件里尽量使用%,有些地方和数据库可能不支持*

我们只需要取用户录入的数据,一般不需要直接更改,所以没有必要赋值回去