设计了一个excel报销单模板,在打印环节遇到困难。使用的打印纸规格为241mm二等分,这样打印页面应设置为24*14.
虽然已经将默认打印机设置成24*14的规格,但是使用代码:
Dim Proc As New Process '打开工作簿
Proc.File = fl
Proc.Verb = "Print" '指定动作 直接打印
Proc.Start()
但是实际打印时,还是被Excel强行接管,excel顽固地使用A4规格打印。
就是说,代码Proc.Verb = "Print"不能直接使用默认打印机设置的页面规格去打印。
没办法只好打印每一单时去掉代码Proc.Verb = "Print"而采用预览打印的办法,每一单都要重新设置一下页面再打印。
这样打印工作效率太低,不被操作者待见,只能被吐槽。只能尴尬面对。
为了提高工作效率,原本是要对选择的文档连续打印的,更无望了。
至于采用代码进行页面设置
Dim Book As New
XLS.Book
Dim Sheet As XLS.Sheet = Book.Sheets(0)
With Sheet.PrintSetting
.PaperKind = 9
'设为A4纸
这个打印纸241mm二等分为非国际标准,找不到纸张编号
狐表帮助提供的纸张编号与类型表找不到它的身影。
希望解决了此问题的高手能现身说法。
最后声明,我说的尴尬是我在用户面前尴尬。
[此贴子已经被作者于2020/5/14 16:07:41编辑过]