以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  【求助】帮我看看这段代码为啥不能运行呢  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=64730)

--  作者:wang1988sen
--  发布时间:2015/2/28 10:31:00
--  【求助】帮我看看这段代码为啥不能运行呢
帮我看看这段代码为啥运行不了呢,移动代码是说明书中的,我修改了就不能用了,特意直接复制说明书不修改也不能用,不知道是不是说明书这段代码就有问题呢。

代码的意思是    用(ProjectPath & "Attachments\\汇总成绩报表模板.xls")生成报表,保存至ProjectPath & "Reports\\导出分组成绩.xls"。然后将该导出工作表移动到我设置好有vba代码程序的工作薄(ProjectPath & "Attachments\\汇总成绩报表模板【程序】.xls")中新建的工作表中,为不破坏该带vba的工作薄另存到(ProjectPath & "Reports\\导出分组成绩【程序】.xls")并且打开。这是代码会自动运行,这样就不好破坏模板和我设置好vba的工作薄。


MainTable = Tables("学生成绩表")
Dim Book As New XLS.Book(ProjectPath & "Attachments\\汇总成绩报表模板.xls")
Dim fl As String = ProjectPath & "Reports\\导出分组成绩.xls"
Book.Build() \'生成细节区
Book.Save(fl) \'保存工作簿
Dim Book1 As New XLS.Book(ProjectPath & "Reports\\导出分组成绩.xls")
Dim Book2 As New XLS.Book(ProjectPath & "Attachments\\汇总成绩报表模板【程序】.xls")
Dim Sheet = Book1.Sheets("Sheet1")
Book1.Sheets.Remove(Sheet)
Book2.Sheets.Add(Sheet)
Book2.Save(ProjectPath & "Reports\\导出分组成绩【程序】.xls")
Dim App As New MSExcel.Application
App.Visible = True
Dim Wb As MSExcel.Workbook = App.WorkBooks.Open(ProjectPath & "Reports\\导出分组成绩【程序】.xls")


--  作者:Bin
--  发布时间:2015/2/28 10:36:00
--  
你这是干嘛,你又移回来?那你生成的模版有什么用?
--  作者:wang1988sen
--  发布时间:2015/2/28 10:40:00
--  
模板就是生成报表,要引用数据,然后将这个生成的数据移动我提前编有vba代码的工作薄中。这样提前编的程序功能就可以把这个任务完成了。为不破坏这个工作薄所以两次另存。
--  作者:wang1988sen
--  发布时间:2015/2/28 10:43:00
--  
这样也可以移动后直接打开。这段移动代码不能运行,其他代码都 可以,红色部分出错了

MainTable = Tables("学生成绩表")
Dim Book As New XLS.Book(ProjectPath & "Attachments\\1111.xls")
Dim fl As String = ProjectPath & "Reports\\2222.xls"
Book.Build() \'生成细节区
Book.Save(fl) \'保存工作簿
Dim Book1 As New XLS.Book(ProjectPath & "Reports\\2222.xls")
Dim Book2 As New XLS.Book(ProjectPath & "Attachments\\汇总成绩报表模板【程序】3333.xls")
Dim Sheet = Book1.Sheets("Sheet1")
Book1.Sheets.Remove(Sheet)
Book2.Sheets.Add(Sheet)
Dim App As New MSExcel.Application
App.Visible = True
Dim Wb As MSExcel.Workbook = App.WorkBooks.Open(ProjectPath & "Attachments\\3333.xls")

3333这个文件有代码,生成的报表2222中代码不能运行,所以用插入工作表,将生成的报表插入这个里面打开,这样代码可以运行。
[此贴子已经被作者于2015/2/28 10:47:55编辑过]

--  作者:Bin
--  发布时间:2015/2/28 10:48:00
--  
http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=64722