1
我不知道我是否解释得很好。我是一名初学者,我试图在VBA中使用VLOOKUP从文件中获取一个值。然而,即使我可以明显地使用字符串本身,我也不能将它用作变量。如何在VBA中使用VLOOKUP中的变量作为范围评估?
因此,当我在下拉列表中选择某些内容时,其想法是自动填充两个文本框。 Dropwdown本身决定了包含数据的工作表。
Private Sub cbProductList1_Change()
vCode1 = Application.WorksheetFunction.VLookup(cbProductList1.Value,
[Products!A:B], 2, False)
Me.tbProdCode1 = vCode1
vPrice1 = Evaluate("VLOOKUP(" & vCode1 & ", " & Me.labelCFValue & ", 2, False)")
Me.tbPrice1 = vPrice1
End Sub
如果我在vCode1上运行MsgBox - 它给了我需要成为VLOOKUP的第一个参数的字符串。 如果我在Me.labelCFValue
上运行MsgBox,它会给我CF_1!A25:B33
(不带引号),就像我需要它一样。但是当我在vPrice1上运行MsgBox时,出现错误。
以后编辑:另外,如果你能帮我使用Me.labelCFValue
里面Application.WorksheetFunction.VLookup()
,这也可能是好的。
请帮忙?
如果你创建一个用户定义的函数,你可以返回labelCFvalue的值(例如'Public Function getlabelCF()as string getlabelCF = Me.labelCFValue End Function') – serakfalcon
谢谢!这解决了它! – NsD