ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: abn223

[求助] 如何计算出表格中最大的AB相连的个数?在计算的最大AB相连中要同时有A和B

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-3-20 16:58 | 显示全部楼层
hugeinfo 发表于 2024-3-20 16:17
数字一位可以  超过一位就不行    这个是按照字母的思路弄的

你好,这个公式就是一位数也不行,能不能按照数字弄一个?请你帮助,谢谢

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-3-20 17:04 | 显示全部楼层
本帖最后由 abn223 于 2024-3-20 17:05 编辑
菜狗一只 发表于 2024-3-20 16:31
按我的理解来说,比如第一个AB相连,数据源中A有7个,b有4个,那么AB相连最大个数就是4个(即A、B数据的 ...

你好,谢谢你的帮助, 这个AB结果3,是ABA三个相连,AC结果5,是CAAAA五个相连,BC结果5,是CBCBC五个相连,你这都是4是错的

TA的精华主题

TA的得分主题

发表于 2024-3-20 17:39 | 显示全部楼层
abn223 发表于 2024-3-20 17:04
你好,谢谢你的帮助, 这个AB结果3,是ABA三个相连,AC结果5,是CAAAA五个相连,BC结果5,是CBCBC五个相 ...

懂你说的意思了

TA的精华主题

TA的得分主题

发表于 2024-3-20 17:52 | 显示全部楼层
  1. =LET(x,TEXTSPLIT(D24,,"C"),MAX(LEN(FILTER(x,(--ISNUMBER(FIND("A",x))=1)*(--ISNUMBER(FIND("B",x))=1)))))
复制代码


水一贴

TA的精华主题

TA的得分主题

发表于 2024-3-20 18:17 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 swl4561255 于 2024-3-20 18:18 编辑
  1. =COUNT(0/(MMULT(N(ISNUMBER(FIND(MID(B24,{1,2},1),B$8:B$21&B$9:B$22))),{1;1})=2))   数组公式
复制代码

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2024-3-20 18:59 | 显示全部楼层
本帖最后由 edwin11891 于 2024-3-20 20:46 编辑

按照12楼的解释,修改公式如下:
  1. =LET(r,A1:A15,s,TEXTSPLIT(CONCAT(IFS(r="A",1,r="B",-1,TRUE,"/")),,"/",1),ta,IF(ISNUMBER(FIND(11,s))+(LEFT(s,1)="1"),1,0),tb,IF(ISNUMBER(FIND("-1",s)),1,0),ts,IF(ta*tb=1,LEN(SUBSTITUTE(s,"-","")),0),MAX(ts))
复制代码
不同组合,只需要修改其中“A”、“B"即可,无顺序要求。

TA的精华主题

TA的得分主题

发表于 2024-3-21 17:59 | 显示全部楼层
本帖最后由 咔咔乱坠 于 2024-3-21 18:14 编辑

365公式
  1. =LET(a,TEXTSPLIT(CONCAT(IFERROR(FIND(B$8:B$22,B24)-1,9)),9,,1),MAX(LEN(IF(-a=MIN(-a),a,))))
复制代码
简化,find查找关键词,split把报错信息作为拆分依据拆成多个列表,同时含有两种关键词的位置信息+最长长度的列表即为想要的结果
  1. =LET(a,TEXTSPLIT(CONCAT(IFERROR(FIND(B$8:B$22,B24)-1,9)),9,,1),MAX((--a>0)*LEN(a)))
复制代码



TA的精华主题

TA的得分主题

发表于 2024-3-21 19:37 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
咔咔乱坠 发表于 2024-3-21 17:59
365公式
简化,find查找关键词,split把报错信息作为拆分依据拆成多个列表,同时含有两种关键词的位置信息 ...

特殊情况下,会出错。比如连续四个B,a值为1111,会作为结果输出,实际这是错的。

TA的精华主题

TA的得分主题

发表于 2024-3-21 19:38 | 显示全部楼层
=MAX(LEN(IF(BYCOL(N(ISNUMBER(FIND({"AB";"BA"},TEXTSPLIT(CONCAT($B$8:$B$22),"C",1)))),SUM),TEXTSPLIT(CONCAT($B$8:$B$22),"C",1),"")))

TA的精华主题

TA的得分主题

发表于 2024-3-21 19:46 | 显示全部楼层
mykitami 发表于 2024-3-21 19:38
=MAX(LEN(IF(BYCOL(N(ISNUMBER(FIND({"AB";"BA"},TEXTSPLIT(CONCAT($B$8:$B$22),"C",1)))),SUM),TEXTSPLIT( ...

问题同18楼。另外,通过剔除“C”不是很好的办法,假如有很多不同名称时,应用就不便了。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-7-2 06:02 , Processed in 0.033606 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表