Office中国论坛/Access中国论坛

标题: 关于查询的问题! [打印本页]

作者: petrelai    时间: 2004-3-30 01:03
标题: 关于查询的问题!
在一个查询的窗体中,有一个商品编号的文本框,还有一个放商品的列表框,请问如何才能实现以下功能:
      如有商品的商品编号:0101001
     那么我在商品编号文本框输入01,则列表框就出现商品编号为01的商品.
作者: petrelai    时间: 2004-3-30 05:37
怎么,不可以实现吗?
作者: 我同意    时间: 2004-3-30 05:47
呵呵,顶.
我有类似问题.郁闷中........
作者: petrelai    时间: 2004-3-30 05:48
现在我也急着用呀,各位高手,版主,帮忙呀!
作者: LYP6160    时间: 2004-3-30 06:16
以下是引用petrelai在2004-3-29 17:03:18的发言:
       如有商品的商品编号:0101001
      那么我在商品编号文本框输入01,则列表框就出现商品编号为01的商品.

不很明,你要的是0101001还是01编号的商品?
作者: petrelai    时间: 2004-3-30 07:55
我是说,如果我输入的是"01"则查询出商品编号前两位是"01"的商品,同样道理,如果我输入多少位,它就查询出商品编号的前几位数是这我输入的几个.
作者: petrelai    时间: 2004-3-30 08:11
现在我做出来,可以查询了,但是我查出来的把"01"在商品编号的最后两的商品编号也查询出来了,我只想把在广本框输入的数据作为查询商品编号的前几位数据的,就是如我在文本框输入"0101",则查询出的商品编号的前四位必须是由"0101"开头的.
作者: sea.er    时间: 2004-3-30 08:24
用“Like [Forms]![窗体1]![文本0] & *”行不行
作者: petrelai    时间: 2004-3-30 08:27
行是行,但是我刚才说过了,一查,就把所以包括"01"的全查出来了,而现在我用Me.List5.RowSource = "select 商品信息表.品名规格, 商品信息表.商品编号 FROM 商品信息表 where 商品信息表.商品编号 like '" & Me![商品编号查询] & "???????' "可以查出我想要的结果了.
因为我的商品编号规定为8位.我用len函数来控制它.代码很长,各位高手没有想到简一点.?




[此贴子已经被作者于2004-3-30 0:34:46编辑过]


作者: sea.er    时间: 2004-3-30 08:32
不可能啊,“Like [Forms]![窗体1]![文本0] & *”只会查出以文本框中的字符开头的字符串啊
作者: petrelai    时间: 2004-3-30 08:37
Private Sub OK_Click()
Dim ch As Integer
ch = Len(Me.商品编号查询)
Select Case ch
Case 1
Me.List5.RowSource = "select 商品信息表.品名规格, 商品信息表.商品编号 FROM 商品信息表 where 商品信息表.商品编号 like '" & Me![商品编号查询] & "???????' "
Case 2
Me.List5.RowSource = "select 商品信息表.品名规格, 商品信息表.商品编号 FROM 商品信息表 where 商品信息表.商品编号 like '" & Me![商品编号查询] & "??????' "
Case 3
Me.List5.RowSource = "select 商品信息表.品名规格, 商品信息表.商品编号 FROM 商品信息表 where 商品信息表.商品编号 like '" & Me![商品编号查询] & "?????' "
Case 4
Me.List5.RowSource = "select 商品信息表.品名规格, 商品信息表.商品编号 FROM 商品信息表 where 商品信息表.商品编号 like '" & Me![商品编号查询] & "????' "
Case 5
Me.List5.RowSource = "select 商品信息表.品名规格, 商品信息表.商品编号 FROM 商品信息表 where 商品信息表.商品编号 like '" & Me![商品编号查询] & "???' "
Case 6
Me.List5.RowSource = "select 商品信息表.品名规格, 商品信息表.商品编号 FROM 商品信息表 where 商品信息表.商品编号 like '" & Me![商品编号查询] & "??' "
Case 7
Me.List5.RowSource = "select 商品信息表.品名规格, 商品信息表.商品编号 FROM 商品信息表 where 商品信息表.商品编号 like '" & Me![商品编号查询] & "?' "
Case Else
Me.List5.RowSource = "select 商品信息表.品名规格, 商品信息表.商品编号 FROM 商品信息表 where 商品信息表.商品编号 ='" & Me![商品编号查询] & " '"
End Select
End Sub
呵^^^^^很长吧?没办法,笨呀.
作者: sea.er    时间: 2004-3-30 08:41
你不用管它多少位,直接用“Like [Forms]![窗体1]![文本0] & *”不就行了吗?
作者: cake_super    时间: 2004-3-30 12:21
就是啊!!以前用过的阿!!!*很好用的!你不把它放在前面嘛,就不会出现301,401,5501这种情况了亚!
作者: petrelai    时间: 2004-3-30 18:21
我试过了,就是因为不行,我才改为我那长篇大论的代码呀
不信的话,你试一试,也许你试出来的不是我想要的结果。




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3