如何将我的VLOOKUP Excel命令传播到多行?

时间:2016-08-19 19:17:49

标签: excel vlookup

对于Sheet1中的第D列第3行,我的VLOOKUP命令是这样的:

=VLOOKUP(Sheet1!C3, ABBREV!B2:BA8791, 2, FALSE)

我搜索了Sheet1!C3'在' ABBREV!B2:BA8791'的第一列中,如果有完全匹配,我会在列' 2'中返回一个值。

以上适用于所选单元格D3。但是如何将它传播到它下面的更多细胞(~10000),只在C3处快速改变公式?即对于D4,我只需要在上面的公式中将C3改为C4。拖动单元格的角落不起作用。选择我要填充的所有单元格并输入ctrl + Enter会更改C3中的范围以及公式中ABBREV中的范围。使用ctrl + Shft + Enter不会将C3更改为C4。

1 个答案:

答案 0 :(得分:0)

正如pnuts所说,你应该为源表使用静态地址,将代码改为

=VLOOKUP(Sheet1!C3, ABBREV!$B$2:$BA$8791, 2, FALSE)

当Excel复制公式时,它会更改地址以最好地表示您的需求,但更改您正在查看的源表会在某些早期查找中出错,您已将ABBREV更改为!B2:BA8791到ABBREV! $ B $ 2:$ $ BA第8791

使用ABBREV!B:BA没有建议,因为我们不知道在ABBREV表中,您只有一个或多个表,这可能会导致错误的结果。

在每个ROW或COLUMN之前使用$告诉excel不要自动更改此ROW或COLUMN。例如,您可以在代码中使用$ C3来告诉excel如果行更改则更改3,但如果列更改则不要更改C。诅咒现在没必要,我用它作为例子。