以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- dlg.FileName (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=175269) |
|
-- 作者:aaa1234 -- 发布时间:2022/2/26 14:44:00 -- dlg.FileName With DataTables("table_3") .LoadTop = 200 .LoadPage = 0 .Load() End With With DataTables("table_3") Do While .LoadPage < .TotalPages - 1 .LoadPage = .LoadPage + 1 Dim dlg As New SaveFileDialog \'定义一个新的SaveFileDialog Dim Book As New XLS.Book(ProjectPath & "Attachments\\111.xls") \'打开模板 Dim Sheet As XLS.Sheet = Book.Sheets(0) gc.Collect Book.Build() \'生成细节区 Book.Save("D:\\data" & ) Dim Proc As New Process \'打开工作簿 Proc.File = dlg.FileName Proc.Start() .Load() Loop End With 每一页加1怎么写 [此贴子已经被作者于2022/2/26 14:51:46编辑过]
|
|
-- 作者:有点蓝 -- 发布时间:2022/2/26 14:52:00 -- 分别取 文件名:GetName 把文件名根据点号(.)拆分:Split,拆分后的数组项0就是文件名直接&1, 最后再把目录、&1后的文件名、拆分后的数组项1,使用&合并为一个字符串 |
|
-- 作者:aaa1234 -- 发布时间:2022/2/26 14:52:00 -- With DataTables("table_3") .LoadTop = 200 .LoadPage = 0 .Load() End With With DataTables("table_3") Do While .LoadPage < .TotalPages - 1 .LoadPage = .LoadPage + 1 Dim dlg As New SaveFileDialog \'定义一个新的SaveFileDialog Dim Book As New XLS.Book(ProjectPath & "Attachments\\111.xls") \'打开模板 Dim Sheet As XLS.Sheet = Book.Sheets(0) gc.Collect Book.Build() \'生成细节区 Book.Save("D:\\data" & ) Dim Proc As New Process \'打开工作簿 Proc.File = dlg.FileName Proc.Start() .Load() Loop End With 每一页加1怎么写
|
|
-- 作者:aaa1234 -- 发布时间:2022/2/26 14:53:00 -- 还有就是分页不清除筛选的数据怎么弄 ,就是分页只分筛选后的页 应该怎么弄 |
|
-- 作者:有点蓝 -- 发布时间:2022/2/26 15:05:00 -- Book.Save("D:\\data" & .LoadPage & “.xls”)
|
|
-- 作者:aaa1234 -- 发布时间:2022/2/26 15:12:00 -- .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2022.1.30.2 错误所在事件:窗口,主控窗口,Button36,Click 详细错误信息: 引发类型为“System.OutOfMemoryException”的异常。
[此贴子已经被作者于2022/2/26 15:21:35编辑过]
|
|
-- 作者:aaa1234 -- 发布时间:2022/2/26 15:25:00 -- With DataTables("table_3") .loadfilter = Tables("table_3").filter .LoadTop = 200 .LoadPage = 0 .Load() End With With DataTables("table_3") Do While .LoadPage < .TotalPages - 1 .LoadPage = .LoadPage + 1 Dim dlg As New SaveFileDialog \'定义一个新的SaveFileDialog Dim Book As New XLS.Book(ProjectPath & "Attachments\\111.xls") \'打开模板 Dim Sheet As XLS.Sheet = Book.Sheets(0) gc.Collect Book.Build() \'生成细节区 Book.Save("D:\\data" & .LoadPage & ".xls") .Load() Loop End With
[此贴子已经被作者于2022/2/26 15:25:20编辑过]
|
|
-- 作者:有点蓝 -- 发布时间:2022/2/26 15:25:00 -- 完整代码 |
|
-- 作者:aaa1234 -- 发布时间:2022/2/26 15:26:00 -- 发了 |
|
-- 作者:有点蓝 -- 发布时间:2022/2/26 16:02:00 -- 试试,不行就减少加载的数据 With DataTables("table_3") .loadfilter = Tables("table_3").filter .LoadTop = 200 .LoadPage = 0 .Load() Dim Book As New XLS.Book(ProjectPath & "Attachments\\111.xls") \'打开模板 Dim Sheet As XLS.Sheet = Book.Sheets(0) Book.Build() \'生成细节区 Book.Save("D:\\data0.xls") End With gc.Collect System.Threading.Thread.Sleep(1000) With DataTables("table_3") Do While .LoadPage < .TotalPages - 1 .LoadPage = .LoadPage + 1 .Load() Dim Book As New XLS.Book(ProjectPath & "Attachments\\111.xls") \'打开模板 Dim Sheet As XLS.Sheet = Book.Sheets(0) Book.Build() \'生成细节区 Book.Save("D:\\data" & .LoadPage & ".xls") gc.Collect System.Threading.Thread.Sleep(1000) Loop End With |