在 Excel 中,Search函数用于查找指定文本在查找文本的文本中的位置,SearchB函数与Search函数的功能一样,但它们有区别情欲印象写真,Search函数把全角(如“汉字”)和半角(如“数字和字母”)字符王人计作一个字符,而SearchB函数把全角字符计作两个字节、半角字符计作一个字节。另外,Search函数和SearchB函数与Find函数和FindB函数的区别为:前两个忽略大小写且允许使用通配符无极查找,后两个永别大小写且不允许使用通配符。
Search函数和SearchB函数可与 Mid、Sum、Index、Match、IsNumber 和 Count 等函数组合使用,举例 Mid + Search(或 SearchB)组合杀青截取指定字符串,Count + Search函数组合杀青统计一列中包含指定文本的单位格数,Sum + IsNumber + Search函数组合杀青一次查找多个值,Index + Match + IsNumber + Search函数组合杀青复返两列匹配的对应单位格。
一、Excel Search函数和SearchB函数的语法1、Search函数抒发式:SEARCH(Find_Text, Within_Text, [Start_Num])
中语抒发式:SEARCH(查找文本, 要查找文本的文本, [查找运转位置])
2、SearchB函数抒发式:SEARCHB(Find_Text, Within_Text, [Start_Num])
中语抒发式:SEARCHB(查找文本, 要查找文本的文本, [查找运转位置])
3、证实:
A、Search函数把每个字符王人计作一个字节,不管是半角字符(如“数字或字母”)如故全角字符(如“汉字”;SearchB函数把半角字符计作 1 个字节、全角字符计作 2 个字节。Search函数和SearchB函数王人忽略大小写,还不错使用通配符问号(?)或星号(*);而Find函数和FindB函数要求永别大小写且不可使用通配符,这亦然它们的区别。
B、不错在 Find_Text 中使用通配符问号(?)或星号(*),问号暗示随性一个字符,星号暗示随性一个或多个字符;若是要查找通配符,需要在它们前边加转义字符 ~,则查找问号暗示为 ~?、查找星号暗示为 ~*。
C、若是查找空文本 (""),则复返第一个字符的位置 1。
D、Start_Num 为可选项,若是不祥,则从第 1 个字符运转查找;若是 Start_Num 小于等于 0 或大于等于 Within_Text 的长度,Search 与 SearchB 王人复返值不实 #VALUE!。
E、若是在 Within_Text 中莫得找到查找文本,也复返值不实 #VALUE!。
二、Excel Search函数的使用秩序及实例(一)查找单词或词组的实例
1、选中 B1 单位格,输入公式 =SEARCH("tutolail",A1),按回车,复返 16;选中 B2,输入公式 SEARCH("教程",A2),按回车,也复返16;操作经由门径,如图1所示:
图片
图
2、公式证实:
A、公式 =SEARCH("tutolail",A1) 中,单词 tutolail 为查找文本,A1 为查找文本的文本,公式的有趣有趣是:在 A1 中查找 tutolail 并复返 tutolail 的第一个字母 t 在 A1 中的位置。
B、公式 =SEARCH("教程",A2) 的有趣有趣是:在 A2 中查找“教程”并复返“教程”的第一个字“教”在 A2 中的位置;两个公式王人复返 16,且查找文本前王人为 15 个字符,而 A1 中 tutolail 前全为字母,A2 中“教程”前有字母、数字和汉字,证实 Search函数把字母、数字和汉字王人算一个字符。
(二)使用通配符 ? 和 * 的实例
(1)使用 *
1、假如要在 Excel function option tutolail 查找 option。双击 B1 单位格,把公式 =SEARCH("o*n",A1) 复制到 B1,按回车,复返13;双击 B1,把 o*n 改 op*n,按回车,复返 16;操作经由门径,如图2所示:
图片
图2
2、公式证实:
公式 =SEARCH("o*n",A1) 中的查找文本 n*o 有一个星号,有趣有趣是找以 n 起原且以 o 结果的字符串,而 Excel function option tutolail 中,至少有三处允洽条目,即 on、option 和 on option,而复返 13 是 on 的位置,因此要查找 option,必须在 o*n 的 o 后再加p。
(2)使用 ?
1、一样以在 Excel function option tutolail 中查找 option 为例。双击 B1 单位格,把公式 =SEARCH("o????n",A1) 复制到 B1,按回车,复返 16;操作经由门径,如图3所示:
图片
清纯诱惑图3
2、公式证实:
公式 =SEARCH("o????n",A1) 中的查找文本 o????n 有四个问号,每个问号代表一个字符,有趣有趣是查找以 n 起原且以 o 结果况且 n 与 o 之间惟一四个字符的字符串,是以刚巧复返单词 option 在 A1 中的位置。
(三)查找空文本("")和空格(" ")的实例
1、双击 B1 单位格,把公式 =SEARCH("",A1) 复制到 B1,按回车,复返 1;再次双击 B1,把鼠标定位到双引号 "" 中,按一下空格键,在双引号中加一个空格,按回车,复返 6;操作经由门径,如图4所示:
图片
图4
2、公式 =SEARCH("",A1) 查找空文本(""),Search函数默许复返第 1 个字符的位置 1;公式 =Search(" ",A1) 查找空格情欲印象写真,返“Excel function option tutolail”中的第 1 个空格的位置 6。
(四)查找半角双引号(")与全角双引号(“”)的实例
1、双击 B1 单位格,把公式 =SEARCH("""",A1) 复制到 B1,按回车,复返 7;双击 B2,输入公式 =SEARCH("“",A2),按回车,复返 12;再次双击 B2,把 “ 改为 ”,按回车,复返 15;操作经由门径,如图5所示:
图片
图5
2、公式证实:
A、公式 =SEARCH("""",A1) 查找半角双引号 ",值得注主见是,必须输入两个半角双引号,这么复返的位置仍然是第一个双引号的位置。
B、公式 =SEARCH("“",A2) 查找左边的全角双引号,查找右边的全角双引号,只需把 “ 改为 ”,但要审视,Excel 的默许字体不会闪现全角双引号,需要把字体成立为中笔墨体(如“宋体”)才会闪现。
(五)运转查找位置不在界限内导致 #VALUE! 不实的实例
1、双击 B1 单位格,把公式 =SEARCH("基础",A1,0) 复制到 B1,按回车,复返值不实 #VALUE!;双击 B1,将 0 改为 1,按回车,复返14;再次双击 B1,将 1 改为 17,按回车,复返 #VALUE!;操作经由门径,如图6所示:
图片
图6
2、公式证实:
A、公式 =SEARCH("基础",A1,0) 中的 0 暗示从第 0 个字符运转查找,但Search函数要求至少要从第 1 个字符运转查找,因此复返不实;把 0 改为 1 后,立即复返“基础”在 A1 中的正确位置。
B、公式 =SEARCH("基础",A1,17) 从第 17 个字符运转查找,但 A1 中的字符惟一 16 个,是以复返不实。
(六)查找不到文本复返不实及处治秩序实例
1、双击 B1 单位格,把公式 =SEARCH("3",A1) 复制到 B1,按回车,复返值不实 #VALUE!;再次双击 B1,把公式改为 =IFERROR(SEARCH("3",A1),"未找到"),按回车,复返“未找到”;操作经由门径,如图7所示:
图片
图7
2、公式证实:
A、公式 =SEARCH("3",A1) 要在“Excel 2016 函数基础教程”中查找 3,但莫得找到,是以复返值不实。
B、在公式 =IFERROR(SEARCH("3",A1),"未找到") 中,IfError函数用于 SEARCH("3",A1) 实施出错时的处治,若是 SEARCH("3",A1) 复返不实,则 IfError 复返“未找到”,不然复返 SEARCH("3",A1) 的复返值。
三、Excel SearchB函数的使用秩序及实例(一)使用通配符星号 * 的实例
1、双击 B1 单位格,把公式 =SEARCHB("o*n",A1) 复制到 B1,按回车,复返 13;再次双击 B1,在 A1 后输入“,14”,按回车,复返16;操作经由门径,如图8所示:
图片
图8
2、公式证实:
A、公式 =SEARCHB("o*n",A1) 中,查找文本 o*n 使用了 *,暗示查找以 o 起原且以 n 结果的字符串,复返值为 13 ,是 A1 中 on 的位置。
B、公式 =SEARCHB("o*n",A1,14) 一样是查找 o*n,但从第 14 个字符运转查找,因此复返单词 option 的位置 16。
(二)使用通配符问号 ? 的实例
1、双击 B1 单位格,把公式 =SEARCHB("o????n",A1) 复制到 B1,按回车,复返 16;双击 B2,把公式 =SEARCHB("函????????程",A2) 复制到 B2,按回车,复返 12;作经由门径,如图9所示:
图片
图9
2、公式证实:
A、公式 =SEARCHB("o????n",A1) 的查找文本 o????n 中使用了四个问号 ?,每个问号代表一个字符,有趣有趣是:在 A1 中查找以 o 起原且以 n 结果况且 o 与 n 之间只可有四个字符的字符串。
B、公式 =SEARCHB("函????????程",A2) 的查找文本“函????????程”中,“函与程”之间有八个问号,每个问号代表一个字节(即一个半角字符),由于“函与程”之间有四个字汉字,每个汉字占两个字节,因此四个汉字要八个问号。
四、Excel Search函数和SearchB函数的利用实例(一)Mid + Search函数组合杀青截取指定字符串
1、假如要从“Excel function Excel 2016 函数基础教程 option tutolail”中截取“Excel 2016 函数基础教程”。双击 A2 单位格,把公式 =MID(A1,SEARCH("e*l",A1,5),SEARCH("程",A1)-SEARCH("e*l",A1,5)+1) 复制到 A2,按回车,复返“Excel 2016 函数基础教程”;操作经由门径,如图10所示:
图片
图10
2、公式=MID(A1,SEARCH("e*l",A1,5),SEARCH("程",A1)-SEARCH("e*l",A1,5)+1)证实:
A、SEARCH("e*l",A1,5) 用于从 A1 中第 5 个字符运转查找以 e 起原且以 l 结果的单词,即截取要查找字符串的起原单词 Excel,由于在此单词之前如故有一个 Excel,因此要从第 5 个字符运转以跳过第一个 Excel;SEARCH("e*l",A1,5) 的复返值为 16。
B、SEARCH("程",A1) 用于复返要截取字符串的终末一个字“程”字在 A1 中的位置,恶果为 32;SEARCH("程",A1)-SEARCH("e*l",A1,5)+1 用于狡计要截字符串的长度,代入值为 32 - 16 + 1 = 17,若是仅用 32 - 16,截得的字符串会少一个,是以要加 1。
C、则公式变为 =MID(A1,16,17),终末从 A1 中从第 16 个字符运转截取 17 个字符,即截得“Excel 2016 函数基础教程”。
教导:MidB + SearchB 也不错杀青一样功能,公式不错这么写:=MIDB(A1,SEARCHB("e*l",A1,5),SEARCHB("程",A1)-SEARCHB("e*l",A1,5)+LENB("程")),由于每个汉字占两个字节,因尔背面要加 2,即 LENB("程")。
(二)Count + Search函数组合杀青统计一列中包含指定文本的单位格数
1、假如要统计 A 列中包含指定字符的单位格个数。双击 A11 单位格,把公式 =COUNT(SEARCH("*"&C2&"*",A$2:A$10)) 复制到 A11,按Ctrl + Shift + 回车,复返 4;操作经由门径,如图11所示:
图片
图11
2、公式=COUNT(SEARCH("*"&C2&"*",A$2:A$10)) 证实:
A、"*"&C2&"*" 暗示查找中间包含 C2 且双方为随性字符的文本,* 也不错暗示空文本(即 "")。
B、A$2 是对列的相对援用对行的完全援用,2 前的 $ 暗示完全援用,即往下拖时,A2 不会变 A3、A4 等;A$2:A$10 以数组面目复返 A2 至 A10 中的系数值。
C、SEARCH("*"&C2&"*",A$2:A$10) 实施时,"*"&C2&"*" 变为 "*衬衫*";接着,第一次从 A2 至 A10 中取出 A2,然后在 A2 中查找 "*衬衫*",由于找到了,因此复返 1;第二次取出 A3,莫得找到 "*衬衫*",是以复返值不实 #VALUE!;其它的依此类推,终末复返数组 {1;#VALUE!;#VALUE!;1;#VALUE!;1;#VALUE!;#VALUE!;1}。
D、则公式变为 =COUNT({1;#VALUE!;#VALUE!;1;#VALUE!;1;#VALUE!;#VALUE!;1}),终末统计数组中的元素个数,由于 #VALUE! 不统计,是以统计恶果为 4。
(三)Sum + IsNumber + Search函数组合杀青一次查找多个值
1、假如要一次同期查找 4 个值。双击 A2 单位格,把公式 =SUM(ISNUMBER(SEARCH({"excel","函数",2016,2019},A1))*1) 复制到 A2,按回车,复返查找恶果 3;操作经由门径,如图12所示:
图片
图12
2、公式=SUM(ISNUMBER(SEARCH({"excel","函数",2016,2019},A1))*1) 证实:
A、SEARCH({"excel","函数",2016,2019},A1) 的找查找文本是一个包含 4 个元素的数组,即要在 A1 中查找 4 个值;实施时,第一次从数组中取第一个元素 excel,接着在 A1 中查找,复返恶果为 1;第二次从数组中取第二个元素“函数”,也在 A1 中查找,恶果为 27;其它的依此类推,终末复返 {1,27,22,#VALUE!},因在 A1 中找不到 2019,因此复返 #VALUE!。
B、则公式变为 =SUM(ISNUMBER({1,27,22,#VALUE!})*1),接着,用 IsNumber 查验数组中的元素是否为数字,若是是,复返 True,不然复返 False;则公式变为 =SUM({TRUE,TRUE,TRUE,FALSE}*1),进一步狡计用数组中的每个元素与 1 相乘,相乘时,True 转为 1、False 转为 0,则公式变为 =SUM({1,1,1,0}),终末把数组中的每个元素相加,恶果为 3。
(四)Index + Match + IsNumber + Search函数组合杀青复返两列匹配的对应单位格
1、若是 A 列的“货号”中含有 B 列“批次”,则复返对应的“数目”。双击 D2 单位格,把公式 =INDEX(C$2:C$8,MATCH(1=1,ISNUMBER(SEARCH(B$2:B$8,A2)),)) 复制到 D2,按回车,复返 870;选中 D2,把鼠标移到 D2 右下角的单位格填充柄上,鼠标变为加号后,按住左键然后往下拖,则复返剩余的“数目”;操作经由门径,如图13所示:
图片
图3
2、公式=INDEX(C$2:C$8,MATCH(1=1,ISNUMBER(SEARCH(B$2:B$8,A2)),)) 证实:
A、B$2:B$8 以数组面目复返 B2 至 B8 中的值,即 {"A";"B";"C";"D";"E";"F";"G"};则 SEARCH(B$2:B$8,A2) 变为 SEARCH({"A";"B";"C";"D";"E";"F";"G"},A2),接着从数组中取出每个元素,然后在 A2 中查找,若是找到复返 1,不然复返 #VALUE!;终末复返 {#VALUE!;#VALUE!;#VALUE!;1;#VALUE!;#VALUE!;#VALUE!}。
B、则 ISNUMBER(SEARCH(B$2:B$8,A2)) 变为 ISNUMBER({#VALUE!;#VALUE!;#VALUE!;1;#VALUE!;#VALUE!;#VALUE!}),进一步狡计,用 IsNumber 判断数组的每个元素,若是是数字的复返 True,不然复返 False;终末复返 {FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE}。
C、1=1 用于复返 True,因为 IsNumber 复返的数组元素等于 True 和 False,这么便于判断。
D、则 MATCH(1=1,ISNUMBER(SEARCH(B$2:B$8,A2)),) 变为 MATCH(TRUE,{FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE},),接着,在数组中查找 True,找到后复返它在数组中的位置,终末复返 4。
E、则公式变为 =INDEX(C$2:C$8,4)情欲印象写真,终末用Index函数复返 C2 至 C8 中第四行的值,即复返 870。
本站仅提供存储办事,系数执行均由用户发布,如发现存害或侵权执行,请点击举报。