vb用listbox中的选项作为查询条件的问题。

麻烦那位高手帮我分析一下我的句子对不对。listbox是一个复选空间。Fori=0ToList1.Columns-1IfList1.Selected(i)=TrueThe... 麻烦那位高手帮我分析一下我的句子对不对。listbox 是一个复选空间。

For i = 0 To List1.Columns - 1

If List1.Selected(i) = True Then
sql2 = "select distinct 员工 from mulu where 公司='List1.List(i)'"
rs2.Open sql2, cnn, adOpenKeyset,adLockOptimistic
rs2.MoveFirst
for j=0 to rs2.recordcount

If rs2.RecordCount <> 0 And rs2.EOF<> True Then
List2.AddItem " rs2.Fields('变电站').Value"
rs2.MoveNext
EndIf
next j

EndIf

Next i
展开
 我来答
网海1书生
科技发烧友

2014-05-27 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12311 获赞数:26228

向TA提问 私信TA
展开全部
For i = 0 To List1.ListCount - 1
    If List1.Selected(i) Then
        sql2 = "select distinct 员工 from mulu where 公司='" & List1.List(i) & "'"
        rs2.Open sql2, cnn, adOpenKeyset, adLockOptimistic
        Do Until rs2.EOF
            List2.AddItem rs2("变电站")
            rs2.MoveNext
        Loop
        rs2.Close
    EndIf
Next i
追问
公司='" & List1.List(i) & "'—— 这个地方理解不了啊,麻烦你在给解释一下  为什么先用单引号 在用双引号。
你是用vb 6.0写的这个代码,还是用vs2010写的?
追答

打个比方,假如有个字符串是这样的:

"公司='百度'"

现在要把“百度”换成一个变量gs,那么我们可以先把这个字符串分成三部分,分别是:

"公司='"      ----别忘记倒数第二个那个单引号

"百度"

"'"               ----这部分就是一个单独的单引号

然后,把“公司”换成变量gs,就成了:

"公司='"

gs

"'"

最后,用&把这三部分连接为一个完整的表达式就是:

"公司='" & gs & "'"

现在,如果把gs换成List1.List(i),那不就是

"公司='" & List1.List(i) & "'"

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式