我需要在一组excel文件中执行许多VLookup,为此,我构建了一个工具,可以将自动VLookup从一个文件复制到另一个文件,但是我需要使其具有可伸缩性和适应性。
为此,我想在工具的某些单元格(这是一个Excel文件)中输入VLookup的参数:
您知道如何更改我的工具以使其包含这些输入参数吗?
此处的代码示例:
For myrow = 3 To lastrow
Range("b" & myrow).FormulaR1C1 = _
"=VLOOKUP(RC[-1], Input!C[-1]:C[2],2,FALSE)"
Next myrow
答案 0 :(得分:1)
我不太熟悉R1C1
表示法,但是如果您使用常规的.Formula
表示法:
以下代码假定A1
=键列,A2
=返回值列,A3
=范围内的列数(实际上只是您的返回列)。 / p>
lastrow = 10
仅作为示例
还请注意-您必须缺少一个字段...因为您应该有4个变量-第一个参数为关键列,第二个参数为2个列字母,第三个参数为列数。
Sub Test()
lastrow = 10
For myrow = 3 To lastrow
'Range("B" & myrow).Formula = "=VLOOKUP(" & Range("A1").Value & myrow & ",Input!$" & Range("A1").Value & ":$" & Range("A2").Value & "," & Range("A3").Value & ",FALSE)"
Debug.Print "=VLOOKUP(" & Range("A1").Value & myrow & ",Input!$" & Range("A1").Value & ":$" & Range("A2").Value & "," & Range("A3").Value & ",FALSE)"
Next myrow
End Sub
ActiveSheet
上的值:
立即窗口返回: