以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  求助:自动生成问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=114409)

--  作者:xl
--  发布时间:2018/2/5 16:25:00
--  求助:自动生成问题

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:自动生成问题.table

 

说明:1.如何根据《编班设置》中“编班个数”自动生成《课表》?  生成《课表》时,顺便将相应科目编上序号,如《物理A》分11个班,则依次编为物理A1,物理A2,物理A3,……….物理A11.

         2.编班人数向上取值。

[此贴子已经被作者于2018/2/5 16:28:17编辑过]

--  作者:有点甜
--  发布时间:2018/2/5 16:39:00
--  

参考,细节自己调整

 

Dim dt1 As DataTable = DataTables("编班设置")
Dim dt2 As DataTable = DataTables("课表")
dt2.DataRows.Clear
Dim x As Integer = 1
Dim y As Integer = 1
For Each dr As DataRow In dt1.Select("")
    For i As Integer = 1 To dr("编班个数")
        If dt2.DataRows.count < x Then
            Dim ndr = dt2.AddNew
            ndr("上课教室") = x
        End If
        Dim r As DataRow = dt2.DataRows(x-1)
        r("第" & y & "节") = dr("学科") & i
        y = y + 1
        If y > 9 Then
            x += 1
            y = 1
        End If
    Next
Next


--  作者:xl
--  发布时间:2018/2/5 16:55:00
--  
谢谢甜版, x += 1是什么意思?与平时所见不同
--  作者:有点甜
--  发布时间:2018/2/5 16:59:00
--  
以下是引用xl在2018/2/5 16:55:00的发言:
谢谢甜版, x += 1是什么意思?与平时所见不同

 

相当于 x = x + 1 就是自动加1的意思。