在 VBA 上创建用户窗体
Creating UserForm on VBA
我正在按照在此网站上创建用户表单的确切步骤进行操作 http://www.excel-easy.com/vba/userform.html。我已按照所有步骤操作,但无法正常工作。
错误请看图片。
当我粘贴这段代码时。
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
似乎是:
- 您没有将 UserForm1 重命名为 DinnerPlannerUserForm,或者
- 您没有重命名初始化代码中提到的控件之一,或者
- 你从来没有打过这样的电话
Set MyDinnerPlanner = New DinnerPlannerUserForm
(引用对象的变量以 Null
开头;在您可以使用它们之前,它们需要在某个时候成为 Set
到 New
实例。)
如果您单击 "Object required" 错误对话框的 "Debug" 命令按钮,VBA IDE 将带您到一行代码。该行代码可能包含
形式的语句
<ObjectInstanceName>.<MethodName>(<parameters>)
或
<ObjectInstanceName>.<PropertyName> = <Value>
.
"Object required" 错误告诉您 VBA 无法识别 <ObjectInstanceName>
或 <ObjectInstanceName> Is Null
.
您的某个控件未正确命名。将 Option Explicit
添加到代码模块的顶部通常可以让您及早发现此类错误。
我正在按照在此网站上创建用户表单的确切步骤进行操作 http://www.excel-easy.com/vba/userform.html。我已按照所有步骤操作,但无法正常工作。
错误请看图片。
当我粘贴这段代码时。
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
似乎是:
- 您没有将 UserForm1 重命名为 DinnerPlannerUserForm,或者
- 您没有重命名初始化代码中提到的控件之一,或者
- 你从来没有打过这样的电话
Set MyDinnerPlanner = New DinnerPlannerUserForm
(引用对象的变量以Null
开头;在您可以使用它们之前,它们需要在某个时候成为Set
到New
实例。)
如果您单击 "Object required" 错误对话框的 "Debug" 命令按钮,VBA IDE 将带您到一行代码。该行代码可能包含
形式的语句
<ObjectInstanceName>.<MethodName>(<parameters>)
或
<ObjectInstanceName>.<PropertyName> = <Value>
.
"Object required" 错误告诉您 VBA 无法识别 <ObjectInstanceName>
或 <ObjectInstanceName> Is Null
.
您的某个控件未正确命名。将 Option Explicit
添加到代码模块的顶部通常可以让您及早发现此类错误。