Access,Select Case ActiveControl.Name?

时间:2018-03-26 11:57:27

标签: database vba ms-access controls select-case

我在表单访问中有2个组合框(c1c2),如果用户从c1中选择一个值,则按钮搜索点击搜索,它应该会打开FORM1,如果用户从c2中选择一个值并点击搜索,则应该打开FORM2

Private Sub Commande6_Click()
    Select Case ActiveControl.Name
        Case "c1"
            DoCmd.OpenForm "FORM1"
        Case "c2"
            DoCmd.OpenForm "FORM2"
        Case Else
            'traitement
     End Select
End Sub

2 个答案:

答案 0 :(得分:2)

如果您点击一个组合框,然后单击搜索按钮,则组合框不是最后一次点击,因此它不是活动的 - 搜索按钮是({{1在你的情况下)

Commande6

答案 1 :(得分:0)

使用ActiveControl不起作用。单击搜索时,控制权将转到搜索按钮。

您可以通过几种方式处理。您可以(a)查询两个控件以检测哪一个未设置为默认值,或者(b)跟踪哪一个最后具有焦点(可能使用隐藏控件)。

编辑:请参阅ashleydawgs答案以获取代码。