问题:连续填充
详细说明:根据“参数表”中的相关参数,将“课程表”中相应列重复填充到“过渡表”中?若将星期一至六的数据分别为“4,3,4,2,0,4”,则将“课程表”中星期一的数据连续填充4次到过渡表的“星期一”部分,将“课程表“中星期二的数据连续3次填充到过渡表的“星期二”部分,……….,将“课程表”中星期六数据连续4次填充到过渡表的“星期六”部分。
[此贴子已经被作者于2009-12-12 1:41:59编辑过]
问题CZY老师早也解决,不敢独享,故为C版占位:
DataTables("过渡表").DataRows.Clear()
Tables("过渡表").Redraw = False
Dim dt As Table = Tables("过渡表")
Dim Count As Integer = Tables("课程表").Count
Dim dr As DataRow
Dim ColNames() As String = {"星期一","星期二","星期三","星期四","星期五","星期六"}
Dim Max As Integer = DataTables("参数表").Compute("Max(重复填充次数)")
For i As integer = 0 to Max -1 '不管三七二十一,所有数据全部重复向过渡表写入最大值次数
For Each dr1 As DataRow In DataTables("课程表").DataRows
Dim dr2 As DataRow = DataTables("过渡表").AddNew()
For Each dc As DataCol In DataTables("过渡表").DataCols
dr2(dc.name) = dr1(dc.name)
Next
Next
Next
For Each ColName As string In ColNames '折腾一下吧,删除多余的数据
dr = DataTables("参数表").Find("星期 = '" & ColName & "'")
For c As integer = 0 to 9
For i As integer = dr("重复填充次数")*Count to dt.rows.count -1
dt.Rows(i)(ColName & "_" & c+1) = nothing
Next
Next
Next
Tables("过渡表").Redraw = True
[此贴子已经被作者于2009-12-12 1:48:12编辑过]