excel中B列查找A列的包含的字符

现在A列有合肥,南京,杭州等所有县市,但是没有省。B列有所有省市县连在一起,例如安徽省合肥市,江苏省南京市,浙江省杭州市等等。现在找出B列包含的A列中相同的数值,如果找到了就返回B列的省。例如A列合肥,B列安徽省合肥市,找到了合肥,就返回安徽省。找到了南京,就返回江苏省。分不多,谢谢了。

具体操作方法如下:

假设A、B列中数据如下图

B列中有两个字符也在A列中,需要找出是哪个字符,我们可以借助C列,在C1输入公式如下:=IF((COUNTIF($A$1:$A$5,B1)>0),B1," "),如下图:

这样就得到d和a是包含在A列。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-09-06
C1单元格输入公式,然后下拉填充.测试通过
$B$1:$B$1000替换为实际单元格区域,注意要绝对引用

=IF(ISERROR(LEFT(INDIRECT("B" &MATCH("*"&A1&"*",$B$1:$B$1000,0)),FIND(A1,INDIRECT("B" &MATCH("*"&A1&"*",$B$1:$B$1000,0)))-1)),"",LEFT(INDIRECT("B" &MATCH("*"&A1&"*",$B$1:$B$1000,0)),FIND(A1,INDIRECT("B" &MATCH("*"&A1&"*",$B$1:$B$1000,0)))-1))追问

完美的大神解答。就是A列北京市上海市等直辖市,B列还是北京市三个字,那就读不到。我就在北京市后面加上北京市北京市。还是读不到,我就改为了北京直北京市。就读到了北京直(直辖)。感谢大神。这是我第一个问问,就得到如此清晰的亲测的回答。

追答

感觉眼前一黑....

第2个回答  推荐于2016-06-23
在C1输入:
=IF(COUNTIF(B:B,"*"&A1&"*"),LEFT(INDEX(B:B,MATCH(,0/FIND(A1,B$1:B$100),),),LOOKUP(9E+307,FIND(A1,B$1:B$100))-1),"")
数组公式,按CTRL+SHIFT+回车结束
下拉填充
(若记录较多,可把公式中的100改成1000或更大数值)本回答被提问者采纳
相似回答