组合框模糊筛选-张志
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> 综合其它


组合框模糊筛选

发表时间:2007/6/26 评论(0) 浏览(13772)  评论 | 加入收藏 | 复制
   
摘 要:如何使用组合框模糊筛选
正 文:

在组合框使用过程中经常会使用到组合框模糊筛选功能,这个功能主要是通过在组合框CHANGE事件和NOT IN LIST 事件来实现。
在组合框CHANGE事件中我们通过模糊查询在数据表中查到以在组合框的文本框中输入的数据开头并且在组合框列表中已经存在的项,例子如下:

Private Sub陈列商品_Change()

    Dim a As String

    a = "*" & Me.陈列商品.Text & "*"

    Me.陈列商品.RowSource = "SELECT 商品ID, 货品编号 FROM 商品目录 Where 货品编号 like '" & a & "';"

    Me.陈列商品.Dropdown

    b = Me.陈列商品.Column(0, 0)

End Sub

上面这段代码红色部分就是模糊查询,跟一般查询的区别在于最后使用了like。

当用户在一个组合框的文本框输入了一个值,而组合框列表中不存在这个值的时候,就发生了notinlist事件,这个事件当且仅当组合框notinlist属性为ture时才能发生。当notinlist属性为ture时,每当用户试图输入一个在组合框列表中不存在的项目时,notinlist事件中的任何代码都将执行。举例如下:

Private Sub陈列商品_NotInList(NewData As String, Response As Integer)

    Dim ctl As Control

    Set ctl = Me!陈列商品

    Response = acDataErrContinue

    ctl.Undo

    Me.陈列商品 = b

    Me.陈列商品.RowSource = "SELECT 商品ID, 货品编号 FROM 商品目录;"

    SendKeys ("{Tab}")

End Sub

通过notinlist事件在组合框中添加了组合框列表中没有的项。

Notinlist事件的过程接受一个响应参数,这个参数能告诉VBA在代码执行之后做什么,下面三个常数的任何一个都能放在响应参数表中:

acDataErrAdded----这个常数用于通过代码为组合框的记录源添加新值,这段代码会再查询组合框,并向列表中添加新值。
    acDataErrDisplay---这个常数让VBA显示默认错误消息。

acDataErrContinue---这个常数禁用VBA默认错误信息,使用自己的错误消息代替它。Access仍然要求在组合框中输入一个有效的条目。

 


Access软件网交流QQ群(群号:198465573)
 
 相关文章
有效利用组合框传递管理信息   【竹笛  2004/4/14】
组合框的模糊筛选  【咱家是猫  2007/11/28】
组合框上边输入边模糊筛选  【咱家是猫  2009/3/12】
组合框模糊查询实例  【一杯绿茶  2010/11/13】
组合框模糊筛选改进  【小胡  2011/5/25】
【译文】使用一个组合框来搜索你输入的内容  【周芳  2012/6/4】
常见问答
技术分类
相关资源
文章搜索
关于作者

张志

文章分类

文章存档

友情链接