在VBA上创建UserForm

时间:2016-12-20 05:40:17

标签: excel vba excel-vba userform

我正在按照在此网站http://www.excel-easy.com/vba/userform.html上创建用户表单的具体步骤进行操作。我遵循了所有步骤,但我无法使其发挥作用。

请参阅图片以了解错误。 Excel Error

当我粘贴此代码时。

Private Sub UserForm_Initialize()

'Empty NameTextBox
 NameTextBox.Value = ""

 'Empty PhoneTextBox
 PhoneTextBox.Value = ""

'Empty CityListBox
CityListBox.Clear

'Fill CityListBox
With CityListBox
.AddItem "San Francisco"
.AddItem "Oakland"
.AddItem "Richmond"
End With

'Empty DinnerComboBox
DinnerComboBox.Clear

'Fill DinnerComboBox
With DinnerComboBox
.AddItem "Italian"
.AddItem "Chinese"
.AddItem "Frites and Meat"
End With

 'Uncheck DataCheckBoxes
DateCheckBox1.Value = False
DateCheckBox2.Value = False
DateCheckBox3.Value = False

'Set no car as default
CarOptionButton2.Value = True

'Empty MoneyTextBox
MoneyTextBox.Value = ""

'Set Focus on NameTextBox
 NameTextBox.SetFocus
 End Sub

此代码有错误

Private Sub CommandButton1_Click()

DinnerPlannerUserForm.Show

End Sub

请先查看website

2 个答案:

答案 0 :(得分:5)

您的某个控件未正确命名。将Option Explicit添加到代码模块的顶部通常可以让您尽早发现此类错误。

enter image description here

答案 1 :(得分:1)

似乎要么:

  • 您没有将UserForm1重命名为DinnerPlannerUserForm或
  • 您没有重命名初始化代码中提到的其中一个控件,或
  • 你从未打过电话 Set MyDinnerPlanner = New DinnerPlannerUserForm
    (引用对象的变量以Null开头;在您使用它们之前,它们需要SetNew个实例。)

如果单击“需要对象”错误对话框的“调试”命令按钮,VBA IDE将带您进入一行代码。那行代码可能会有一个形式的陈述 <ObjectInstanceName>.<MethodName>(<parameters>)
<ObjectInstanceName>.<PropertyName> = <Value>
“需要对象”错误告诉您VBA无法识别<ObjectInstanceName><ObjectInstanceName> Is Null