在excle中的某列数据按关键字搜索出来,并以行为单位提取出来可复制到另一张表中,如图所示,表中以

2025-03-23 03:46:50
推荐回答(2个)
回答1:

为楼主设计一个模拟表格,里面的数据暂时不多

楼主在H1输入搜索的姓(注意设计了可以输入复姓),在I列会搜索出所有H1的姓的人,在JKL列会自动列出这些人的其他数据

I1公式:

=OFFSET(B$1,SMALL(IF(LEFT(B$1:B$100,LEN(H$1))=H$1,ROW(B$1:B$100)-1,65535),ROW()),)&""

注意是数组公式,需要按Ctrl+Shift+Enter三键结束公式输入(这时公式两旁会出现一对花括号,如图所示)

J1公式:

=IF($I1="","",VLOOKUP($I1,$B$1:$F$12,COLUMN(B1),))

J列公式可以右拉

然后IJKL一起下拉足够长

附件可以下载参考


回答2:

参考下这个试试并没有测试:
(内容来源于网络http://zhidao.baidu.com/question/38723672.html?fr=ala&word=excel%E5%8F%96%E7%AC%AC%E4%B8%80%E4%B8%AA%E5%AD%97%E7%AC%A6&device=mobile&ssid=76bac780c78042448357&from=1012852z&uid=0&pu=usm@1,sz@1320_1004,ta@iphone_2_6.0_11_2.1&bd_page_type=1&baiduid=4BF2D2EFF0E3594FF47DB9716A44B38A&tj=zhidao_1_0_10_l1)
主要用下面三个函数就可以解决。 
第一个是right:提取字符串右边的若干个字符。 
第二个是leftb:指定返回文本串中的第一个或前几个字符。 
公式就是leftb(b3,6))代表的意思是将b3单元格内的字符串取前6位。(right(b2,4))代表将b2单元格内的字符串取右边4位。