将公式分配给可变行范围VBA

时间:2016-11-14 16:42:48

标签: excel vba excel-vba macros vlookup

我正在尝试创建一个宏,它可以为工作表动态执行vlookup,并且行数不断增加;我想编写代码,以便它从Q2运行vlookup到col中最后一个填充的行。 Q(无论可能是什么),到目前为止我已经提出了这个:

范围(" Q2",范围(" Q2")。结束(xlDown))。值=" = VLOOKUP(A2,sheet2!A:BO,67 ,FALSE)"

..宏执行它需要做的所有事情&相应地更改每一行,但在没有更多数据后,它也会无限地向下运行。如果可能的话,我想知道是否有办法在一行代码中执行此操作。我对VBA& amp;无法找到已经公布的答案,这足以解决我的问题,所以我们将非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

根据您提供的信息,这应该有效。我猜你用公式替换现有值,否则行查找将返回你不想要的值。如果您想要其他列中的最后一行,只需将Q中的Cells(Rows.Count, "Q").End(xlUp).Row更改为您想要的列。

Range("Q2:Q" & Cells(Rows.Count, "Q").End(xlUp).Row).Value = "=VLOOKUP(A2,sheet2!A:BO,67,FALSE)"