如何从一个多数据单元格中查找需要的对应字符段,查找匹配后并将其对应的行某一列数据提取出来?

将表格2中的成本按照表1中的数据匹配显示出来。比如: 我需要知道表2中SKU text22的成本,按照表1 可以得知为13

第1个回答  2020-10-09

E3输入

=INDEX(B:B,MATCH(1,--ISNUMBER(FIND(D3,A:A)),0))

Ctrl+Shift+回车

追问

我是不是哪里操作错误了,提示我错误

追答

Ctrl+Shift+回车 请认真看我回答的内容

追问

可以了,谢谢,遇到了一个问题,我的表格1第10行的虚拟SKU“BYS”和第3行的"BYS1",差了一个数字,匹配后在表2中第17行的BYS在进行匹配的时候就按照BYS1的成本给我统计了,我该如何修改呢,让搜索的字符完全一样

追答

这个写公式就很复杂了,建议分列处理表1,后可以使用简单的vlookup函数匹配。

第2个回答  2020-10-09
E3:=VLOOKUP("*"&D3&"*",A:B,2,)
下拉追问

可以了,遇到了一个问题,我的表格1第10行的虚拟SKU“BYS”和第3行的"BYS1",差了一个数字,匹配后在表2中第17行的BYS在进行匹配的时候就按照BYS1的成本给我统计了,我该如何修改呢,让搜索的字符完全一样

追答

如果是这样的话,那就没办法处理了。
出错的原因是:
查找BYS,系统是从上往下查找,BYS1在上面的单元格,BYS1又包含了BYS,所以是结果是BSY1对应的成本。
给你一个建议:
一般来说,表1的设计应该唯一对应,即一个"虚拟SKU"对应一个"成本"。简单比喻就是超市的货物,每一样物品都对应一个价格,而不是将价格相同的物品归成一类,然后再要去从这一大格中模糊地查找出它来。
就如你表2的排版模式,这样查询就可以用精确查询,而不是模糊查询。那么公式就可以修改成:VLOOKUP(D3,A:B,2,)。

本回答被提问者采纳