excel如何提取第二个字母是i的单词?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了excel如何提取第二个字母是i的单词?相关的知识,希望对你有一定的参考价值。
excel如何提取第二个字母是i的单词?如图一串单词,如何提取第二个字母是i的单词,同时要求:开头不能是dis,第三个字母不能是r,l,n。如图只有pig,sight符合条件。
本问题用公式有点麻烦,最麻烦的是第3个条件,即第3个字母不能是r,l,n,这是或的关系,而Excel一用或就难以将结果分别对应到各行了。
比较简单的方法是用高级筛选法:
1. 先在第1行插入一个标题行(这是Excel进行筛选的先决条件——必须要有一个标题行)
2. 在右侧空3个空列中第2行中分别写入3个条件(一定要在条件上至少留一行空行——相当于对应标题行),如图:
C2=MID(A2,2,1)="i"
D2=LEFT(A2,3)<>"dis"
E2=NOT(OR(MID(A2,3,1)="r","l","n"))
因为3个条件是并的关系,所以要并排写在3列中。
3. 光标定位到A列数据区域,数据选项卡——排序和筛选——高级,弹出高级筛选对话框,
一般会自动选择数据区域,如果没有选择正确,可手动选择,筛选条件:选择C1:E2,这里一定要连带上面的空行一起选择——相当于对应于标题行,勾选“将筛选结果复制到其他位置”,再选择复制到的位置,如图选择了G1。按确定。立马得到结果。
追答用公式的话,可用如下公式,如图,
I2=INDEX(A:A,SMALL(IF((MID(A$2:A$15,2,1)="i")*(LEFT(A$2:A$15,3)<>"dis")*(MID(A$2:A$15,3,1)<>"r")*(MID(A$2:A$15,3,1)<>"l")*(MID(A$2:A$15,3,1)<>"n"),ROW($2:$15),4^8),ROW(1:1)))&""
同时按Ctrl+Shift+Enter三键输入数组公式,下拉到出现空白单元格
=SMALL(IF(IFERROR(FIND("i",$A$1:$A$10,1),0)>0,ROW(),9999),ROW())
=INDEX(A1:A7,IF(IFERROR(FIND("i",$A$1:$A$10,1),0)>0,ROW(),9999))
不能手工输入,要在第一个单元格公式输完以后,选择B1:B10,然后ctrl+shift+enter输入,成数组公式。
第一个公式效果形如B列,第二个公式效果形如C列。
参考技术B=IF(AND(IFERROR(FINDB("i",A1,1)=2,1),IFERROR(FINDB("d",A1,1)>1,1),IFERROR(FINDB("i",A1,1)>1,1),IFERROR(FINDB("s",A1,1)>1,1),IFERROR(FINDB("r",A1,1)<>3,1),IFERROR(FINDB("l",A1,1)<>3,1),IFERROR(FINDB("n",A1,1)<>3,1)),TRUE,FALSE)
用FINDB函数自己适当改动
你的dis我以为是分开的,改成这样,亲测有效
=IF(AND(IFERROR(FINDB("i",A1,1)=2,1),IFERROR(FINDB("dis",A1,1)>1,1),IFERROR(FINDB("r",A1,1)<>3,1),IFERROR(FINDB("l",A1,1)<>3,1),IFERROR(FINDB("n",A1,1)<>3,1)),TRUE,FALSE)
参考技术C 用公式 具体用哪个公式忘记啦以上是关于excel如何提取第二个字母是i的单词?的主要内容,如果未能解决你的问题,请参考以下文章