如何设置文本框以在事件上启用

tal*_*ght 1 ms-access vba

我在访问表单上有一个文本框,如果文本框为空,我想启用edditing.我是VBA的新手,并且不确定最好的方法.使用双击事件对我来说没问题,但我更愿意在加载时进行.

我尝试了以下代码,但似乎无法让它工作.任何帮助,将不胜感激.

Private Sub EmpID_DblClick(Cancel As Integer)
If EmpID.Text = "" Then
    Me.EmpID.Enabled = True
End If
End Sub
Run Code Online (Sandbox Code Playgroud)

Fio*_*ala 5

对于每个记录应该发生的事情,您最好使用当前事件.不要将.Text属性用于控件.如果必须使用属性,请使用.Value..Text属性仅在控件具有焦点时可用,并且通常仅在特殊情况下使用,例如Change事件.

Private Sub Form_Current()
  If IsNull(EmpID) Then
    Me.EmpID.Enabled = True
  End If
End Sub
Run Code Online (Sandbox Code Playgroud)

在正常设置中,控件不可能等于零长度字符串("")

您可以通过以下方式涵盖所有基础:

Trim(EmpID & "") = ""
Run Code Online (Sandbox Code Playgroud)