ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[已解决] 右连接2

[复制链接]

TA的精华主题

TA的得分主题

发表于 2025-2-3 09:39 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
见附件吧   没登微信  截不了图

join2.rar

8.81 KB, 下载次数: 26

TA的精华主题

TA的得分主题

发表于 2025-2-3 10:16 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 leepoison 于 2025-2-2 14:22 编辑

=LET(a,UNIQUE(VSTACK(E6:E8,E13:E15)),HSTACK(VSTACK(E5,a),REDUCE(HSTACK(F5:G5,F12:G12),a,LAMBDA(x,y,VSTACK(x,HSTACK(IFERROR(FILTER(F6:G8,E6:E8=y),{"",""}),IFERROR(FILTER(F13:G15,E13:E15=y),{"",""})))))))


=LET(a,UNIQUE(VSTACK(E5:E8,E12:E15)),HSTACK(a,DROP(REDUCE("",a,LAMBDA(x,y,VSTACK(x,HSTACK(IFERROR(FILTER(F5:G8,E5:E8=y),{"",""}),IFERROR(FILTER(F12:G15,E12:E15=y),{"",""}))))),1)))

image.png

第一种懒得弄

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2025-2-3 10:57 | 显示全部楼层
leepoison 发表于 2025-2-3 10:16
=LET(a,UNIQUE(VSTACK(E6:E8,E13:E15)),HSTACK(VSTACK(E5,a),REDUCE(HSTACK(F5:G5,F12:G12),a,LAMBDA(x,y,V ...

第一种简单吗   ?
怎么我写的这么复杂呢
=DROP(REDUCE("",FILTER(E6:E8,ISNUMBER(MATCH(E6:E8,E13:E15,0))),LAMBDA(x,y,VSTACK(x,HSTACK(y,OFFSET(INDEX(E6:E8,MATCH(y,E6:E8,0)),,1,,2),OFFSET(INDEX(E13:E15,MATCH(y,E13:E15,0)),,1,,2))))),1)

TA的精华主题

TA的得分主题

发表于 2025-2-3 11:11 | 显示全部楼层
数据准备搞得公式挺长,其实就是一个透视函数的事:
  1. =LET(f,LAMBDA(y,z,TOCOL(IF(y<>"",z,1/0),3)),IDa,E6:E8,IDb,E13:E15,Da,F6:G8,Db,F13:G15,Ta,F5:G5,Tb,F12:G12,SID,VSTACK(f(Da,IDa),f(Db,IDb)),STY,VSTACK(f(Da,Ta),f(Db,Tb)),SV,VSTACK(f(Da,Da),f(Db,Db)),s,PIVOTBY(SID,STY,SV,SINGLE,0,0,,0),s)
复制代码


第一种只是在透视函数中加一个筛选:
  1. =LET(f,LAMBDA(y,z,TOCOL(IF(y<>"",z,1/0),3)),IDa,E6:E8,IDb,E13:E15,Da,F6:G8,Db,F13:G15,Ta,F5:G5,Tb,F12:G12,SID,VSTACK(f(Da,IDa),f(Db,IDb)),STY,VSTACK(f(Da,Ta),f(Db,Tb)),SV,VSTACK(f(Da,Da),f(Db,Db)),SL,MAP(SID,LAMBDA(x,IF(ISNUMBER(XMATCH(x,UNIQUE(VSTACK(IDa,IDb),,1),)),1,))),s,PIVOTBY(SID,STY,SV,SINGLE,0,0,,0,,SL=0),s)
复制代码

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2025-2-3 11:23 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
仅供参考...
2025-02-03_111912.jpg

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2025-2-3 13:55 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
  1. =LET(b,REDUCE("",SEQUENCE(ROWS(E5:E8)),LAMBDA(x,y,VSTACK(x,LET(a,MATCH(INDEX(E5:E8,y),E12:E15,),IF(ISNA(a),"",HSTACK(INDEX(E5:G8,y,),INDEX(F12:G15,a,))))))),FILTER(b,INDEX(b,,1)<>""))
复制代码

只做了下第一个

TA的精华主题

TA的得分主题

发表于 2025-2-3 15:04 | 显示全部楼层
=LET(a,IFNA(VSTACK(HSTACK(E5:G5,F12:G12),E6:G8,HSTACK(E13:E15,"","",F13:G15)),""),GROUPBY(TAKE(a,,1),DROP(a,,1),CONCAT,3,0,,ISNUMBER(MATCH(TAKE(a,,1),FILTER(E6:E8,ISNUMBER(MATCH(E6:E8,E13:E15,))),))))
=LET(a,IFNA(VSTACK(HSTACK(E5:G5,F12:G12),E6:G8,HSTACK(E13:E15,"","",F13:G15)),""),GROUPBY(TAKE(a,,1),DROP(a,,1),CONCAT,3,0,))

TA的精华主题

TA的得分主题

发表于 2025-2-3 15:41 | 显示全部楼层
=LET(
    ids, VSTACK($E$5:$E$8, $E$12:$E$15),
    unique_ids, FILTER(UNIQUE(ids), UNIQUE(ids)<>""),
    data1_ID, $E$5:$E$8,
    data1_XM, $F$5:$F$8,
    data1_身高, $G$5:$G$8,
    data2_ID, $E$12:$E$15,
    data2_住址, $F$12:$F$15,
    data2_电话, $G$12:$G$15,
    result_XM, IFERROR(XLOOKUP(unique_ids, data1_ID, data1_XM), ""),
    result_身高, IFERROR(XLOOKUP(unique_ids, data1_ID, data1_身高), ""),
    result_住址, IFERROR(XLOOKUP(unique_ids, data2_ID, data2_住址), ""),
    result_电话, IFERROR(XLOOKUP(unique_ids, data2_ID, data2_电话), ""),
    HSTACK(unique_ids, result_XM, result_身高, result_住址, result_电话)
)

TA的精华主题

TA的得分主题

发表于 2025-2-3 16:21 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
=IFNA(IFNA(VLOOKUP($J13,$E$6:$G$8,MATCH(K$12,$E$5:$G$5,0),0),VLOOKUP($J13,$E$13:$G$15,MATCH(K$12,$E$12:$G$12,0),0)),"")

TA的精华主题

TA的得分主题

发表于 2025-2-3 17:02 | 显示全部楼层
  1. =LET(_T,GROUPBY(VSTACK(E6:E8,E13:E15),VSTACK(E6:E8,E13:E15),COUNTA,0,0),REDUCE("",FILTER(CHOOSECOLS(_T,1),CHOOSECOLS(_T,2)<>1,""),LAMBDA(X,Y,VSTACK(X,HSTACK(Y,TOROW(FILTER(VSTACK(F6:G8,F13:G15),VSTACK(E6:E8,E13:E15)=Y,"")))))))
复制代码
  1. =REDUCE("",{1;2;3;4},LAMBDA(X,Y,LET(T,FILTER(F6:G8,Y=E6:E8,""),_T,FILTER(F13:G15,Y=E13:E15,""),VSTACK(X,HSTACK(Y,REDUCE("",{"XM","身高","住址","电话"},LAMBDA(_X,_Y,HSTACK(_X,IFERROR(IFERROR(CHOOSECOLS(T,MATCH(_Y,F5:G5,0)),CHOOSECOLS(_T,MATCH(_Y,F12:G12,0))),"")))))))))
复制代码
数组 上一条没注意
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2025-2-13 01:40 , Processed in 0.027354 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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