activecell.formula与RC表示法和vlookup不工作vba

问题描述 投票:0回答:1

我有这个代码,我无法使用RC表示法

ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[1],ARTICULOS!$A:$I,4,FALSE)"

我正在寻找的值是“activecell”之后的1列。

excel vba excel-vba vlookup excel-r1c1-notation
1个回答
-1
投票

正如@Scott指出的那样,你不能混合R1C1和A1表示法。

无论你想要做什么,可能有一种更有效的方法来实现它,但是现在,这应该给出大致你想要的结果:一个VLOOKUP公式,其中lookup_value是在右边一个单元格中的任何一个ActiveCell

ActiveCell.Formula = "=VLOOKUP(INDIRECT(ADDRESS(ROW(),COLUMN()+1)),ARTICULOS!$A:$D,4,FALSE)"

请注意,我还将lookup_range更改为停止在列D上,因为如果您正在查看以A开头的第4列,那么D将是最后需要的列。

另请注意,我删除了R1C1,因为这里不需要它。

使用INDIRECT(ADDRESS(ROW(),COLUMN()+1))可能还有一个更好的方法,但我现在想不到它,这种方式也有效。


更多信息:

© www.soinside.com 2019 - 2024. All rights reserved.