ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 1139|回复: 25

[求助] 根据筛选结果按排序要求提取内容

[复制链接]

TA的精华主题

TA的得分主题

发表于 2023-7-19 14:11 | 显示全部楼层 |阅读模式
各位大神,所需结果是提取数据源页的相关内容到结果页,并根据差异或者差异%进行升序和降序。
同时在结果页的黄色区域,根据不同筛选而变化最终结果。数据量预估3000行。

比如:地区选择华北、城市选择Beijing、月份202306与202305进行对比、Top选前3,结果如下图
PS:top最大选择是20
image.png
用公式或者VB都可以,请求帮忙。

【求助】根据筛选提取内容并排名.7z

13.88 KB, 下载次数: 18

TA的精华主题

TA的得分主题

发表于 2023-7-19 15:41 | 显示全部楼层
=LET(A,CHOOSECOLS(FILTER(数据源!A4:J23,(MMULT(N(B2:C2=数据源!C4:D23),ROW(1:2)^0)=2)*(CHOOSECOLS(MMULT(N(OFFSET(数据源!I3,SEQUENCE(20),{0,1},)),{-1,1;1,0}),1)/数据源!I4:I23>0)),{1,2,9,10}),VSTACK(HSTACK(A,MMULT(CHOOSECOLS(A,{4,3}),{1;-1}))))
太麻烦了,先做一半

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-7-19 16:05 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
博爱风雨同舟 发表于 2023-7-19 15:41
=LET(A,CHOOSECOLS(FILTER(数据源!A4:J23,(MMULT(N(B2:C2=数据源!C4:D23),ROW(1:2)^0)=2)*(CHOOSECOLS(MMUL ...

如果公式比较麻烦,VB可以解决吗?

TA的精华主题

TA的得分主题

发表于 2023-7-19 16:25 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
=LET(a,FILTER(数据源!A:J,(数据源!C:C=B2)*(数据源!D:D=C2)),b,INDEX(a,,MATCH(D2,数据源!$A$3:$J$3,)),c,INDEX(a,,MATCH(E2,数据源!$A$3:$J$3,)),d,b-c,e,d/c,f,HSTACK(DROP(a,,-8),b,c,d,e),g,SEQUENCE(F2),HSTACK(g,TAKE(SORT(f,6,1),F2)))    笨办法   不足数据量大了 得不得卡翻

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-7-19 16:47 | 显示全部楼层
theking_wsz 发表于 2023-7-19 16:25
=LET(a,FILTER(数据源!A:J,(数据源!C:C=B2)*(数据源!D:D=C2)),b,INDEX(a,,MATCH(D2,数据源!$A$3:$J$3,)),c, ...

必卡,数据后续还会累计,现在已经卡得不要不要的了

TA的精华主题

TA的得分主题

发表于 2023-7-19 17:03 | 显示全部楼层
=LET(M,OFFSET(数据源!A4,,MATCH(D2,数据源!A3:J3,0)-1,20,),N,OFFSET(数据源!A4,,MATCH(E2,数据源!A3:J3,0)-1,20,),TAKE(SORT(FILTER(HSTACK(数据源!A4:B23,M,N,M-N,(M-N)/N),(B2=数据源!C4:C23)*(数据源!D4:D23=C2)),6,-1),F2))
image.png
=LET(M,OFFSET(数据源!A4,,MATCH(D2,数据源!A3:J3,0)-1,20,),N,OFFSET(数据源!A4,,MATCH(E2,数据源!A3:J3,0)-1,20,),TAKE(SORT(FILTER(HSTACK(数据源!A4:B23,M,N,M-N,(M-N)/N),(B2=数据源!C4:C23)*(数据源!D4:D23=C2)),6,1),F2))
image.png

TA的精华主题

TA的得分主题

发表于 2023-7-19 17:10 | 显示全部楼层
=LET(C,LET(B,OFFSET(数据源!A3,,MATCH(E2,数据源!3:3,0)-1),A,CHOOSECOLS(FILTER(数据源!A4:J23,(MMULT(N(B2:C2=数据源!C4:D23),ROW(1:2)^0)=2)*(CHOOSECOLS(MMULT(N(OFFSET(B,SEQUENCE(20),HSTACK(0,D2-E2),)),{-1,1;1,0}),1)/OFFSET(B,1,,20)>0)),HSTACK(1,2,MATCH(D2:E2,数据源!3:3,0))),VSTACK(HSTACK(A,MMULT(CHOOSECOLS(A,{3,4}),{1;-1}),MMULT(CHOOSECOLS(A,{3,4}),{1;-1})/CHOOSECOLS(A,4)))),TAKE(SORT(C,6,-1),3))

TA的精华主题

TA的得分主题

发表于 2023-7-19 17:13 | 显示全部楼层
=LET(C,LET(B,OFFSET(数据源!A3,,MATCH(E2,数据源!3:3,0)-1),A,CHOOSECOLS(FILTER(数据源!A4:J23,(MMULT(N(B2:C2=数据源!C4:D23),ROW(1:2)^0)=2)*(CHOOSECOLS(MMULT(N(OFFSET(B,SEQUENCE(20),HSTACK(0,D2-E2),)),{-1,1;1,0}),1)/OFFSET(B,1,,20)>0)),HSTACK(1,2,MATCH(D2:E2,数据源!3:3,0))),VSTACK(HSTACK(A,MMULT(CHOOSECOLS(A,{3,4}),{1;-1}),MMULT(CHOOSECOLS(A,{3,4}),{1;-1})/CHOOSECOLS(A,4)))),TAKE(SORT(C,6,-1),F2))
选择Top加上

TA的精华主题

TA的得分主题

发表于 2023-7-19 17:13 | 显示全部楼层
来个PQ方案,供参考。

image.png

【求助】根据筛选提取内容并排名.rar

28.13 KB, 下载次数: 4

TA的精华主题

TA的得分主题

发表于 2023-7-19 17:15 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
C5=LET(X,FILTER(CHOOSE({1,2,3,4},数据源!A:A,数据源!B:B,XLOOKUP(D2,数据源!E3:J3,数据源!E:J),XLOOKUP(E2,数据源!E3:J3,数据源!E:J)),(数据源!C:C=结果页!$B$2)*(数据源!D:D=结果页!C2)),
FILTER(X,ISNUMBER(XMATCH(INDEX(X,,3)-INDEX(X,,4),LARGE(INDEX(X,,3)-INDEX(X,,4),SEQUENCE(3))))),
)

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-17 11:24 , Processed in 0.044209 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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