![]() |
1
2
大多数访问控制事件不是由对控件的编程更改触发的。您可能希望调用代码以启用窗体的加载事件中的控件。 您没有提到正在使用的访问版本,但我认为任何版本都没有组合框的记录集属性。 是否要将组合框设置为特定值? |
![]() |
2
1
一种方法是将combobox.change()放在form.current()方法中。 然后,当窗体启动并运行时,此操作将视为组合框已更改。 我以前也做过类似的事情,但是我现在没有代码在我面前。一旦我看到它,我会把它贴在这里更详细,但从我的头上,我相信这是我做的方式。 |
![]() |
3
1
在评论中,lamcro注意到梳齿盒是否有记录集的问题:
我在设置监视列表时看到它,但组合框的记录集无法通过代码访问或更改。要筛选组合框,需要使用其行源。 这可以通过以下两种方式之一实现:
假设您有cmbcombox1,当您在其中选择一个值时,您希望根据在cmbcombox1中选择的值筛选cmbcombox2中列出的值。对于方法1,可以使用第一个组合框的afterupdate设置第二个组合框的行源:
要使用第二种方法,您可以定义第二个组合框的行源,以基于测试第一个组合框的值:
如果第一个组合框有一个值并且 不 如果有的话过滤掉 是 一个值。也就是说,在为第一个组合框选择值之前,将得到一个未筛选的列表。 然后,在cmbcombobox1的afterupdate事件中,您将重新查询第二个组合框:
为了确保对表单控件的引用得到适当的解析,最好定义一个参数,因此您的行源应该是:
(假设您正在筛选一个自动编号pk——当然,如果数据类型不同,您将使用不同的数据类型) 我倾向于使用动态rowsource分配,这仅仅是因为我发现在不同的访问版本中它的问题较少(即,在所有的访问版本中,对窗体上控件的引用并不是以相同的方式解决的)。 |
![]() |
4
0
你能解释一下你有什么类型的组合框和你想做什么吗?例如,是否有用于查找窗体记录的未绑定组合框,或是否有用于更新表中字段的绑定组合框?这由rowsource和controlsource属性控制,组合框没有记录集属性。当您打开窗体时,未绑定组合框将没有值,当您从一个记录移动到另一个记录时,该值也不会更改,但是使用当前事件分配值是很容易的。 编辑 我还不清楚你想做什么。根据您的注释,在选择选项时修改控件是否有问题,或者在窗体打开时设置组合的值是否有问题?是否要更改组合的行源,可能如原始文章所暗示的那样? |
![]() |
5
0
'检查窗体属性上的密钥预览 'debug here for combobox.value(ctrl+g表示调试窗口) debug.print组合框.value me.filter=“key=”&组合框.value '潜在的me.reload或me.refresh,具体取决于MS Access版本 |
![]() |
blogger13 · 视频租赁店数据库的规范化 5 月前 |
![]() |
Pepito · 从一个选择中使用别名,以便在另一个选择中将其使用 5 月前 |
![]() |
Shiela · 日期/时间格式VBA访问查询 6 月前 |
![]() |
Tim O · 从MS Access 2016中的字符串字段中间提取数值 11 月前 |