我的B栏有成本中心代码,D栏有部门。我需要做一个vlookup来填写相关成本中心代码的部门名称。
目前的代码是这样的: Dim MyStringVar1 = Application.Vlookup(范围(" B7"),_ 工作表(" VLOOKUP表")。范围(" A2:B1000"),2,True)
但是,我不想只为D7做vlookup而是整个列。我的范围不固定(B列可能有100或200个,具体取决于项目数量。)
如何应用整个列的公式?而不仅仅是D7
答案 0 :(得分:1)
我们假设您要添加公式=VLOOKUP(B2,'VLOOKUP Table'!A$2:B$1000,2,TRUE)
范围D3:D10,其中' B2'将在每行之后递增,然后代码将是:
Range("D3:D10").Formula= "=VLOOKUP(B2,'VLOOKUP Table'!A$2:B$1000,2,TRUE)"
答案 1 :(得分:1)
Dim This As Worksheet
Set This = ThisWorkbook.Sheets(1)
This.Activate
This.Range("D7", Range("A2").End(xlDown).Offset(0, 3)).Formula = "=VLOOKUP(B2,[INSERT SHEET]!$A:$D,2,FALSE)"
如果数据位于sheet2中,则只需在sheet2
中插入[INSERT SHEET]
即可。如果名称是sheet2或其他名称,则无关紧要,只需将其命名为sheet2
答案 2 :(得分:0)
您可以在R1C1公式中使用相对引用,然后将其粘贴到目标范围,您需要先找到目标范围,可能使用类似.end(xldown).row
的内容。有关一般概念的参考,请参阅此内容:
http://macromatician.blogspot.co.uk/2013/02/how-to-add-formula-to-worksheet-range.html