ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[分享] 查询数据的简单办法

[复制链接]

TA的精华主题

TA的得分主题

发表于 2018-1-15 17:13 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 zbaigao 于 2018-1-17 09:38 编辑

【问题提出】
是这样的,教育系统做职工运动会,比赛项目安排在图2,参加比赛的人员信息在图3,这些人的报名情况在图1。
报名结束后,需要把这3张表合起来,之后进行筛选:
筛选出参加篮球比赛的人名单和人的信息,把这些部分信息交给篮球裁判;排球和跳绳也做同样的筛选,把人员信息给相应的裁判。
筛选出教育局参加比赛的人的名单、参赛项目、比赛时间和地点,交给教育局,方便参赛选手向领导请假;一中和二中的人员也做同样筛选,把参赛信息给相应的单位。

筛选很简单,用excel自带的筛选功能就可以了,见图4。
我的问题是:如何方便地利用图1、图2和图3的数据,做出图4的数据???
目前我已知的方法有vlookup和access,vlookup不方便,access要安装额外的软件,有没有简单的方法可以得到图4?
图1~3的数据在附件里。

【问题解答】
已找到解法,见http://club.excelhome.net/forum. ... 1392117&pid=9381210

图1
1.png
图2
2.png
图3
3.png




图4
4.png

原始数据.rar (7.96 KB, 下载次数: 15)

TA的精华主题

TA的得分主题

发表于 2018-1-15 17:44 | 显示全部楼层
原始数据.rar (67.52 KB, 下载次数: 7)

只是个vlookup而已,没啥。
估计楼主不懂vlookup函数......

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-1-16 10:27 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
jiangxiaoyun 发表于 2018-1-15 17:44
只是个vlookup而已,没啥。
估计楼主不懂vlookup函数......

谢啦,还是觉得vlookup有点繁杂了

TA的精华主题

TA的得分主题

发表于 2018-1-16 10:34 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
C2=VLOOKUP($A2,运动项目!$A:$C,COLUMN(B1),)右拉2列再下拉,

E2=VLOOKUP($B2,报名人员!$A:$C,COLUMN(B1),)右拉2列再下拉

TA的精华主题

TA的得分主题

发表于 2018-1-16 10:44 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
zbaigao 发表于 2018-1-16 10:27
谢啦,还是觉得vlookup有点繁杂了

虽然上面回答问题的话说不怎么中听,但是如果vlookup你觉得还复杂,我建议你去VBA开发区,付费让别人写个工具,虽然那也仅仅是几行代码的问题,但是肯定不会繁杂

TA的精华主题

TA的得分主题

发表于 2018-1-16 10:58 | 显示全部楼层
弄了一段SQL,楼主试试,
不好,
  1. SELECT B.活动,A.报名人员,C.场地,时间,性别,单位 FROM [运动项目$]C,(SELECT B.活动,A.报名人员,性别,单位 FROM [报名人员$]A,[报名情况$]B WHERE A.报名人员=B.报名人员)D WHERE C.活动=D.活动 ORDER BY B.活动
复制代码

原始数据.rar

10.59 KB, 下载次数: 4

TA的精华主题

TA的得分主题

发表于 2018-1-16 11:42 | 显示全部楼层
SELECT a.*,b.场地,b.时间,c.性别,c.单位 from ([报名情况$] a inner join [运动项目$] b on a.活动=b.活动) inner join [报名人员$] c on a.报名人员=c.报名人员


SELECT a.*,b.场地,b.时间,c.性别,c.单位 from [报名情况$] a , [运动项目$] b, [报名人员$] c where a.活动=b.活动  and a.报名人员=c.报名人员


原始数据.zip (15.88 KB, 下载次数: 5)

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-1-16 13:12 | 显示全部楼层
本帖最后由 zbaigao 于 2018-1-17 09:35 编辑
Look我在这 发表于 2018-1-16 10:58
弄了一段SQL,楼主试试,
不好,

Look我在这 jiangxiaoyun 给出了SQL的解法,那么下一个问题是excel怎么使用SQL呢?

我百度了一下,excel使用类似数据库的功能,需要:
1.写额外的vba
2.使用power query
3.使用microsoft query
4.Look我在这 提供了 数据->现有链接->浏览更多->选取工作簿和表格->属性中设置SQL的方法

1我放弃了太麻烦,
2我试了下,但是需要ie9以上支持,安装ie9,ie10和ie11时均出现错误无法安装,遂放弃
3是excel 2016自带的,据说其他版本的excel也有,研究了一下,可以使用,也支持SQL语句,见图1
4 见http://club.excelhome.net/forum. ... 117&pid=9381291

图1
1.png

帖子到这里,应该算是找到了最优解,我很满意,感谢大家的捧场,特别感谢 Look我在这 和 jiangxiaoyun


TA的精华主题

TA的得分主题

发表于 2018-1-16 14:04 | 显示全部楼层
汗颜了,我SQL写的不好,请参照楼上。
1.gif
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-16 03:04 , Processed in 0.050175 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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