以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助] Excel报表直接统计问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=69599) |
||||
-- 作者:wangyinming -- 发布时间:2015/6/7 22:33:00 -- [求助] Excel报表直接统计问题 ExcelExcel ![]() ![]() 报表直接统计数据,在写表达式时由于物品品种较多,不想一个一个输入,请问有何它办法? [此贴子已经被作者于2015/6/7 22:38:17编辑过]
|
||||
-- 作者:wangyinming -- 发布时间:2015/6/7 22:33:00 -- 附件上传 |
||||
-- 作者:大红袍 -- 发布时间:2015/6/7 22:38:00 -- 用交叉统计,或者分组统计,得到表后,导出。 |
||||
-- 作者:wangyinming -- 发布时间:2015/6/7 22:45:00 -- 有代码吗,这样可以不用狐表的组件 |
||||
-- 作者:大红袍 -- 发布时间:2015/6/7 23:18:00 -- 以下是引用wangyinming在2015/6/7 22:45:00的发言:
有代码吗,这样可以不用狐表的组件
设置好分组统计,然后拷贝那里的代码出来运行。
然后加上生成报表的代码即可 http://www.foxtable.com/help/topics/1145.htm
|
||||
-- 作者:wangyinming -- 发布时间:2015/6/8 19:48:00 -- 我写了汇总的代码,然后导出,但是导出失败。请问代码有何问题?
Dim t As Table = Tables("加硫") Dim g As Subtotalgroup t.SubtotalGroups.Clear() t.GroupAboveData = False t.TreeVisible = True t.SpillNode = True g = New Subtotalgroup g.Aggregate = AggregateEnum.Sum g.GroupOn = "型号" g.TotalOn = "生产数,实际成型回数,标准成型回数" g.Caption = "{0} 累计" g.upto = True t.SubtotalGroups.Add(g) t.Subtotal() Dim dlg As New SaveFileDialog \'定义一个新的OpenFileDialog dlg.Filter= "Excel文件|*.xls" \'设置筛选器 If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮 Dim Book As New XLS.Book(ProjectPath & "Attachments\\模具缺损率.xls") Dim fl As String = dlg.FileName Dim Sheet As XLS.Sheet = Book.Sheets(0) Sheet(3,9).Value = "<" & Tables("加硫").Filter & ">" \'写入打印条件 Book.Build() \'生成细节区 Book.Save(fl) \'保存工作簿 Dim Proc As New Process Proc.File = fl Proc.Start() End If
|
||||
-- 作者:大红袍 -- 发布时间:2015/6/8 19:51:00 -- 叫你先生成分组统计表,然后把分组统计表导出就行啊。
不会做,就把数据发上来。 |
||||
-- 作者:wangyinming -- 发布时间:2015/6/8 20:17:00 --
简单的分组初步完成, 还想追加 我想、 1.追后1列追加各个型号分组的“缺损率”, 表达式:实际成型回数-标准成型回数/标准成型回数 2. 最后一行有总计的数据,生产数、实际、标准、以及缺损率。 |
||||
-- 作者:大红袍 -- 发布时间:2015/6/8 20:28:00 -- Dim g As New GroupTableBuilder("统计表1", DataTables("加硫")) g.Groups.AddDef("型号") g.Totals.AddDef("生产数") g.Totals.AddDef("实际成型回数") g.Totals.AddDef("标准成型回数") g.VerticalTotal = True g.Build() Dim t As Table = Tables("统计表1") Dim dc = t.DataTable.DataCols.Add("缺损率", Gettype(Double), "(实际成型回数-标准成型回数)/标准成型回数") dc.SetFormat("0.00%") MainTable = Tables("统计表1") |
||||
-- 作者:wangyinming -- 发布时间:2015/6/8 20:41:00 -- 临时表要删除吗 |