【问题标题】:Formula VLOOKUP with dynamic lookup value具有动态查找值的公式 VLOOKUP
【发布时间】:2022-01-22 23:04:55
【问题描述】:

我想用循环计数器让 vlookup 的查找值动态,我试过了:

WS1.Cells(4 + j - 1, 3 + ((i - 1) * 9)).Formula = "=VLOOKUP(" & WS1.Cells(4 + j - 1, 4 + ((i - 1) * 9)) & ",WS2NAME!B:C,2,FALSE)"

虽然" & WS1.Cells(4 + j - 1, 4 + ((i - 1) * 9)) & " 会返回单元格名称(例如 B3、D5、...),但是当我在 excel 中运行宏时它返回空白。

有什么建议吗?

【问题讨论】:

    标签: excel vba formula cell vlookup


    【解决方案1】:

    在这里使用 R1C1 引用会更容易:

    WS1.Cells(4 + j - 1, 3 + ((i - 1) * 9)).FormulaR1C1 = "=VLOOKUP(RC[1],WS2NAME!C2:C3,2,FALSE)"
    

    【讨论】:

    • 我试过了,但它似乎无法识别查找数组,在我打印的公式中:“=VLOOKUP(B4;Sheet!B:C:C;2;FALSE)”;它在查找数组中添加了一个“C”,它应该是“Sheet!B:C”
    • 您使用了什么实际代码?
    • WS1.Cells(4 + j - 1 + (i - 1) * (var + 3), 3).FormulaR1C1 = "=VLOOKUP(R[0]C[-1],WS2NAME !B:C,2,FALSE)"
    • 这不是我发布的代码。请完全使用我发布的内容 - 您不能以 R1C1 格式使用 B:C
    • 嗯好的,但我需要整个 B 和 C 列的查找数组,而不仅仅是 C2 和 C3
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多