今天逛ExcelHome论坛的时候,发现一个关于vlookup函数匹配不出数据的帖子。
提问者想通过订单号 匹配收入 sheet里的收入以确认订单金额是否入账,结果发现并不能匹配出结果。
笔者看见后有以下想法:
- 订单sheet B2的订单编号在收入sheet A列里是否存在,验证后确认是存在的;
- 两个sheet里的订单号列的格式是否一致(比如一个是数字,一个是文本),验证后发现同为文本格式;
- 两个sheet里的订单号列是否存在空格,通过LEN()函数发现 订单sheet里的订单编号是18位数,而 收入sheet里的订单号列是19位数,所以对 收入sheet里的A列使用TRIM()函数尝试去除空格,但是使用后发现依然是19位数;
- 所以多出来的1位数到底是个啥???经大佬提点后得知多出来的是一个水平制表符(Tab),将公式改为VLOOKUP(B2&CHAR(9),收入!A:D,4,0)就能正确将数据匹配出来啦
- 这次是水平制表符(Tab),指不定下次蹦出个什么看不出来的妖魔鬼怪,所以有一个更为通用的公式VLOOKUP(B2&"*",收入!A:D,4,0)
文中提到的数据源:
链接:https://pan.baidu.com/s/1OW5ZHXufL51NgKl2hjv0CQ
提取码:mf8a