Foxtable(狐表)用户栏目专家坐堂 → 打印的筛选范围如何不受窗口筛选的影响?


  共有2763人关注过本帖树形打印复制链接

主题:打印的筛选范围如何不受窗口筛选的影响?

帅哥哟,离线,有人找我吗?
1qaz2wsx
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:64 积分:484 威望:0 精华:0 注册:2021/4/2 16:54:00
打印的筛选范围如何不受窗口筛选的影响?  发帖心情 Post By:2023/4/12 7:54:00 [只看该作者]

Dim Book As New XLS.Book(ProjectPath & "Attachments\订单.xls") '打开模板
Dim
fl As String = ProjectPath & "Reports\订单.xls"
Dim
Sheet As XLS.Sheet = Book.Sheets(0)
Sheet
(3,9).Value = "<日期 = # " & Date.Today & "#>"  '写入打印条件
Book.Build()
'生成报表
Book.Save(fl)

Dim
Proc As New Process
Proc.File = fl
Proc.Start()

上面这段代码是应用指南中的一段打印代码,在学习中发现个情况:这个代码会在订单表中筛选出符合条件(日期 = # " & Date.Today)的订单做打印处理。但当在订单表中做了筛选,比如筛选出PD1产品订单,这时这段打印代码就会在PD1产品中再筛选出符合条件(日期 = # " & Date.Today)的订单做打印。

请问老师:如何做,才能让打印时筛选范围不受表中筛选操作的影响,只受上面代码中打印条件的控制,筛选的范围总是整个表?


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110562 积分:562700 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/12 8:42:00 [只看该作者]

dim s as string = tables("订单").filter
tables("订单").filter="" 取消筛选
Dim Book As New XLS.Book(ProjectPath & "Attachments\订单.xls"'打开模板
Dim 
fl As String = ProjectPath & "Reports\订单.xls"
Dim 
Sheet As XLS.Sheet = Book.Sheets(0)
Sheet
(3,9).Value = "<日期 = # " & Date.Today & "#>"  '写入打印条件
Book.Build() 
'生成报表
Book.Save(fl)
tables("订单").filter = s 还原筛选
Dim 
Proc As New Process
Proc.File = fl
Proc.Start()

 回到顶部
帅哥哟,离线,有人找我吗?
1qaz2wsx
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:64 积分:484 威望:0 精华:0 注册:2021/4/2 16:54:00
  发帖心情 Post By:2023/4/12 17:14:00 [只看该作者]

谢谢!明白了。

 回到顶部
帅哥哟,离线,有人找我吗?
1qaz2wsx
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:64 积分:484 威望:0 精华:0 注册:2021/4/2 16:54:00
  发帖心情 Post By:2023/4/12 18:56:00 [只看该作者]

再请教老师一个问题:
Dim Book As New XLS.Book(ProjectPath & "Attachments\订单.xls")
Dim fl As String = ProjectPath & "Reports\订单.xls"

Dim Filter As String
Filter = "打印日期 : " & Date.Today & ""

Dim Sheet As XLS.Sheet = Book.Sheets(0)
Sheet(1, 11).Value = Filter '写入打印日期(已实现)
Sheet(1, 3).Value = Filter '写入标题,该如何实现?
Book.Build()
Book.Save(fl)
Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(fl)
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
App.Visible = True
ShowAppWindow("订单", 2)
Ws.PrintPreview
App.Quit
上面的代码是我学习应用指南后照着做的,实现了选中定单表的某行就可以打印的目的。我的求助是:想把订单表中的日期(格式:2023-04-12)经过格式转化后组成“二0二三年四月份定单”的形式,做为这个表的标题,以上面代码中红色一行的形式写入模板,不知在上面的代码中该加入哪些语句来实现,请老师帮忙。感谢!
[此贴子已经被作者于2023/4/13 8:13:21编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110562 积分:562700 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/13 8:32:00 [只看该作者]

http://www.foxtable.com/webhelp/topics/1578.htm

Sheet(1, 3).Value = CLDate(Date.Today) & “定单

 回到顶部
帅哥哟,离线,有人找我吗?
1qaz2wsx
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:64 积分:484 威望:0 精华:0 注册:2021/4/2 16:54:00
  发帖心情 Post By:2023/4/13 8:55:00 [只看该作者]

对不起,可能是我没有描述清楚。这个定单的标题我是想用定单表中定单的时间,如:打印的时间是现在(Today),但所打印的定单的时间可能是上月或以前的,这时这个标题是“一九九八年六月份定单”(举例)。

 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110562 积分:562700 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/13 9:15:00 [只看该作者]

Sheet(1, 3).Value = CLDate(tables(“订单”).current("日期")) & “定单

 回到顶部
帅哥哟,离线,有人找我吗?
1qaz2wsx
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:64 积分:484 威望:0 精华:0 注册:2021/4/2 16:54:00
  发帖心情 Post By:2023/4/13 10:16:00 [只看该作者]

学习了,谢谢老师!

 回到顶部