excel 超难问题 20
单元格中有如下几组数字,都是文本格式的A1:12312312A222123112A321233111A423123112将上述单元格中含有三个连续字符串的单元格找出,这三...
单元格中有如下几组数字,都是文本格式的
A1 : 12312312
A2 22123112
A3 21233111
A4 23123112
将上述单元格中含有三个连续字符串的单元格找出,这三个字符串必须满足下列条件:
每个字符都不等于1,例如这三个字符可以是222,232,332,等等,
在上述4个数字中,只有A3满足条件,因为它含有233,233的每个字符都不等于1,
所以满足条件,
请各位高手帮忙,用查找功能也行,用函数也行,能实现将满足条件的单元格找出就行,谢谢!
另外,如将条件中的111换成213应该怎么办,即三个字符分别不能等于2,1,3,例如122,232,322,等等,在上述四个数字中,只有A3满足条件,因为含有连续的三个字符331,331的三个字符分别不等于2,1,3,
请高手帮忙解决
的 展开
A1 : 12312312
A2 22123112
A3 21233111
A4 23123112
将上述单元格中含有三个连续字符串的单元格找出,这三个字符串必须满足下列条件:
每个字符都不等于1,例如这三个字符可以是222,232,332,等等,
在上述4个数字中,只有A3满足条件,因为它含有233,233的每个字符都不等于1,
所以满足条件,
请各位高手帮忙,用查找功能也行,用函数也行,能实现将满足条件的单元格找出就行,谢谢!
另外,如将条件中的111换成213应该怎么办,即三个字符分别不能等于2,1,3,例如122,232,322,等等,在上述四个数字中,只有A3满足条件,因为含有连续的三个字符331,331的三个字符分别不等于2,1,3,
请高手帮忙解决
的 展开
5个回答
展开全部
经测试通过,符合要求!
B1为111 或312等 必须长度为3的字符串,可随意修改。
A2为待查找数据 如21233111 (只适用8位的字符串,与实际不符要调整公式)
{=SUM((MID(A2,ROW($A$1:$A$6),1)<>MID($B$1,1,1))*(MID(A2,ROW($A$2:$A$7),1)<>MID($B$1,2,1))*(MID(A2,ROW($A$3:$A$8),1)<>MID($B$1,3,1)))}
结果为找到满足条件的连续字符串的个数
比如21233111结果为1 ,即找到一个“233”
如果是21233211结果为2 即找到二个分别为“233”“221”
结果为0则不符合条件
数组公式 以CTRL+SHIFT+ENTER结束
B1为111 或312等 必须长度为3的字符串,可随意修改。
A2为待查找数据 如21233111 (只适用8位的字符串,与实际不符要调整公式)
{=SUM((MID(A2,ROW($A$1:$A$6),1)<>MID($B$1,1,1))*(MID(A2,ROW($A$2:$A$7),1)<>MID($B$1,2,1))*(MID(A2,ROW($A$3:$A$8),1)<>MID($B$1,3,1)))}
结果为找到满足条件的连续字符串的个数
比如21233111结果为1 ,即找到一个“233”
如果是21233211结果为2 即找到二个分别为“233”“221”
结果为0则不符合条件
数组公式 以CTRL+SHIFT+ENTER结束
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
单元格I1/I2/I3分别输入数字 1/1/1 或2/1/3
B1=IF(OR(VALUE(LEFT(MID($A1,COLUMN()-1,3),1))=$I$1,VALUE(MID(MID($A1,COLUMN()-1,3),2,1))=$I$2,VALUE(RIGHT(MID($A1,COLUMN()-1,3),1))=$I$3),,1),然后复制公公式到B1:G4
H1=SUM(B1:G1),然后复制公公式到H2:H4. H列为不为零的行满足条件。
优点:
可以随便更改数字,改成111,213,312都行;
可以看出有多少个连续字符满足条件;
可以根据1的位置清楚看到连续字符出现的位置。
B1=IF(OR(VALUE(LEFT(MID($A1,COLUMN()-1,3),1))=$I$1,VALUE(MID(MID($A1,COLUMN()-1,3),2,1))=$I$2,VALUE(RIGHT(MID($A1,COLUMN()-1,3),1))=$I$3),,1),然后复制公公式到B1:G4
H1=SUM(B1:G1),然后复制公公式到H2:H4. H列为不为零的行满足条件。
优点:
可以随便更改数字,改成111,213,312都行;
可以看出有多少个连续字符满足条件;
可以根据1的位置清楚看到连续字符出现的位置。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
=IF(ISERROR(SEARCH("*1???1*",A1)),"",IF(AND(ISERROR(SEARCH("*11??1*",A1)),ISERROR(SEARCH("*1??11*",A1))),A1,""))
你先用这个公式试试,我再看看有没有其他情况
补充:上面的公式没有考虑到全部情况,正在完善。
不太明白楼主第二个问题的意思,如果是要找出含有连续的213的单元格,可以用 LEN(A1)=LEN(SUBSTITUTE(A1,"213","")) 进行判断:如果有连续的213,那么会被替换为空,字符长度肯定会发生变化,利用这点,判断是否含有连续出现的213。
不知道能不能帮到你,算是给个思路,抛砖引玉吧。
你先用这个公式试试,我再看看有没有其他情况
补充:上面的公式没有考虑到全部情况,正在完善。
不太明白楼主第二个问题的意思,如果是要找出含有连续的213的单元格,可以用 LEN(A1)=LEN(SUBSTITUTE(A1,"213","")) 进行判断:如果有连续的213,那么会被替换为空,字符长度肯定会发生变化,利用这点,判断是否含有连续出现的213。
不知道能不能帮到你,算是给个思路,抛砖引玉吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一,在B2里用公式 {=OR(ISERROR(FIND(1,MID(A1,ROW($1:$6),3),1)))}往下拉,出现结果为“TRUE”的就是你要找的。
二,{=OR((MID(MID(A1,ROW($1:$6),3),1,1)<>"2")*(MID(MID(A1,ROW($1:$6),3),2,1)<>"1")*(MID(MID(A1,ROW($1:$6),3),3,1)<>"3")<>0)}方法同一
二,{=OR((MID(MID(A1,ROW($1:$6),3),1,1)<>"2")*(MID(MID(A1,ROW($1:$6),3),2,1)<>"1")*(MID(MID(A1,ROW($1:$6),3),3,1)<>"3")<>0)}方法同一
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不懂VBA,留个记号,看看有没有高手能用函数公式解决。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询