此主题相关图片如下:微信截图_20191113081539.png

老师,有这样的明细表,设定有空的科目放着,因为有用。
然后做成统计表,科目是一个分组,空的科目因为是一样的,所以,最后只变成一个空行,而不是原来那么多空行。
本来想在空的科目弄上不一样的字符,但是这样不美观,而且量很多。
所以就想在导出的时候,来设定指定位置。
统计表的代码:
Dim b As New sqlGroupTableBuilder( tb1 , "日报表")
b.C
b.Groups.AddDef("行别顺序")
b.Groups.AddDef("类型")
b.Groups.AddDef("项目","项目","科目")
b.Totals.AddExp("上月余额","case when 日期 = '" & rq & "' Then 上日余额 End " )
b.Totals.AddDef("本日增加","本月增加")
b.Totals.AddDef("本日减少","本月减少")
b.Filter = filter & " and 公司 = '" & gongsi & "'"
dt1 = b.Build
导出Excel表格的代码:
nms = {"类型","项目","上月余额","本月增加","本月减少","本月余额"} '要导出的列名
caps = {"类型","科目","上月余额","本月增加","本月减少","本月余额"} '对应的列标题
szs = {60,150,100,100,100,100} '对应的列宽
For c As Integer = 0 To nms.length -1
Sheet(2, c).Value = caps(c) '指定列标题
Sheet.Cols(c).Width = szs(c) '指定列宽
Next
For r As Integer = 0 To dt1.datarows.Count - 1 '填入数据
For c As Integer = 0 To nms.length -1
Sheet(r +1+2, c).Value = dt1.datarows(r)(nms(c))
Next
Next
目前现在这个是按顺序来的,
想要让dt1.datarows(r)(nms(1)) (也就是科目的值= "银行账户小计" 的时候,从 104单元格开始放数据)
[此贴子已经被作者于2019/11/13 8:31:08编辑过]