我正在设置一个用户表单来捕获新的客户端数据。每个客户都分配有一个客户ID(数字),接下来将输入数据保存在Excel工作表中。第一个用户表单完成后,将打开一个带有估算设计摘要的新用户表单。
我想将第一个用户窗体中分配的客户端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
,则必须将此值分配给Client_ID
用户表单上的DesignEst
文本框,但当前会产生:
DesignEst.Client_ID.Value = ""
代替:
DesignEst.Client_ID.Value = "5"
答案 0 :(得分:0)
是的,我之前也遇到过同样的问题。由于某种原因,用户窗体使用设计属性而不是在运行时分配的属性进行初始化。由于永久数据在相应的单元格中已经可用,因此您可以尝试在“ Form_initialize”事件上执行“设计估算”用户窗体分配。希望能奏效。