Office中国论坛/Access中国论坛

标题: 求助:如何在excel中用VBA为学生安排考场 [打印本页]

作者: xfy8    时间: 2006-12-20 03:14
标题: 求助:如何在excel中用VBA为学生安排考场



我们学校一个年级有2000多人,要求每场35人,如何实现自动分布考场,既第一行到第三十五行都填1,第三十五行到第七十行都2,依此下去.

先谢谢了

[此贴子已经被作者于2006-12-19 19:14:43编辑过]


作者: guzhen9315    时间: 2006-12-20 04:58
               A列             B列

1行           1              =int(A1/35)+1

2行           2              =int(A2/35)+1

。。。。。。

2000行  2000           =int(A2000/35)+1

[此贴子已经被作者于2006-12-19 21:01:39编辑过]


作者: 方漠    时间: 2006-12-20 18:16
试试以下代码,将会在E列自动填充序号。

    Sub Test()
    Dim I, J As Integer
    Dim StudentHeadcount As Integer, ClassRoom As Integer
    StudentHeadcount = 2200
    ClassRoom = IIf(Int(StudentHeadcount / 35) = StudentHeadcount / 35, StudentHeadcount / 35, Int(StudentHeadcount / 35) + 1)
    J = 1
    For I = 1 To StudentHeadcount Step ClassRoom
        Range(Cells(I, 5), Cells(I + ClassRoom - 1, 5)) = J
        J = J + 1
    Next I
    End Sub
作者: xfy8    时间: 2006-12-20 21:39
标题: 不管呀
[attach]22202[/attach]


首先谢谢两位了,问题:

方法一:在第35行应为1,但是现在却为2,以此类推都是如此.

方法二:如果不是2200人,现在是576人呢,因为不同班型的人数不一样呀.

请见附件


作者: guzhen9315    时间: 2006-12-21 00:16
<DIV class=quote>以下是引用xfy8在2006-12-20 13:39:00的发言:


[attach]22205[/attach]

作者: xfy8    时间: 2006-12-21 04:35
不知能不能这样

第一行到第三十五行都填高三(1)班,第三十五行到第七十行都高三(3)班(既不是高三(2)班),第七十一行到第105行都高三(4)班,以后在以此类推呀.另外每个学生再给一个考号,就是每个学生在考场中的号码如1,2,3,4一直到35.

谢谢

[此贴子已经被作者于2006-12-22 14:42:30编辑过]






欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3