列表框没有显示正确的vlookup结果

时间:2017-08-08 19:40:43

标签: excel-vba vba excel

我正在尝试执行这部分代码。

Do While ws2.Cells(i, "A").Value <> Empty
    arr2(k, j) = ws2.Cells(i, "A").Value
    arr2(k, j + 1) = Application.VLookup(ws2.Cells(i, "A").Value, ws.Range("B:K"), 2, False)
    formula = ("VLOOKUP($A" & i & "&" & User.TextBox1.Value & ", CHOOSE({1,2}, 'DATA'!$B$4:$B$7669&'DATA'!$D$4:$D$7669,'DATA'!$E$4:$E$7669),2,0)")
    q = CStr(Evaluate(formula))
    arr2(k, j + 2) = q
    k = k + 1
    i = i + 1
Loop

我不知道为什么,但有时会得到不同的结果,而不做任何改动。有时它会显示vlookup值的错误,但有时会显示正确的数字。我该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:0)

您没有指定评估应在哪个工作表上运行。

所以$A" & i & ..正在寻找活动表。

更改

q = CStr(Evaluate(formula))

q = CStr(ws2.Evaluate(formula))