Ms access MS Access:我的表单的vba中出现错误

Ms access MS Access:我的表单的vba中出现错误,ms-access,vba,Ms Access,Vba,我有一个简单的MS Access表单,它有3个对象:文本框、列表框和按钮。表单的预期用途如下:用户在文本框中输入名称,从列表框中选择一项,然后单击按钮将数据添加到表中 但是,当我单击按钮时,我不断收到错误消息,“除非控件具有焦点,否则无法引用控件的属性或方法。” 下面是我的代码。谢谢 Private Sub addRecord_button_Click() Dim CustomerName As String Dim CustomerType As String On

我有一个简单的MS Access表单,它有3个对象:文本框、列表框和按钮。表单的预期用途如下:用户在文本框中输入名称,从列表框中选择一项,然后单击按钮将数据添加到表中

但是,当我单击按钮时,我不断收到错误消息,“除非控件具有焦点,否则无法引用控件的属性或方法。”

下面是我的代码。谢谢

Private Sub addRecord_button_Click()
    Dim CustomerName As String
    Dim CustomerType As String

    On Error GoTo Errhandler

    CustomerName = "[name not selected]"
    CustomerType = "[type not selected]"

    CustomerName = Customer_TextBox.Text

    Select Case Type_ListBox.ListIndex
        Case 0
            CustomerType = "Type 1"
        Case 1
            CustomerType = "Type 2"
        Case 2
            CustomerType = "Type 3"
    End Select

    'MsgBox ("Name: " & CustomerName & " and Type: " & CustomerType)

    DoCmd.RunSQL "INSERT INTO Customer VALUES (CustomerName, CustomerType);"

Errhandler:
    MsgBox ("The following error has occured: " & Err & " - " & Error(Err))
End Sub

.Text
属性只能在文本框具有焦点时使用。尝试改用
.Value
属性

尝试替换下面的行

CustomerName = Customer_TextBox.Text


或者,完全忽略一个属性,即,
Me!Customer_Textbox
(实际上还应该指定父表单,即Me!,因为这将它与对变量的引用区分开来)。
CustomerName = Customer_TextBox.Value