Foxtable(狐表)用户栏目专家坐堂 → 打印模板设置


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

主题:打印模板设置

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/5 16:49:00 [显示全部帖子]

 你直接分组打印不就行了?

 

http://www.foxtable.com/help/topics/1542.htm

 


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/5 17:26:00 [显示全部帖子]

根据 协议号、日期分组,然后去编写报表事件

 

 http://www.foxtable.com/help/topics/1958.htm

 


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/6 17:41:00 [显示全部帖子]

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:派车单1.zip


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/6 18:00:00 [显示全部帖子]

 代码写在报表事件 BuildGroupHeader 里面的,你去看看

 

 你循环每一行,提取你要的数据组合起来即可。


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/7 11:40:00 [显示全部帖子]

 自动行高比较麻烦,要用vba处理

 

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("d:\test.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim Rg As MSExcel.Range = Ws.Cells
Rg.WrapText = True
'Rg.EntireColumn.AutoFit   '自动调整列宽
Rg.EntireRow.AutoFit  '自动调整行高
App.Visible = True


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/7 11:59:00 [显示全部帖子]

Select Case e.Book.TempLate
    Case "货物运输确认"
        Dim str1 As String = ""
        Dim str2 As String = ""
        Dim Filter As String = "协议号 = '" & e.DataRow("协议号") & "'"
        For Each dr As DataRow In e.DataRow.DataTable.Select(filter)           
            str1 &= dr("收货单位") & dr("送货吨位") & "T,"
            str2 &= dr("送货单号") & ","
        Next
        e.Book.Marks("收货单位") = str1.trim(",")
        e.Book.Marks("送货单号") = str2.trim(",")
End Select


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/7 16:15:00 [显示全部帖子]

Select Case e.Book.TempLate
    Case "货物运输确认"
        Dim str1 As String = ""
        Dim str2 As String = ""
        Dim Filter As String = "协议号 = '" & e.DataRow("协议号") & "'"
        For Each dw As String In e.DataRow.DataTable.GetValues("收货单位", filter)
            str1 &= dw &  e.DataRow.DataTable.compute("sum(送货吨位)", filter & " and 收货单位 = '" & dw & "'") & "T,"
        Next
        For Each dr As DataRow In e.DataRow.DataTable.Select(filter)
            str2 &= dr("送货单号") & ","
        Next
        e.Book.Marks("收货单位") = str1.trim(",")
        e.Book.Marks("送货单号") = str2.trim(",")
End Select

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/8 11:59:00 [显示全部帖子]

不行,无法直接做到这种控制。

 

如果要控制行数,那你就先分组统计,生成表格,再根据这个表格设计excel报表。


 回到顶部