如何在VBA VLOOKUP中使用"This Row"?

9 浏览
0 Comments

如何在VBA VLOOKUP中使用"This Row"?

我正在尝试修改Vlookup函数,以便使用“当前行”功能。例如,我有一个宏,在B列中插入以下公式:

=VLOOKUP(I1253,treatlookup,11,FALSE)

这个工作得很好,但是在宏的过程中,我需要切换到另一个公式:

=VLOOKUP(I1253,Itemlookup,22,FALSE)

当然,数据每次都会变化,所以我不能只把那个公式放在特定的单元格中。所以我希望公式能够表达为:

= Vlookup(I"当前行", ItemLookup, 22,False)

然后我可以使用if语句来确定使用哪个公式。

先谢谢了,使用的是Excel 2010。

0
0 Comments

问题的出现原因:原帖中的用户想要在VBA VLOOKUP函数中使用"This Row"(当前行)作为查找值,但是他不知道如何正确地使用这个关键字。

解决方法:用户可以使用R1C1风格的引用来解决这个问题。在VBA中,可以通过将FormulaR1C1属性设置为相应的公式来使用R1C1风格的引用。在这种情况下,用户可以将公式设置为 "=VLOOKUP(RC9, ItemLookup, 22, false)",这样就可以在VLOOKUP函数中使用"This Row"作为查找值。

下面是使用R1C1风格的引用的示例代码:

Activecell.FormulaR1C1 = "=VLOOKUP(RC9, ItemLookup, 22, false)"

通过使用R1C1风格的引用,用户可以在VBA中正确地使用"This Row"作为VLOOKUP函数的查找值,从而解决问题。

0