我正在设置一个vlookup来从工作簿中的另一个工作表中提取产品价格。该代码适用于单元格,但是当我尝试将代码扩展或复制并将代码传递到下一行时,它会自动更改数据table_array值。
= VLOOKUP(B5,价格1:65536,3)
在代码中我想要第一个值,B5与它所在的行一起缩放,但是第二个值需要保持不变。我该怎么做呢?还有一种方法,如果没有有效的部件号,我可以让单元格保持空白而不是显示N / A吗?
感谢您的帮助!
答案 0 :(得分:3)
=VLOOKUP(B5,Prices!$1:$65536,3)
$
锁定范围。
例如。
$A1
会将列锁定到A
位置。A$1
将锁定行$A$1
将锁定列和行。答案 1 :(得分:1)
我无法评论,因为我没有足够的代表,但这将修复user3716271
的公式:
=IF(ISERROR(VLOOKUP(B5,Prices!$1:$65536,3)),"", VLOOKUP(B5,Prices!$1:$65536,3))
下面的公式也应该解决这两个问题,更紧凑一点,少用一个VLOOKUP()
:
=IFERROR(VLOOKUP(B5,Prices!$1:$65536,3), "")
正如guitarthrower
所说,数字之前的$
用于锁定范围。
答案 2 :(得分:0)
对于第二部分,IF公式将正常工作:
=IF(ISERROR(VLOOKUP(B5,Prices!1:65536,3)),"",VLOOKUP(B5,Prices!1:65536,3)),"")
如果我理解正确,你尝试设置绝对值的第一部分?类似的东西:
=IF(ISERROR(VLOOKUP(B$5,Prices!1:65536,3)),"",VLOOKUP(B5,Prices!1:65536,3)),"")