ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 姓名排在同一行,怎么做?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2010-5-14 20:55 | 显示全部楼层 |阅读模式
两张表,一张有姓名和身份证,另一张只有姓名,要求用透视表把两表相同的姓名排在同一行,两表不同的姓名要分开,不能排在同一行,如图示,请教该怎么做?

查找.rar

4.1 KB, 下载次数: 71

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-5-14 20:57 | 显示全部楼层
下面的图示,是把两表的字段,合并在同一工作表做的透视表的图示
1.jpg

TA的精华主题

TA的得分主题

发表于 2010-5-14 21:15 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
原帖由 平帆 于 2010-5-14 20:55 发表
两张表,一张有姓名和身份证,另一张只有姓名,要求用透视表把两表相同的姓名排在同一行,两表不同的姓名要分开,不能排在同一行,如图示,请教该怎么做?

...................

查找.rar

7.02 KB, 下载次数: 43

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-5-14 21:29 | 显示全部楼层
用公式的方法,我也用过,不保险,万一基本这张表同样姓名的有两人,在借款这张表引用的只是其中一人,所以,我希望能用透视表完成

TA的精华主题

TA的得分主题

发表于 2010-5-15 09:05 | 显示全部楼层
楼主为什么不把借款表也加上身份证号码呢?万一出现同名同姓的两个人怎么一一对应?如果是身份证,就好识别是否同一人

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-5-15 09:34 | 显示全部楼层

回复 5楼 抹香鲸2009 的帖子

“基本”是进厂的人事档案里查的,“借款”是算工资时用的表格,就是因为不知道借款人的身份证,才想用透视表的形式,把两张表的姓名来逐行一一对应,以此来找出借款人的身份证号码

TA的精华主题

TA的得分主题

发表于 2010-5-15 10:08 | 显示全部楼层
select a.基本姓名,a.身份证,b.借款姓名 as 借款姓名 from [基本$]a left join [借款$a1:b14]b on a.基本姓名=b.借款姓名 union all
select b.基本姓名 as 基本姓名,b.身份证 as 身份证,a.借款姓名 from [借款$a1:b14]a left join [基本$]b on a.借款姓名=b.基本姓名 where a.借款姓名 is not null

上面语句也可以简化成:
select a.基本姓名,a.身份证,b.借款姓名 from [基本$a1:c16]a left join [借款$a1:b14]b on a.基本姓名=b.借款姓名 union all
select b.基本姓名,b.身份证,a.借款姓名 from [借款$a1:b14]a left join [基本$a1:c16]b on a.借款姓名=b.基本姓名 where a.借款姓名 is not null


[ 本帖最后由 抹香鲸2009 于 2010-5-15 16:53 编辑 ]
身份证.gif

查找.rar

8.84 KB, 下载次数: 54

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-5-15 10:22 | 显示全部楼层
和我的要求一致,谢谢你!只是你写的语句我看不懂,字段前加的a、b,有什么含义,能解释下吗?

TA的精华主题

TA的得分主题

发表于 2010-5-15 10:26 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

回复 8楼 平帆 的帖子

[借款$a1:b14]b 这里是把[借款$a1:b14]命名为b。这样做的目的是为了语句的简洁。因为有很多字段要取自这个表区域,为了书写方便,所以临时给它取了个小名。b.借款姓名就是从[借款$a1:b14]表中取借款姓名,其他同理。

[ 本帖最后由 抹香鲸2009 于 2010-5-15 10:29 编辑 ]

TA的精华主题

TA的得分主题

发表于 2010-5-15 16:58 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
有用full join 解这道题的吗?
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-29 02:54 , Processed in 0.048372 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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