是否可以在特定记录的Access子窗体中禁用/启用控件? Access 2000 - VBA

时间:2015-06-11 09:06:52

标签: vba ms-access access-vba subform

正如标题所说,我试图根据特定记录的组合框值禁用某些特定记录的控件。因此,当用户在其组合框字段中选择A时,将启用X但如果他们在其组合框中按B,则将禁用字段X.现在的问题是子窗体中的所有字段/控件都是链接的。因此,如果用户在第一个记录中按下A,则所有字段X都被启用,如果他们在第二个记录中按下B,则所有X字段都被禁用(也是第一个)。

是否可以仅禁用一个特定的记录字段(按下组合框的字段)。

我现在在VBA中的内容是:

Public Sub SoortOnderdeelTekst_Click()


    Select Case SoortOnderdeelTekst.Value

      Case "Kozijnen", "Deuren", "Ramen", "Platen"

        Me.BreedteTekst.Enabled = True
        Me.BreedteTekst.SetFocus
        Me.Lengte.Enabled = False

      Case "Glaslijsten", "Zetwerk", "Onderdelen"

        Me.Lengte.Enabled = True
        Me.Lengte.SetFocus
        Me.BreedteTekst.Enabled = False

   End Select

End Sub

使图像更清晰的图像: enter image description here

1 个答案:

答案 0 :(得分:2)

您可以使用条件格式来实现此目的,有一个Enabled属性。

在设计视图中打开表单,选择您要有条件禁用的控件,并在功能区上转到格式 - >条件格式,在规则设置中,它是右下角的小图标。

直接编写条件或在视图后面创建一个返回TRUE / FALSE的字段,在我看来这会更容易管理。

enter image description here