找回密码
 立即注册
搜索
楼主: 小老七

请教随机排座位不重复问题

26
回复
1130
查看
[复制链接]

0

主题

8

帖子

-2

幻币

初入江湖

Rank: 1

积分
4
2021-12-28 03:03:05 显示全部楼层
H2:Q12{=IF((ROW(A1)=1)*(COLUMN(A1)=1)+(MOD(ROW(A1),2)=0)+OR(COLUMN(A1)={4,7}),"",INDEX(名单!$A:$A,SMALL(IF((COUNTIF(座位!$H$1:$Q1,名单!$A$2:$A$109)=0)*(COUNTIF($G2:G2,名单!$A$2:$A$109)=0),ROW($2:$109),4^8),RANDBETWEEN(1,108-INT(ROW(A1)/2)*8-SUM(N($G2:G2<>""))+(ROW(A1)>1)))))
T2下拉{=INDEX(名单!A:A,SMALL(IF(COUNTIF(H:Q,名单!A$2:A$109),4^8,ROW($2:$109)),ROW(A1)))&""
验证 (47为正确) U2{=SUM(COUNTIF(H:Q,A2:A109))
PPT学习论坛
回复 支持 反对

使用道具 举报

2

主题

8

帖子

3

幻币

初入江湖

Rank: 1

积分
11
2021-12-31 11:05:54 显示全部楼层
你好大佬,您的公式是没问题。这边还是有进一步的请求,因为教室我都分了表,所以希望从3-1开始随机分配人员。然后分配3-2,直到5-4教室。但目前看到分配出来的人员数量有问题。我把第一次分到3-1的剩余人直接列在人员的B列,之后每分配一个教室剩余的人员都加在后面一列。但我数了一下,3-1有45个人员,一共有108人,108-45=63人,但剩余人数却是69人,请问是哪里的问题呢?因为这边教室的座位数为607个,我希望能满足600人的录入和所有教室公式的计算。谢谢大佬!
考场座位图.zip (48.78 KB, 下载次数: 136)
PPT学习论坛
回复 支持 反对

使用道具 举报

0

主题

8

帖子

0

幻币

初入江湖

Rank: 1

积分
0
2022-1-5 08:19:52 显示全部楼层
请求帮助!谢谢!
PPT学习论坛
回复 支持 反对

使用道具 举报

1

主题

2

帖子

0

幻币

初入江湖

Rank: 1

积分
2
2022-1-7 09:47:59 显示全部楼层
199b3f7ea7c5ee21800e47ebb812789d.png
vba解
副本考场座位图.7z (40.23 KB, 下载次数: 10)
PPT学习论坛
回复 支持 反对

使用道具 举报

1

主题

9

帖子

1

幻币

初入江湖

Rank: 1

积分
11
2022-1-8 17:40:07 显示全部楼层
感谢帮助,我输入宏以后,出现了错误,请问是什么原因呢?
PPT学习论坛
回复 支持 反对

使用道具 举报

0

主题

7

帖子

-3

幻币

东方不败

积分
-2
2022-1-8 18:24:15 显示全部楼层
少了个scells
PPT学习论坛
回复 支持 反对

使用道具 举报

0

主题

6

帖子

0

幻币

初入江湖

Rank: 1

积分
3
2022-1-11 05:06:26 显示全部楼层
不好意思,是我少打了一个字。
PPT学习论坛
回复 支持 反对

使用道具 举报

1

主题

7

帖子

1

幻币

初入江湖

Rank: 1

积分
9
2022-1-14 17:59:23 显示全部楼层
楼上有附件,直接下载运行吧
PPT学习论坛
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

幻币

初入江湖

Rank: 1

积分
5
2022-1-16 01:19:32 显示全部楼层
请教各位高手!
PPT学习论坛
回复 支持 反对

使用道具 举报

1

主题

7

帖子

2

幻币

初入江湖

Rank: 1

积分
5
2022-1-24 16:15:08 显示全部楼层
H2:Q12{=IF((ROW(A1)=1)*(COLUMN(A1)=1)+(MOD(ROW(A1),2)=0)+OR(COLUMN(A1)={4,7}),"",INDEX(名单!$A:$A,SMALL(IF((COUNTIF(座位!$H$1:$Q1,名单!$A$2:$A$109)=0)*(COUNTIF($G2:G2,名单!$A$2:$A$109)=0),ROW($2:$109),4^8),RANDBETWEEN(1,108-INT(ROW(A1)/2)*8-SUM(N($G2:G2<>""))+(ROW(A1)>1)))))
T2下拉{=INDEX(名单!A:A,SMALL(IF(COUNTIF(H:Q,名单!A$2:A$109),4^8,ROW($2:$109)),ROW(A1)))&""
验证 (47为正确) U2{=SUM(COUNTIF(H:Q,A2:A109))
PPT学习论坛
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册