Foxtable(狐表)用户栏目专家坐堂 → 报表


  共有2270人关注过本帖树形打印复制链接

主题:报表

帅哥哟,离线,有人找我吗?
有点甜
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/21 14:48:00 [显示全部帖子]

1、要做什么样的报表?word?

 

2、实例发上来,贴出你现在所写的代码。


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/21 15:50:00 [显示全部帖子]

1、模板

 

 

[班级]                                领队:[领队]

[人员]



 

 

2、代码

 

Dim tm As String  = ProjectPath & "Attachments\0101.docx" '指定模板文件
Dim fl As String = ProjectPath & "Reports\0101.docx" '指定目标文件
Dim t As Table = Tables("报名表")
Dim wrt As New WordReport(t,tm,fl) '定义一个WordReport

For Each bj As String In t.DataTable.GetValues("班级", "班级 is not null", "_sortkey")
    Dim fdr = t.DataTable.find("班级='" & bj & "'")
    Dim str As String = ""
    Dim drs = t.DataTable.Select("班级='" & bj & "'", "号码")
    Dim s1 As String = ""
    Dim s2 As String = ""
    For i As Integer = 0 To drs.count-1
        If i>0 AndAlso i Mod 8 = 0 Then
            str &= s1 & vbcrlf & s2 & vbcrlf
            str &= vbcrlf
            s1 = ""
            s2 = ""
        End If
        s1 &= drs(i)("号码") & chr(9)
        s2 &= drs(i)("姓名") & chr(9)
    Next
msgbox(str)
    wrt.ReplaceOne("[人员]",str)
    wrt.BuildOne(fdr)
Next
wrt.Show() '显示报表


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/22 19:16:00 [显示全部帖子]

1、4楼代码我测试没问题,如果有问题,做个实例发上来测试。

 

2、如果用excel报表的话,<HeaderRow>改成<GroupHeader,报名表汇总,班级,1>即可。如果每个分组之间需要空格,你插入空行即可,也就是<GroupFooter,报名表汇总,班级,1>插入多行


 回到顶部