使用组合框过滤记录并填充第二个组合框

时间:2017-02-16 16:21:39

标签: sql ms-access

我将组合框的值传递给我想用来填充另一个组合框的查询时遇到了一些问题。

有一个包含列的大表:AutoID,Projectname,Projecttype以及其他一些我想要过滤某些记录的表。 第一个组合框由不同的表填充,其中包含:AutoID和Projecttype(我已经使用它来创建上表中的记录)。这个组合框绑定到第一列(AutoID),但我显示第二列。我想要的是 要做的是选择一个"项目类型"并使用所有相应的记录填充第二个组合框并显示"项目名称"进一步处理。

我已经读过,在查询中无法直接使用组合框选择,您必须使用公共功能。我创建了这个函数(使用listindex从相应的Projecttype中获取AutoID)但是不能将它传递给查询(虽然值是正确的,但不会得到任何结果!

是否有更好的"过滤记录的方法(基于组合框选择)并填充第二个组合框?

提前谢谢! 莫里茨

1 个答案:

答案 0 :(得分:0)

为什么两个表中都有AutoIDProjecttype?看起来你可以在这里进行一些规范化。

要使用组合框执行您想要的操作,首先要在模块中定义一个全局变量,您可以在其中放置您的公共函数(我将其命名为glngAutoID)。 public函数应该只返回此变量的值,然后您可以在第二个组合框的查询中使用此函数。在第一个组合框的AfterUpdate事件中放入

glngAutoID = combo1
combo2.Requery

您不需要使用ListIndex属性来获取AutoID,因为您已将组合框绑定到第一列。