Private Sub Commandchx_Click()
On Error GoTo searcherror
On Error GoTo error:
 If Text1.Text <> "" Then
     If Option1.Value Then searchSQL = "SELECT * FROM 工资表 WHERE 教师编号=" & "'" & Text1.Text & "'"
     If Option2.Value Then searchSQL = "SELECT *  FROM 工资表 where 姓名 in (select 教师编号 from 学生表 where 系别= '" & Trim(Text1.Text) & " ')"
 Else
     MsgBox "条件不能为空"
     Text1.SetFocusADO全都连上了啊.真不知道哪错了

解决方案 »

  1.   

    由于你的逻辑我不明白,只能指出我发现的问题:
    1。
    "SELECT * FROM 工资表 WHERE 教师编号=" & "'" & Text1.Text & "'"
    可以写成:
    "SELECT * FROM 工资表 WHERE 教师编号= '" & trim(Text1.Text) & "'"2."SELECT * FROM 工资表 where 姓名 in (select 教师编号 from 学生表 where 系别= '" & Trim(Text1.Text) & " ')"
    这样写一定不行,因为括号中最后的结果必须是姓名才行呀。你仔细看看语法书吧。
      

  2.   

    哦,谢谢.但那我倒是没发现.
    不过现在的错误在.If Text1.Text <> "" Then上面的{.Text}上.如果这行删掉了,错误就在If Option1.Value 的{.Value}上了.
      

  3.   

    If Text1.Text <> "" Then
         If Option1.Value Then searchSQL = "SELECT * FROM 工资表 WHERE 教师编号='" & Text1.Text & "'"
         If Option2.Value Then searchSQL = "SELECT *  FROM 工资表 where 姓名 in (select 教师编号 from 学生表 where 系别= '" & Trim(Text1.Text) & " ')"
    Else
         MsgBox "条件不能为空"
         Text1.SetFocus
    end if另外:关于你的第二个sql语句,学生表里的教师编号是否等于工资表里的姓名?
    相同的话当然没有问题,不同的话查询没有结果