小弟最近经几位高人指点,写了一段代码
Dim mrc As ADODB.Recordset
Dim txtsql As String
Dim strtemp As String
Dim mCtrl As Control
Dim mTemp, mAA, mBB, mCC, mDD As Integer
 
Set mrc = New ADODB.Recordset
txtsql = "select * from courses"
Set mrc = ExecuteSQL(txtsql)  '执行sql语句的函数,已经在模块中封装好的一个函数Set DataReport1.DataSource = mrc
For i = 1 To 60
strtemp = "Label" + Trim(Str(i))
Me.Sections.Item("section1").Controls.Item(strtemp).Caption = ""
Next mAA = 0
 mBB = 15
 mCC = 30
 mDD = 45
mrc.MoveFirst
    
    Do Until mrc.EOF
        Select Case Trim(mrc("kkxq"))
            Case "第一学年第一学期"
                mAA = mAA + 1
                mTemp = mAA
            Case "第一学年第二学期"
                mBB = mBB + 1
                mTemp = mBB
            Case "第二学年第一学期"
                mCC = mCC + 1
                mTemp = mCC
            Case "第二学年第二学期"
                mDD = mDD + 1
                mTemp = mDD
           
        End Select
       strtemp = "Label" + Trim(Str(mTemp))
        Me.Sections.Item("section1").Controls.Item(strtemp).Caption = mrc("kcmc")
       
        mrc.MoveNext
    Loop
我所用的表里courses只有两个字段,一个kkxq,一个kmmc,分别代表开课学期和课程名称,我的愿意是形成如下所示的一张表就行了:
               **课程表
                 第一个学期
    课 课 课 课 课 课 课 课 课  ....
    程 程 程 程 程 程 程 程 程  ....
    名 名 名 名 名 名 名 名 名  ....
    1  2  3  4   5  6  7  8  9  ....                 第二个学期
    课 课 课 课 课 课 课 课 课  ....
    程 程 程 程 程 程 程 程 程  ....
    名 名 名 名 名 名 名 名 名  ....
    1  2  3  4   5  6  7  8  9  ....                 第三个学期
    课 课 课 课 课 课 课 课 课  ....
    程 程 程 程 程 程 程 程 程  ....
    名 名 名 名 名 名 名 名 名  ....
    1  2  3  4   5  6  7  8  9  ....                 第四个学期
    课 课 课 课 课 课 课 课 课  ....
    程 程 程 程 程 程 程 程 程  ....
    名 名 名 名 名 名 名 名 名  ....
    1  2  3  4   5  6  7  8  9  ....
但现在问题是结果报表这张表重复出现了42次,正好和课程的数目一样多,我百思不得其解,请高手指点,万分感谢!!!

解决方案 »

  1.   

    呵呵,你把那些lable全都放在细节部分里了吧?哈哈哈
    把它们全拿出来,放在页标头或者标尾里都可以,任何地方都可以,但千万不要放细节里。
      

  2.   

    小弟刚才试着把所有的label拖到了pageheader处,可惜还是一样的结果啊,郁闷:(
      

  3.   

    十二点都还没睡啊?注意休息啊。不应该还是一样结果的呀,你把你的代码发给我瞧瞧。
    [email protected]
      

  4.   

    谢谢null1027(最近比较烦),我给你发了个邮件。我把代码发给你了,另外还有进一步想请你帮忙的东东(help.rar,数据也在里面)希望你能有时间帮我看看:)
      

  5.   

    这个周末我怕是没时间啦,公司有活动。
    刚好我电脑上也没有sql server。
    我先看看你的代码吧。