在下一个用户窗体上为文本框分配变量值

Assigning variable value to textbox on next userform

我正在设置一个用户表单来捕获新的客户数据。每个客户端都分配有一个客户端 ID(编号),输入数据保存在 excel sheet 旁边。第一个用户表单完成后,将打开一个带有估算设计摘要的新用户表单。

我想将第一个用户窗体中指定的客户端 ID 号保存到第二个用户窗体的文本框中,但不断弹出类型不匹配错误。在调试时它显示分配给变量的值没有转移到文本框。

(相同的代码以前适用于这些相同的用户表单,并且仍然适用于以后的用户表单

Private Sub Continue1_Click()

'Determine empty row

Dim emptyRow As Long
Sheet5.Activate

emptyRow = WorksheetFunction.CountA(Range("B:B")) + 1

'Transfer userform data to spreadsheet

Cells(emptyRow, 2).Value = CName.Value
Cells(emptyRow, 3).Value = Business.Value
Cells(emptyRow, 4).Value = Region.Value
Cells(emptyRow, 5).Value = Email.Value
Cells(emptyRow, 6).Value = CNumber.Value
Cells(emptyRow, 7).Value = WSource.Value
Cells(emptyRow, 8).Value = Flow.Value
Cells(emptyRow, 9).Value = Pressure.Value
Cells(emptyRow, 10).Value = Irrigation.Value

'Load Design Estimation userform

DesignEst.Client_ID.Value = emptyRow - 1
Unload Me
DesignEst.Show

End Sub

如果 emptyRow 的值为 5,则必须将此值分配给 DesignEst 用户表单上的 Client_ID 文本框,但目前它产生:

DesignEst.Client_ID.Value = ""

而不是:

DesignEst.Client_ID.Value = "5"

是的,我之前遇到过同样的问题。出于某种原因,用户窗体使用设计属性初始化,而不是在 运行 时间内分配的内容。由于持久数据已经在相应的单元格中可用,您可以尝试对 "Form_initialize" 事件执行设计估算用户窗体分配。希望有用。