以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]按钮代码:一次生成多个报表  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=2386)

--  作者:易服
--  发布时间:2009/4/10 14:27:00
--  [求助]按钮代码:一次生成多个报表

图片点击可在新窗口打开查看此主题相关图片如下:报表.gif
图片点击可在新窗口打开查看
如上图每次只能选择一个报表。想设一按钮一次性生成多个报表,"分组统计"是一个零时表,以下面三个报表的代码为例,只有红色部分不同,其它都相同。

With Tables("分组统计")
    .Select(0 ,0, .Rows.Count - 1, .Cols.Count - 1)
End with
Dim Book As New XLS.Book(ProjectPath & "Attachments\\结果分析表.xls") \'打开模板
Book.Build() \'生成细节区
Book.Save("e:\\报表\\结果分析表.xls") \'保存工作簿
Dim Proc As New Process \'打开工作簿
Proc.File = "e:\\报表\\结果分析表.xls"
Proc.Start()

With Tables("分组统计")
    .Select(0 ,0, .Rows.Count - 1, .Cols.Count - 1)
End with
Dim Book As New XLS.Book(ProjectPath & "Attachments\\林种统计表.xls") \'打开模板
Book.Build() \'生成细节区
Book.Save("e:\\报表\\林种统计表.xls") \'保存工作簿
Dim Proc As New Process \'打开工作簿
Proc.File = "e:\\报表\\林种统计表.xls"
Proc.Start()

With Tables("分组统计")
    .Select(0 ,0, .Rows.Count - 1, .Cols.Count - 1)
End with
Dim Book As New XLS.Book(ProjectPath & "Attachments\\面积统计表.xls") \'打开模板
Book.Build() \'生成细节区
Book.Save("e:\\报表\\面积统计表.xls") \'保存工作簿
Dim Proc As New Process \'打开工作簿
Proc.File = "e:\\报表\\面积统计表.xls"
Proc.Start()


--  作者:狐狸爸爸
--  发布时间:2009/4/10 14:35:00
--  
随便写的,没有测试,请自行调试:

Dim Names() AS String = {"结果分析表","林种统计表","面积统计表"}
For Each Name As String In Names
    With Tables("分组统计")
        .Select(0 ,0, .Rows.Count - 1, .Cols.Count - 1)
    End with
    Dim Book As New XLS.Book(ProjectPath & "Attachments\\" & Name & ".xls") \'打开模板
    Book.Build() \'生成细节区
    Book.Save("e:\\报表-:special:1:- & Name & ".xls") \'保存工作簿
    Dim Proc As New Process \'打开工作簿
    Proc.File = "e:\\报表-:special:1:- & Name & ".xls"
    Proc.Start()
Next

--  作者:易服
--  发布时间:2009/4/10 14:43:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:调试.jpg
图片点击可在新窗口打开查看

--  作者:狐狸爸爸
--  发布时间:2009/4/10 14:47:00
--  
论坛问题,导致乱码,你按照我得思路修改一下,例如:


图片点击可在新窗口打开查看此主题相关图片如下:abc.gif
图片点击可在新窗口打开查看

--  作者:易服
--  发布时间:2009/4/10 15:15:00
--  

成功了,谢谢!
[此贴子已经被作者于2009-4-10 15:23:56编辑过]

--  作者:易服
--  发布时间:2009/4/10 15:20:00
--  

怎么会变,多出\\"


--  作者:yangming
--  发布时间:2009/4/10 19:44:00
--  
学习了,呵呵
--  作者:xl
--  发布时间:2009/5/6 9:05:00
--  
在2楼文件中有这么一句:
Dim Book As New XLS.Book(ProjectPath & "Attachments\\林种统计表.xls") \'打开模板
若文件放入优盘中,在不同电脑上其盘符不同,怎样修改让电脑自动识别优盘位置?

--  作者:狐狸爸爸
--  发布时间:2009/5/6 10:53:00
--  

这里使用的是相对路径,在U盘也一样