我没用comb绑定DATA控件,我用的是对象连接。检测出来的时候,如果没有用MoveNext,那么comb中只是显示第一条记录。用一个循环,如下:(dim rs as recordset)
do while not rs.eof
comb.additem rs.fields(字段名称)
comb.additem rs.fields(字段名称2)
.
.
.
rs.MoveNext
loop试试这样行不行?
do while not rs.eof
comb.additem rs.fields(字段名称)
comb.additem rs.fields(字段名称2)
.
.
.
rs.MoveNext
loop试试这样行不行?
ByVal FieldName As String, TargetComboBox As ComboBox)
Dim rs As New ADODB.Recordset
Dim tmpstr As String
tmpstr = TargetComboBox.Text
rs.Open "SELECT " & FieldName & " FROM " & TableName & " GROUP BY " & FieldName, DataEnv.Cnn.ConnectionString
Do Until rs.EOF
If (Not IsNull(rs.Fields(FieldName))) And rs.Fields(FieldName) <> "" Then
If Not MemberComboBox(TargetComboBox, rs.Fields(FieldName)) Then
TargetComboBox.AddItem rs.Fields(FieldName)
End If
End If
rs.MoveNext
Loop
rs.Close
TargetComboBox.Text = tmpstr
End Sub
试试这个Sub
MemberComboBox = False
i = 0
Do Until i = TargetComboBox.ListCount
If TargetComboBox.List(i) = Targetstr Then
MemberComboBox = True
Exit Do
End If
i = i + 1
Loop
End Function
少写了一个Function,呵呵,加上就可以了第一个SUB中的ADO的Connection字串自己改改
While Not rst.EOF
com_xingmin.AddItem rst!姓名
Com_year.AddItem rst!统计年
rst.MoveNext
Wend