组合框属性设置及运用示例-曹光耀
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-窗体/数据页


组合框属性设置及运用示例

发表时间:2011/6/11 评论(1) 浏览(18205)  评论 | 加入收藏 | 复制
   
摘 要: VBA代码设置组合框的行来源类型、列数、列宽等值,并添加列表值
正 文:
一、先决条件是:组合框的行来源类型必需设置为“值列表”
二、创建表[tblName],字段列表如下:

三、创建窗体[窗体1],添加一个组合框[Combo1],添加一个子窗体[Child0]
1。窗体加载事件
Private Sub Form_Load()
Me.Child0.SourceObject = "table.tblName"
End Sub
2。组合框[Combo1]获得焦点事件
Private Sub Combo1_GotFocus()
Dim i As Long
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
rs.Open "select [DepartmentID],[Department] from tblName GROUP BY DepartmentID, Department", CurrentProject.Connection, 3, 3
Me.Combo1.RowSourceType = "值列表" '设置行来源类型
If Me.Combo1.ListCount > 0 Then '先删除,方便后继添加
    For i = Me.Combo1.ListCount - 1 To 0 Step -1
        Me.Combo1.RemoveItem i
    Next
End If
With Me.Combo1
    .ColumnCount = 2 '设置列数为了2
    .Width = 4 * 567 '组合框的宽度为4cm,567为1cm=567缇(像素单位)
    .ColumnWidths = "0CM,4CM" '第一列宽0cm,第二列宽2cm
    If .ColumnHeads = True Then '设置列标题
        .AddItem "部门ID,部门"
    End If
    .AddItem "无,无"
    rs.MoveFirst
    For i = 0 To rs.RecordCount - 1
        .AddItem rs("DepartmentID") & ", " & rs("Department")'添加记录集到组合框
    rs.MoveNext
    Next
    .AddItem "全部,全部"
    .DefaultValue = "全部"
End With
End Sub
3。组合框的更新后事件
Private Sub Combo1_AfterUpdate()
If Me.Combo1.Column(1) = "无" Then
    Me.Child0.Form.RecordSource = ""
ElseIf Me.Combo1.Column(1) = "全部" Then
    Me.Child0.Form.RecordSource = "select * from tblName"
Else
    Me.Child0.Form.RecordSource = "select * from tblName where [Department]='" & Me.Combo1.Column(1) & "'"
End If
Me.Child0.Requery
End Sub
点击下载此附件

Access软件网交流QQ群(群号:198465573)
 
 相关文章
【Access源码示例】Access组合框下拉列表模糊查询功能的完...  【红尘如烟  2013/3/5】
[Access源码]改进---组合框下拉列表模糊查询功能的完美实现  【漏蛧尐魚℡  2013/3/7】
Access组合框数据源设置方法,Access组合框记录源添加方法...  【学习者  2013/4/27】
Access组合框多选查询,今天教大家学习一个Access强大的组...  【宏鹏  2013/5/8】
常见问答
技术分类
相关资源
文章搜索
关于作者

曹光耀

文章分类

文章存档

友情链接