文本查找函数SEARCHB,不仅能处理有规律的数据,还可以搭配通配符,快速查找没有规律的复杂数据,日常工作中绝对是一个好帮手。今天我们来了解一下吧。
函数作用:查找指定字符串的起始位置,不区分大小写,可以使用通配符。
语法结构:SEARCHB(find_text,within_text,start_num)。可以理解为:找什么,在哪找,从第几位开始找。
查找类型:按字节查找。
计算规则:汉字、中文符号为2个字节,数字、字母、英文符号为1个字节。
假设B2单元格的文本是“Excel函数公式”,通过SEARCHB函数可以查找“公”所在的位置,输入公式=SEARCHB("公",B2),就会算出“公”在第10位,返回的结果为10。
那么在实际工作,我们可以如何用这个函数呢?
如下图,这是工作中常见的物品数据,B列是物料描述数据,现在需要把表格当中的零件号提取出来,即需要把表格当中的数字和字母提取出来。
观察上图能够发现,汉字和字母混合在一起,每个单元格的格式也都不一样,这就需要用SEARCHB函数进行查找。
首先,需要找到第一个单字节的位置。我们可以使用通配符?来进行查找,它表示匹配任意单个字节,即D2=SEARCHB("?",B2),如下图:
按住鼠标向下填充后,结果如下:
其次,需要计算单字节的个数。我们可以利用LEN和LENB函数来求出零件号的长度。即E2=LEN(B2)*2-LENB(B2),这两个函数之前的文章中讲到过,在此就不赘述了。
结果如下图:
然后,利用MIDB函数来截取字符串。即F2=MIDB(B2,D2,E2),如下图:
最后,将MIDB中的D2和E2替换成上述公式,即C2=MIDB(B2,SEARCHB("?",B2),LEN(B2)*2-LENB(B2)),就可以了,结果如下:
在这里为了方便理解,我们用了3个辅助列,后面如果熟练了的话,就可以在MIDB函数中直接嵌套了。
是不是很方便?赶紧试试哦~~