Excel查找一个字符串在另一个字符串的位置

A列的字符串包含于B列,但不等于B列,比B列短,想输出A列某个字符串在对应的B列字符串的位置,也就是这个图片中C列输出4,5。应该用什么函数组合实现,countif能判断是否存在,但没有位置,match必须是完全匹配才行,这两个我想不到组合方式

1、首先,我们打开我们的电脑,然后我们打开我们电脑上面的一个excel,之后我们点击图示中的那个下拉箭头;

2、弹出的界面,我们只查找1月4日的数据,所以我们只点击选中1月4日的;

3、然后我们就可以点击确定了;

4、结果如图所示,这样我们就查找到1月4日的相关数据了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-03-20

使用FIND函数,嵌套SUBSTITUTE函数实现。

首先假设表格如下图所示,要查找A1单元格中“知道”在该字符串中第二次出现的位置

步骤如下:

在B2单元格中输入公式”=FIND("@",SUBSTITUTE(A1,"与","@",2))“(其中@可替换成任何原文本中没有的字符),回车即可。

函数功能解析:

(1)SUBSTITUTE函数:

①函数功能:将某字符串中在指定位置出现的指定字符替换成自定义的字符。

②语法:SUBSTITUTE(text,old_text,new_text,instance_num)

text                       是需要替换其中字符的文本,或是含有文本的单元格引用;

old_text                 是需要替换的旧文本;

new_text               用于替换old_text 的文本;

instance_num        为一数值,用来指定以new_text 替换第几次出现的old_text;如果指定了instance_num,则只有满足要求的old_text 被替换;否则将用new_text 替换Text 中出现的所有old_text。

(2)FIND函数

①函数功能:查找指定字符在字符串中出现的位置。

②语法: FINDB(find_text,within_text,start_num)Find_text        是要查找的文本。Within_text     是包含要查找文本的文本。Start_num      指定开始进行查找的字符。within_text 中的首字符是编号为 1 的字符。

如果忽略 start_num,则假设其为 1。

(3)本例解析

首先利用SUBSTITUTE函数将字符串中要查找的指定字符第二次出现时的字符替代成特殊字符(本例中采用”@“),然后利用FIND函数查找”@“出现的位置,即为原来字符串中指定字符第二次出现的位置。

本回答被网友采纳
第2个回答  2018-03-20

在B1输入公式:

=MATCH("*"&A1&"*",B:B,)

向下填充,见下图:

第3个回答  2018-03-20
C1输入=if(isnumber(find($A$1,B1)),row(B1),""),然后把公式粘下来就可以了
第4个回答  2018-03-20
=if(count(match("*"&a1&"*",b:b,0)),match("*"&a1&"*",b:b,0),"")
相似回答