Vba 如何从userform条目执行VB vlookup

Vba 如何从userform条目执行VB vlookup,vba,excel,Vba,Excel,我正在尝试为发票创建一个脚本,它可以根据用户表单中的条目执行vlookup。我有一个userform,它有一个带有命名范围的组合框。我想要四个文本框,显示vlookup的结果。 我有一个vlookup设置,它只进入工作表中的正常单元格。它是: =VLOOKUP($A22,Products!$A$1:$B$1679,2,FALSE) 我想要它,这样它就不用寻找单元格A22,而是从组合框中执行vlookup,这个组合框刚刚命名为test。然后,我想重复一下: =VLOOKUP($A47,Pro

我正在尝试为发票创建一个脚本,它可以根据用户表单中的条目执行vlookup。我有一个userform,它有一个带有命名范围的组合框。我想要四个文本框,显示vlookup的结果。 我有一个vlookup设置,它只进入工作表中的正常单元格。它是:

 =VLOOKUP($A22,Products!$A$1:$B$1679,2,FALSE)
我想要它,这样它就不用寻找单元格A22,而是从组合框中执行vlookup,这个组合框刚刚命名为test。然后,我想重复一下:

 =VLOOKUP($A47,Products!$A$2:$A$1679,1,FALSE)

 =VLOOKUP($A47,Products!$A$2:$A$1679,1,FALSE)

  =VLOOKUP($A47,Products!$A$2:$C$1679,3,FALSE)

谢谢你的阅读,我希望你能帮助我。如果可以

参考组合框控件的
属性,伪代码:

 =VLOOKUP(UserForm1.ComboBox1.Value,Products!$A$2:$A$1679,1,FALSE)
等等

实际代码:

Dim lookupRange as Range
Set lookupRange = Worksheets("Products").Range("A2:A1679")

Product = Application.Vlookup(UserForm1.Selectprodcutcombo.Value‌​, _
            lookupRange, 1, False)

当然,您需要根据表单的设计修改表单和组合框的名称。

谢谢您的回复。我已经将此添加到vb脚本中,但是由于一个无效字符,我现在得到了一个编译错误。你注意到有什么地方不对吗?Product=Application.worksheetfunction.VLOOKUP(UserForm1.Selectprodcutcombo.Value,Products!$A$2:$A$1679,1,FALSE)感谢您的帮助。我们期待着测试它。