Excel 如何在主模块中使用输入userform的数据

Excel 如何在主模块中使用输入userform的数据,excel,vba,textbox,userform,Excel,Vba,Textbox,Userform,我对用VBA编程很陌生。我有一个带有五个文本框的用户表单。用户将在第一个文本框中输入一个整数,并在最后四个文本框中输入单元格位置,例如A1。我想在主模块中使用这些数据。我需要在循环中使用整数,即循环,直到计数器达到该整数。我需要使用单元格位置开始访问不同的数据集,这些数据集可能位于工作表中的任何位置 我在访问主模块中的这些数据时遇到问题。当用户单击OK按钮时,我当前隐藏了表单。为了测试我的代码,我只是将数据从文本框写入单元格 来自主模块的代码: Sub Sort2Stack() UserI

我对用VBA编程很陌生。我有一个带有五个文本框的用户表单。用户将在第一个文本框中输入一个整数,并在最后四个文本框中输入单元格位置,例如A1。我想在主模块中使用这些数据。我需要在循环中使用整数,即循环,直到计数器达到该整数。我需要使用单元格位置开始访问不同的数据集,这些数据集可能位于工作表中的任何位置

我在访问主模块中的这些数据时遇到问题。当用户单击OK按钮时,我当前隐藏了表单。为了测试我的代码,我只是将数据从文本框写入单元格

来自主模块的代码:

 Sub Sort2Stack()

 UserInput.Show

 Cells(5, 22).Value = TestPeriod.Value 'integer entered in TextBox 1
 Cells(6, 22).Value = YMLoc.Value      'cell location entered in TextBox 2
 Cells(7, 22).Value = YFLoc.Value      ' .
 Cells(8, 22).Value = NMLoc.Value      ' .
 Cells(9, 22).Value = NFLoc.Value      'cell location entered in TextBox 5

 End Sub
我得到一个运行时错误424,需要对象。这可能很简单,我已经寻找了一段新的时间

请告知。提前谢谢你

Cells(5, 22).Value = UserInput.TestPeriod.Text
我认为您需要参考您的用户表单来获取这些值。这是假设你真的只是隐藏表单,而不是卸载它。在程序结束时,在结束Sub之前,您应该

Unload UserInput

将窗体从内存中取出。

您还可以在主模块中声明公共变量,并从窗体中访问它们。可以将变量设置为特定按钮单击事件上文本框的当前文本