Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共7 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:依据订单表生成的交叉表列标题有问题

1楼
唐尸三摆手 发表于:2008/11/4 21:26:00
依据订单表,按照行标题为产品,列标题为日期,生成统计订单数量的交叉表。
此时,列标题为“2008-10-31”、“2008-11-01”格式,但是将此交叉表结果导出到access及execl文件,列标题均
变成了r**1、r**2这种样式,请问能否将FOXTABLE所见结果原样导出?
2楼
狐狸爸爸 发表于:2008/11/4 21:43:00
没有办法,因为2008-10-31不是一个有效的列名
用excel报表输出统计结果吧。
3楼
唐尸三摆手 发表于:2008/11/4 21:44:00
excel报表输出统计结果,可是列名称不是固定的呀
4楼
狐狸爸爸 发表于:2008/11/4 21:46:00
可以用代码修改模板,然后再build啊
5楼
唐尸三摆手 发表于:2008/11/4 21:49:00
能否提供简单实例
6楼
狐狸爸爸 发表于:2008/11/4 22:23:00
不用模板,直接用代码生成即可。

下面的代码完全通用,只需改一下表名:



Dim dt As Table = Tables("表名")

Dim Book As New XLS.Book '定义一个Excel工作簿

Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表

For c As Integer = 0 To dt.Cols.Count -1 '添加列标题

    Sheet(0, c).Value = dt.Cols(c).Caption

Next

For r As Integer = 0 To dt.Rows.Count - 1 '填入数据

    For c As Integer = 0 To dt.Cols.Count -1

        Sheet(r +1, c).Value = dt.rows(r)(c)

    Next

Next

'打开工作簿

Book.Save("c:\reports\test.xls")

Dim Proc As New Process

Proc.File = "c:\reports\test.xls"

Proc.Start()

7楼
唐尸三摆手 发表于:2008/11/5 12:11:00
成功,又学了一招,谢谢他爹啦
[此贴子已经被作者于2008-11-5 12:10:49编辑过]
共7 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03125 s, 2 queries.