吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 8010|回复: 20
收起左侧

[其他转载] 用excel VBA 解决编排考场问题,解决对角相邻,加入蛇形排列,更实用

[复制链接]
ymhld 发表于 2019-12-1 12:47
本帖最后由 ymhld 于 2019-12-9 14:26 编辑

首次在编程语言区发帖,比不得大佬们,也不知道发这里合适不,不合适请版主删除;以解决问题为主;
1、问题的提出:

https://www.52pojie.cn/thread-1064857-1-1.html
有坛友发问:15个班 ,每班约65人  安排15个考场   考场7列9排 ;同班学生两两不相邻  相邻同学成绩相差不大
2、问题的思考:
当时以为问题很简单,用excel表格的公式就能处理得了,但深入研究后发现,同班学生两两不相邻要涉及数据交换,用excel表格很难解决
于是动起了excel VBA的主意
其实也很简单,就是从第二名开始,与前排的人,前序号的人的班级不相同,即可解决(但有可能是斜对角是同一班级的)新的表格解决了斜对角相邻的问题,
如下图:即第N+2的同学,即不能与第2位(即前一排),也不能与N+1位同学(前一座)是同班级,如果同班级,则与N+3的同学调换,如果N+3的同学也不合适
就继续找下一个,直至找到最后;如果一直找不到,则把这位同学放在最后


后续加入了蛇形排列和斜形排列,更符合实际实用情况,链接见帖子下方





QQ截图20191201123119.png
原始表格
QQ截图20191201123904.png
3、excel VBA 运行
QQ截图20191201124108.png QQ截图20191201124123.png
QQ截图20191201124133.png QQ截图20191201124142.png
4、运行最后效果
QQ截图20191201124219.png
QQ截图20191201124303.png
完全满足要求。
最后的表格:
https://www.lanzouj.com/i7rjvgf

出点小问题,又改了一下
https://www.lanzouj.com/i7rmtni

解决了斜对角相邻的问题
https://www.lanzouj.com/i7wnkuh

加入了蛇形排列和斜形排列(斜形不算太成功)

https://www.lanzouj.com/i7x0j8h

第一版时打开excel宏设置及运行的录像
https://www.lanzouj.com/i7rdvkd

免费评分

参与人数 8吾爱币 +8 热心值 +8 收起 理由
h800366 + 1 + 1 热心回复!
zhu1979 + 1 + 1 谢谢@Thanks!
kexue8 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
wushaominkk + 3 + 1 鼓励转贴优秀软件安全工具和文档!
心想事成×龙 + 1 + 1 非常感谢
ilpj + 1 热心回复!
ericwise + 1 我很赞同!
miqi1314 + 1 + 1 用心讨论,共获提升!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| ymhld 发表于 2020-1-10 15:20
herevol 发表于 2020-1-10 14:05
同班学生两两不相邻,两班插花或者三班四班插花,其实可以给定义一个序号,按成绩排序,一班序号为1,A1+班 ...

恩,我这个是按人家要求的意思排的,你的意思我明白,要是不按成绩,直接这么编排是可以的
 楼主| ymhld 发表于 2019-12-1 16:48
向往的歌 发表于 2019-12-1 15:52
楼主,能不能编一个VBA?把多张工作簿合并成一张工作簿?

搜搜论坛的合并大师,有能用的工具尽量用工具,这是没办法了才编的
miqi1314 发表于 2019-12-1 12:49
 楼主| ymhld 发表于 2019-12-1 12:52

班门弄斧了,向各位大佬们学习
Xxj1112 发表于 2019-12-1 13:42
太厉害了

免费评分

参与人数 1吾爱币 +1 收起 理由
ymhld + 1 用心讨论,共获提升!

查看全部评分

向往的歌 发表于 2019-12-1 13:51
楼主真大神也!有机会请教请教哟!

免费评分

参与人数 1吾爱币 +1 收起 理由
ymhld + 1 用心讨论,共获提升!

查看全部评分

vethenc 发表于 2019-12-1 13:58
感谢分享,原创作品

免费评分

参与人数 1吾爱币 +1 收起 理由
ymhld + 1 用心讨论,共获提升!

查看全部评分

ilpj 发表于 2019-12-1 14:12
学习了,感谢楼主分享。

免费评分

参与人数 1热心值 +1 收起 理由
ymhld + 1 用心讨论,共获提升!

查看全部评分

头像被屏蔽
wihite2018 发表于 2019-12-1 14:46
提示: 作者被禁止或删除 内容自动屏蔽
cherrypi 发表于 2019-12-1 15:19
虽然用不到,但是还是谢谢楼主。
向往的歌 发表于 2019-12-1 15:52
本帖最后由 向往的歌 于 2019-12-1 18:03 编辑

楼主,能不能编一个VBA?把多张工作簿合并成一张工作簿?
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-22 11:44

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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