excel如何提取单元格内多行文字中包含某关键字的整行文字?

例如:
A1:含3行,分别是 钳子,规格10cm,数量1个
螺丝刀,规格15cm,数量3个
螺丝,规格1cm,数量10个

A2:含2行,分别是 螺丝,规格2cm,数量8个
钳子,规格10cm,数量2个
想要实现的是:能够提取含关键字“螺丝”的这一行,填入B列,B1内容为“螺丝,规格1cm,数量10个”,B2内容为“螺丝,规格2cm,数量8个”
是一个单元格里面有好几行文字,只需要含关键字的那一行。而且同一列的每一个单元格都都含有几行文字,其中有一行文字包含这个关键字,所以筛选是筛不出来的。手工复制粘贴也不现实,表格的总行数可能会有上千行。
求哪位大神能解答!感谢!

如图:

在B1放上要找的关键字,比如 钳子

在C1输入公式:

=MID(A1,FIND($B$1&",",A1),FIND(CHAR(10),SUBSTITUTE(A1,MID(A1,1,FIND($B$1&",",A1)-1),"")&CHAR(10))-1)

下拉即可

附件可参考,提问者下载不需要财富值

追问

非常感谢!可能是我这边还有问题,你提供的样表能实现,但我在原始表格里用你这个方法还是“#VALUE!”。采纳的那个倒是在原始表格也能实现。我先把任务完成,再回头试试你的方法。

追答

呵呵,你采纳的,要求有“个”这个文字,可是,的确每行都有吗?而且,都是最后的一个字吗?不见得吧。。
我的表格是一个举例,其中的关键字使用了单元格引用$B$1,意思是查找$B$1单元格中定义的关键字,你如果准备直接写关键字在公式中,只要把两个$B$1改为“螺丝”就可以了,不过这样一来如果你要找的是钳子,就要改公式而不是直接改B1单元格了。

追问

我发现问题了。原始表格中是英文逗号。我的举例里用了中文逗号,所以你给的公式里也是中文逗号。太感谢了!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-01-30
B1输入:
=MID(A1,FIND("螺丝,",A1),FIND("个",A1,FIND("螺丝,",A1))-FIND("螺丝,",A1)+1)

注意下螺丝后面的逗号,看来原来像是中文逗号。

另外,如果不是每个单元格都有,防止出现错误值:
07版后用:
=IFERROR(MID(A1,FIND("螺丝,",A1),FIND("个",A1,FIND("螺丝,",A1))-FIND("螺丝,",A1)+1),"")
所有版本通用:
=IF(ISERROR(MID(A1,FIND("螺丝,",A1),FIND("个",A1,FIND("螺丝,",A1))-FIND("螺丝,",A1)+1)),"",MID(A1,FIND("螺丝,",A1),FIND("个",A1,FIND("螺丝,",A1))-FIND("螺丝,",A1)+1))本回答被提问者采纳
第2个回答  2015-01-30
=MID(MID(A1,FIND("螺丝,",A1),99),1,FIND("个",MID(A1,FIND("螺丝,",A1),99)))
留意一下公式中”螺丝,“后的逗是全角还是半角,需改成和你数据中的一样。追问

非常感谢!

相似回答