我有一个名为UserForm2的多用户表单。我在一个名为txtmobno(移动电话号码的缩写)的文本框中从用户那里获取了一个10位数的输入,然后打算使用该输入作为vlookup函数的参数,从名为MD的工作表中获取firstname。有一次,我有vlookup返回的第一个名字,我想用这个名字在UserForm2上填充名为txtfirstnm的文本框。单击名为cmdcheck的命令按钮时,应填充文本框。但是我收到一个错误“Object Required”。我的代码看起来像这样。我错过了什么?提前致谢
Private Sub cmdcheck_Click()
Me.txtfirstnm = Application.WorksheetFunction.VLookup(Me.txtmobno, MD.Range("a1:i10"), 2, 0)
End Sub
答案 0 :(得分:1)
MD
未定义,除非您已经离开并将其设为某种公共或私有变体。根据您的叙述,这可能是Worksheets("MD")
。
Private Sub cmdcheck_Click()
Me.txtfirstnm = Application.VLookup(Me.txtmobno, Worksheets("MD").Range("a1:i10"), 2, 0)
End Sub
答案 1 :(得分:0)
所以我想,即使您在vba中重命名工作表,也可以使用Sheet1 Sheet 2等等......所以用Sheet1替换MD工作了!