在VBA上创建用户表单

在VBA上创建用户表单,vba,excel,userform,Vba,Excel,Userform,我遵循在这个网站上创建用户表单的确切步骤。我遵循了所有的步骤,但我不能使它工作 请查看图像以了解错误。 当我粘贴此代码时 Private Sub UserForm_Initialize() 'Empty NameTextBox NameTextBox.Value = "" 'Empty PhoneTextBox PhoneTextBox.Value = "" 'Empty CityListBox CityListBox.Clear 'Fill CityListBox With C

我遵循在这个网站上创建用户表单的确切步骤。我遵循了所有的步骤,但我不能使它工作

请查看图像以了解错误。

当我粘贴此代码时

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
请看第一个。

似乎:

  • 您没有将UserForm1重命名为DinnerPlannerUserForm,或者
  • 您没有重命名初始化代码中提到的某个控件,或者
  • 您从未打过这样的电话
    设置MyDinnerPlanner=New DinnerPlannerUserForm

    (引用对象的变量以
    Null
    开头;在使用它们之前,需要在某个点将它们
    设置为
    新的
    实例。)
如果单击“需要对象”错误对话框的“调试”命令按钮,VBA IDE将带您进入一行代码。这行代码可能会有一个
()

=
“所需对象”错误告诉您VBA无法识别
为Null

似乎:

  • 您没有将UserForm1重命名为DinnerPlannerUserForm,或者
  • 您没有重命名初始化代码中提到的某个控件,或者
  • 您从未打过这样的电话
    设置MyDinnerPlanner=New DinnerPlannerUserForm

    (引用对象的变量以
    Null
    开头;在使用它们之前,需要在某个点将它们
    设置为
    新的
    实例。)
如果单击“需要对象”错误对话框的“调试”命令按钮,VBA IDE将带您进入一行代码。这行代码可能会有一个
()

=

“所需对象”错误告诉您VBA无法识别
为Null

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


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



您是否将用户表单重命名为“DinnerPlannerUserForm”?是的。我重命名了userform如果单击错误消息框中的“调试”,yoiu将带到何处?是否将userform重命名为“DinnerPlannerUserForm”?是的。我将UserForm1重命名为DinnerPlannerUserForm如果您在错误消息框中单击“调试”,yoiu将带到何处?我将UserForm1重命名为DinnerPlannerUserForm您将其重命名为何处?您更改了哪个属性?我建议您按照指南中的“显示用户表单”部分进行操作(完成该部分)。不要放入任何其他代码。要找到您的问题,您需要简化代码。我在属性中重命名了它。我将UserForm1重命名为DinnerPlannerUserForm。您在哪里重命名了它?您更改了哪个属性?我建议您按照指南中的“显示用户表单”部分进行操作(完成该部分)。不要放入任何其他代码。要找到您的问题,您需要简化代码properties@RexDarwin您应该观看以下视频系列:。这是相关的:@RexDarwin如果你能将工作簿链接到我,我将为你调试它。你需要使用谷歌文档、谷歌硬盘、FileHippo、DropBox等服务。对不起,我再试了一次,现在已经解决了CarOptionButton中的一个问题:)谢谢much@BruceWayne我用。如果文件超过SO的2MB上载限制,我将使用以减小文件大小。@您应该观看以下视频系列:。这是相关的:@RexDarwin如果你能将工作簿链接到我,我将为你调试它。你需要使用谷歌文档、谷歌硬盘、FileHippo、DropBox等服务。对不起,我再试了一次,现在已经解决了CarOptionButton中的一个问题:)谢谢much@BruceWayne我用。如果文件超过SO的2MB上传限制,我会使用它来减小文件大小。