Lookup_value列号指定的VBA Vlookup

时间:2016-01-18 16:44:58

标签: excel vba excel-vba vlookup

我目前正在编写包含Vlookup的VBA代码。我目前的代码是:

ActiveCell.FormulaR1C1 = _         “= VLOOKUP(RC [-7],'[Equities EMIR New.xlsx]估值摘要'!R2C4:R100C5,1,FALSE)”

我遇到的问题是每次运行时Vlookup将在新插入列的单元格中的列。因此,一旦宏运行多次,对查找值使用RC [-7]将不起作用。

查找值将保留在同一个单元格(A3)中,但是当我尝试用A3替换RC [-7]时,我得到一个#NAME?错误。

我一直在寻找几天,我找不到解决方案,是否有人能够提供帮助?

感谢。

2 个答案:

答案 0 :(得分:1)

这将解决您的问题

ActiveCell.FormulaR1C1 = _ "=VLOOKUP(R3C1,'[Equities EMIRNew.xlsx]Valuation Summary'!R2C4:R100C5,1,FALSE)"

在VBA中请记住,使用.FormulaR1C1时,请使用R1C1格式作为参考。

答案 1 :(得分:0)

您的问题有一个快速而肮脏的解决方案。 这个想法是FormulaR1C1需要一个字符串,所以你应该每次l_counter缩进-1。

Public Sub vlookup()

Dim l_counter As Long: l_counter = 7
'your loops here
    l_counter = l_counter - 1
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-" & l_counter & "],'[Equities EMIR New.xlsx]Valuation Summary'!R2C4:R100C5,1,FALSE)"
 'your loops here
 End Sub