vlookup函数找不到存在的目标值原因:数据格式问题。
当采用8@200类似的格式作为输入时,用vlookup函数基本无法返回正确值。
解决方案:处理数据。
在要寻找的表格中增加一列,格式为文本。
A | B | C | D | E | |
1 | 8200 | 8@200 | 8 | 200 | 252 |
2 | 10150 | 10@150 | 10 | 150 | 523 |
C1公式:LEFT(B1,FIND("@",B1)-1),即截取字符串B1中@字符以前的字符串,返回8,格式为文本。
D1公式:RIGHT(B1,3),返回200,即截取字符串B1最后3位,格式为文本。
A1公式,C1&D1,即将两个字符串连接,格式为文本。
当写vlookup函数时,若在G1输入10@150,则函数写为:
VLOOKUP(LEFT(G1,FIND("@",G1)-1)&RIGHT(G1,3),A:E,5,FALSE),精确查找,返回值为523。
“--”是EXCEL中将格式转为数字的一种方式,一般因为-(负号)运算级优先,--负负得正。
使用MATCH函数,COLUMN函数搭配VLOOKUP可以减少人工指定数据列的工作。