以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]excel报表实现 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=12443) |
||||||||||||||||||||
-- 作者:yjk1023 -- 发布时间:2011/9/3 10:33:00 -- [求助]excel报表实现 能用excel报表功能实现这样的表吗
|
||||||||||||||||||||
-- 作者:yjk1023 -- 发布时间:2011/9/3 10:36:00 -- 原始的数据表是这样的
|
||||||||||||||||||||
-- 作者:紙上不談兵 -- 发布时间:2011/9/3 11:17:00 -- 在Fox中生成"分栏"表,根据此表生成Excel报表: Dim jb As New SQLJoinTableBuilder("分栏","表A") jb.AddCols("姓名","金额") jb.AddExp("姓名1","姓名") jb.AddExp("金额1","金额") jb.build Dim t1,t2 As Table t1 = Tables("表A") t2 = Tables("分栏") t2.DataTable.DataRows.Clear Dim n As Integer = t1.DataTable.Compute("count(金额)","姓名 is not null") t2.AddNew(Math.Ceiling(n/2)) For n = 0 To t2.Rows.count-1 t2.Rows(n)("姓名") = t1.Rows(2*n)("姓名") t2.Rows(n)("金额") = t1.Rows(2*n)("金额") t2.Rows(n)("姓名1") = t1.Rows(2*n+1)("姓名") t2.Rows(n)("金额1") = t1.Rows(2*n+1)("金额") Next [此贴子已经被作者于2011-9-3 11:42:39编辑过]
|
||||||||||||||||||||
-- 作者:blackzhu -- 发布时间:2011/9/3 12:22:00 -- 还有简单的就是直接引用. |
||||||||||||||||||||
-- 作者:yjk1023 -- 发布时间:2011/9/4 9:19:00 -- 以下是引用紙上不談兵在2011-9-3 11:17:00的发言:
Dim jb As New SQLJoinTableBuilder("分栏","表A")
jb.AddCols("姓名","金额")
jb.AddExp("姓名1","姓名")
jb.AddExp("金额1","金额")
jb.build
Dim t1,t2 As Table
t1 = Tables("表A")
t2 = Tables("分栏")
t2.DataTable.DataRows.Clear
Dim n As Integer = t1.DataTable.Compute("count(金额)","姓名 is not null")
t2.AddNew(Math.Ceiling(n/2))
For n = 0 To t2.Rows.count-1
t2.Rows(n)("姓名") = t1.Rows(2*n)("姓名")
t2.Rows(n)("金额") = t1.Rows(2*n)("金额")
t2.Rows(n)("姓名1") = t1.Rows(2*n+1)("姓名")
t2.Rows(n)("金额1") = t1.Rows(2*n+1)("金额")
Next
不知道在哪个事件中加入代码?请问这里的知识点是哪儿的?
[此贴子已经被作者于2011-9-3 11:42:39编辑过] |
||||||||||||||||||||
-- 作者:yjk1023 -- 发布时间:2011/9/4 9:23:00 -- 最好能上个例子,先谢了! |
||||||||||||||||||||
-- 作者:布莱克朱 -- 发布时间:2011/9/4 9:25:00 -- 这个做个按钮,但是这段代码下必须加入打印报表的代码,如果觉得烦,在帮助里面找直接引用的那一章也可以的. |
||||||||||||||||||||
-- 作者:yjk1023 -- 发布时间:2011/9/4 9:45:00 -- 直接引用不错,适用于数据少的,多的就不行了 |
||||||||||||||||||||
-- 作者:狐狸爸爸 -- 发布时间:2011/9/4 11:38:00 -- 用这个,应该可以解决的:
http://www.foxtable.com/help/topics/1414.htm
|
||||||||||||||||||||
-- 作者:yjk1023 -- 发布时间:2011/9/4 22:42:00 -- 用标签最简单!学习了! |