ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 如何按成绩和性别分班

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2014-7-23 09:15 | 显示全部楼层
备注说明5:我对您的原始数据表做了自我所谓的“规范化”,就是去掉了您的标题行,这样做是有好处的,原始数据表只以字段名开始,其实标题的信息也可以通过增加列字段来添加进去,虽然有重复,但是符合原始数据的规范要求,在代码处理中比较方便,如果您进一步希望分班后的报表有标题、班级信息列的话,还可以在此基础上进一步完善,应该是不太费力的……

TA的精华主题

TA的得分主题

发表于 2014-7-23 09:29 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
备注说明6:代码核心部分的分班方法利用了求模运算的特点,在n个班中带回进行分配,为了实现123……n、n123……(n-1)、(n-1)n123……(n-2) 这样的顺次置换,每n个为一轮过后,被除数增加1进行模运算……
(整这些说明,同时也为了我本人在晚些时候依然能够容易看懂和上手,我曾经写过的一些工作代码,丢了一段时间后,自我阅读、维护都感到有点头疼……呵呵)

TA的精华主题

TA的得分主题

发表于 2014-7-23 09:49 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
备注说明7:就目前来看,我的代码相对其他附件中的代码要少得多,效率我不做评判,可能因为有些步骤我利用函数在工作表内完成的,对于学生总分的排名,我采用的是降序排列后在名次列内1、2、3……这样序列填充,个人觉得这个比Rank好一些,后者在有重复名次时,不是连续排名,我这个是连续的,但不区分重复名次,我想这对于分班来说,没有影响……

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2014-7-23 10:03 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
备注说明8:我测试了1020名学生(通过复制粘贴原始数据),分20班(当然我修改了最大班级数限制)用了9.8281秒,分5班用了9.5508秒,也不知效率怎么样,不过还要耐心一些……

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2014-7-23 10:06 | 显示全部楼层
  备注说明9:工作表“分班信息”工作表保护密码123,以下是测试附件:
   性别总分分班(效率测试).rar (59.79 KB, 下载次数: 38)

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2014-7-23 11:08 | 显示全部楼层
aoe1981 发表于 2014-7-23 10:06
  备注说明9:工作表“分班信息”工作表保护密码123,以下是测试附件:
  

你好
你这个分班程序很好用的。
但通用性不强。如果要增减学生信息呢?又是要请老师们帮忙设计了。
能不能按附件的要求设置程序?

按总分、性别分班(择班).rar (123.7 KB, 下载次数: 13)

请老师帮忙完成程序。
谢谢了。

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-7-23 11:09 | 显示全部楼层
aoe1981 发表于 2014-7-23 10:06
  备注说明9:工作表“分班信息”工作表保护密码123,以下是测试附件:
  

不错,建议1、分班统计栏合计放在表头下面(第3行)2、信息表和分班表再插入1行或2行表头,3、运行有点慢,能否提高一下运行速度,谢谢

TA的精华主题

TA的得分主题

发表于 2014-7-23 11:11 | 显示全部楼层
jxndwxs 发表于 2014-7-23 11:08
你好
你这个分班程序很好用的。
但通用性不强。如果要增减学生信息呢?又是要请老师们帮忙设计了。

增减学生?是什么意思,我把原数据复制粘贴到了1020时都没有问题呀?

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-7-23 11:11 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
hlly888 发表于 2014-7-23 06:11

请指教一下有关运行“平均分”的宏语句,谢谢!

TA的精华主题

TA的得分主题

发表于 2014-7-23 11:16 | 显示全部楼层
达州张先生 发表于 2014-7-23 11:09
不错,建议1、分班统计栏合计放在表头下面(第3行)2、信息表和分班表再插入1行或2行表头,3、运行有点慢 ...

建议1我感觉意义不大,您也可以做到;
建议2可以增加1行为表头,1列为班级信息,但是是什么样的表头了,还请详细说明;
建议3可能是我在循环内部多次重复引用工作表对象造成的,我是逐条记录逐个学生赋值到对应班,可以利用数组进行一次性赋值,按理来说可能会快一点……呵呵,需再研究一数组……

评分

1

查看全部评分

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

本版积分规则

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

GMT+8, 2024-11-18 15:27 , Processed in 0.034222 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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