我正在尝试执行这部分代码。
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值的错误,但有时会显示正确的数字。我该怎么做才能解决这个问题?
答案 0 :(得分:0)
您没有指定评估应在哪个工作表上运行。
所以$A" & i & ..
正在寻找活动表。
更改
q = CStr(Evaluate(formula))
到
q = CStr(ws2.Evaluate(formula))