返回信息流☆─────────────────────────────────────☆
snow1225 (雪) 于 (Thu Aug 4 17:50:44 2011) 提到:
呃,有3个Excel表格,我想把它们合并成一个,然后再转换下表格的样式。因为Excel太弱太菜,汗,所以想请热心的朋友帮帮忙。先谢过啦!
☆─────────────────────────────────────☆
doubleKO (九头鸟龙) 于 (Thu Aug 4 20:25:31 2011) 提到:
说下具体需求吧,比如合并前什么样,合并后什么样。。。
由于只有三个,简单的话手动操作,复杂的话用一下VBA
【 在 snow1225 (雪) 的大作中提到: 】
: 呃,有3个Excel表格,我想把它们合并成一个,然后再转换下表格的样式。因为Excel太弱太菜,汗,所以想请热心的朋友帮帮忙。先谢过啦!
☆─────────────────────────────────────☆
snow1225 (雪) 于 (Thu Aug 4 23:02:35 2011) 提到:
数据是学生3年来的所有科目成绩,每学年的课程是一个excel表。3个表的格式如下:
张三 课程1 xx专业 必修课 90
张三 课程2 xx专业 必修课 90
张三 课程3 xx专业 必修课 85
张三 课程4 xx专业 实践课 80
李四 课程1 xx专业 必修课 90
李四 课程2 xx专业 必修课 70
李四 课程3 xx专业 必修课 70
李四 课程4 xx专业 实践课 80
......
我想要做的是,把3个学年的成绩都合并成下面这个表的格式,算每一位学生必修课的平均成绩和实践课的平均成绩,换成以下格式:
课程1 课程2 课程3 课程4 .......
张三 90 90 85 80
李四 90 70 70 80
.....
☆─────────────────────────────────────☆
snow1225 (雪) 于 (Thu Aug 4 23:04:28 2011) 提到:
因为样本量比较大,一共2000多名学生,各个专业的课程也不同,所以,不知道怎么处理才好。不知道我表达清楚了没有,谢谢1楼!
☆─────────────────────────────────────☆
doubleKO (九头鸟龙) 于 (Fri Aug 5 19:35:03 2011) 提到:
好久没用VBA了,
不过倒是让我想起之前看到的一个MySQL交叉表解决方案,对于这个需求的话
SELECT IFNULL( `name` , 'total' ) AS name,
SUM( IF( `course` = '课程1', `score` , 0 ) ) AS course1,
SUM( IF( `course` = '课程2', `score` , 0 ) ) AS course2,
SUM( IF( `course` = '课程3', `score` , 0 ) ) AS course3,
SUM( IF( `course` = '课程4', `score` , 0 ) ) AS course4,
SUM( IF( `type` = '必修课', `score` , 0 ) ) / SUM( IF( `type` = '必修课', 1, 0 ) ) AS avg1,
SUM( IF( `type` = '实践课', `score` , 0 ) ) / SUM( IF( `type` = '实践课', 1, 0 ) ) AS avg2,
SUM( `score` ) AS TOTAL,
AVG( `score` ) AS AVG
FROM test
GROUP BY `name`
WITH rollup
查询结果:
name course1 course2 course3 course4 avg1 avg2 TOTAL AVG
张三 90 90 85 80 88.3333 80.0000 345 86.2500
李四 90 70 70 80 76.6667 80.0000 310 77.5000
total 180 160 155 160 82.5000 80.0000 655 81.8750
【 在 snow1225 (雪) 的大作中提到: 】
: 数据是学生3年来的所有科目成绩,每学年的课程是一个excel表。3个表的格式如下:
: 张三 课程1 xx专业 必修课 90
: 张三 课程2 xx专业 必修课 90
: ...................
☆─────────────────────────────────────☆
doubleKO (九头鸟龙) 于 (Fri Aug 5 19:44:28 2011) 提到:
既然“各个专业的课程也不同”,那就不要放在同一张表里吧,(否则,如果某个专业没有某门课程,那相应的用NULL之类表示?)
关于EXCEL里面的解决方案,搜索一下“excel 个人成绩单”,应该很多解决方法
【 在 snow1225 (雪) 的大作中提到: 】
: 因为样本量比较大,一共2000多名学生,各个专业的课程也不同,所以,不知道怎么处理才好。不知道我表达清楚了没有,谢谢1楼!
☆─────────────────────────────────────☆
solonsyd (【国家免检男】|专业小二) 于 (Fri Aug 5 21:43:31 2011) 提到:
jxl搞起
☆─────────────────────────────────────☆
snow1225 (雪) 于 (Fri Aug 5 23:06:28 2011) 提到:
为什么我都看不懂呢?汗,我不是学计算机的。不过楼上提醒得对,各个专业课程不同,所以合成一张表的确不合适。
请问可以加Q么,我把数据传过来,万分感谢!
这是一条镜像帖。来源:北邮人论坛 / database / #6776同步于 2012/5/20
Database机器人发帖
[合集] 求助:Excel高手
doubleKO
2012/5/20镜像同步0 回复
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。