Dim cn As ADODB.Connection Dim rs As ADODB.Recordset'首先,实现第一个 Combo 的初始化Private Sub Form_Load() Set cn = New ADODB.Connection cn.Open "你的连接字符串"Set rs = cn.Execute("SELECT DISTINCT 院系名称 FROM 课程表 ORDER BY 院系名称") Do Unitl rs.EOF Combo1.AddItem rs!院系名称 rs.MoveNext Loop If Combo1.ListCount Then Combo1.ListIndex = 0 End Sub'处理 Combo1 的 Click 事件 Private Sub Combo1_Click()Set rs = cn.Execute("SELECT DISTINCT 班级 FROM 课程表 WHERE 院系名称='" & Combo1.List(Combo1.ListIndex) & "' ORDER BY 班级") Combo2.Clear Do Unitl rs.EOF Combo2.AddItem rs!班级 rs.MoveNext Loop If Combo2.ListCount Then Combo2.ListIndex = 0End Sub'处理 Combo2 的 Click 事件 Private Sub Combo2_Click()Set rs = cn.Execute("SELECT DISTINCT 课程名称 FROM 课程表 WHERE 院系名称='" & Combo1.List(Combo1.ListIndex) & "' AND 班级='" & Combo2.List(Combo2.ListIndex) & "' ORDER BY 课程名称") Combo3.Clear Do Unitl rs.EOF Combo3.AddItem rs!课程名称 rs.MoveNext Loop If Combo3.ListCount Then Combo3.ListIndex = 0End Sub启动后会自动载入第一个学院第一个班级的课程。 以后进行选择时,会自动重新加载。
楼上我照你的做后出现 Private Sub Combo1_Click() Set rs = cn.Execute("SELECT DISTINCT 班级 FROM 课程表 WHERE 院系名称='" & Combo1.List(Combo1.ListIndex) & "' ORDER BY 班级") Combo2.Clear Do Unitl rs.EOF Combo2.AddItem rs!班级 rs.MoveNext Loop If Combo2.ListCount Then Combo2.ListIndex = 0 End Sub 出现实时错误“94”无效使用null
Dim rs As ADODB.Recordset'首先,实现第一个 Combo 的初始化Private Sub Form_Load()
Set cn = New ADODB.Connection
cn.Open "你的连接字符串"Set rs = cn.Execute("SELECT DISTINCT 院系名称 FROM 课程表 ORDER BY 院系名称")
Do Unitl rs.EOF
Combo1.AddItem rs!院系名称
rs.MoveNext
Loop
If Combo1.ListCount Then Combo1.ListIndex = 0
End Sub'处理 Combo1 的 Click 事件
Private Sub Combo1_Click()Set rs = cn.Execute("SELECT DISTINCT 班级 FROM 课程表 WHERE 院系名称='" & Combo1.List(Combo1.ListIndex) & "' ORDER BY 班级")
Combo2.Clear
Do Unitl rs.EOF
Combo2.AddItem rs!班级
rs.MoveNext
Loop
If Combo2.ListCount Then Combo2.ListIndex = 0End Sub'处理 Combo2 的 Click 事件
Private Sub Combo2_Click()Set rs = cn.Execute("SELECT DISTINCT 课程名称 FROM 课程表 WHERE 院系名称='" & Combo1.List(Combo1.ListIndex) & "' AND 班级='" & Combo2.List(Combo2.ListIndex) & "' ORDER BY 课程名称")
Combo3.Clear
Do Unitl rs.EOF
Combo3.AddItem rs!课程名称
rs.MoveNext
Loop
If Combo3.ListCount Then Combo3.ListIndex = 0End Sub启动后会自动载入第一个学院第一个班级的课程。
以后进行选择时,会自动重新加载。
Private Sub Combo1_Click() Set rs = cn.Execute("SELECT DISTINCT 班级 FROM 课程表 WHERE 院系名称='" & Combo1.List(Combo1.ListIndex) & "' ORDER BY 班级")
Combo2.Clear
Do Unitl rs.EOF
Combo2.AddItem rs!班级
rs.MoveNext
Loop
If Combo2.ListCount Then Combo2.ListIndex = 0 End Sub
出现实时错误“94”无效使用null