以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]EXCEL报表打印的问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=2540) |
-- 作者:t_fs -- 发布时间:2009/4/21 10:45:00 -- [求助]EXCEL报表打印的问题 EXCEL报表直接打印代码 Dim Proc As New Process Proc.File = "C:\\test.xls" Proc.Verb = "Print" \'指定动作 Proc.Start() 以上是直接打印EXCEL报表的代码,如果稍加改动一下,改成先直接预览然后再打印。 请高手帮助修改一下。谢谢! [此贴子已经被作者于2009-4-21 10:45:43编辑过]
|
-- 作者:狐狸爸爸 -- 发布时间:2009/4/21 11:13:00 -- 如果这样,删除 Proc.Verb = "Print" \'指定动作 这样直接预览,如果想打印,再单击打印按钮。 |
-- 作者:yangming -- 发布时间:2009/4/21 11:23:00 -- 属性Verb可以设置打开的动作,不同的外部程序,支持的动作会不同,对于Excel文件,支持三个Verb动作: Open: 打开,这也是默认的动作。 OpenAsReadOnly:以只读方式打开 Print:打印,完成打印后自动关闭 |
-- 作者:t_fs -- 发布时间:2009/4/21 13:25:00 -- 以下是引用狐狸爸爸在2009-4-21 11:13:00的发言:
如果这样,删除 Proc.Verb = "Print" \'指定动作 这样直接预览,如果想打印,再单击打印按钮。 删除 Proc.Verb = "Print" 后,并不是直接预览,而是打开文件。 |
-- 作者:shxiaoya -- 发布时间:2009/4/21 13:40:00 -- Dim Book As New XLS.BookDim Sheet As XLS.Sheet = Book.Sheets(0) Sheet.Locked = True \'禁止编辑 Book.Save("C:\\test.xls") \'保存工作簿 Dim Proc As New Process \'打开工作簿 Proc.File = "C:\\test.xls" Proc.Start() |
-- 作者:yangming -- 发布时间:2009/4/21 13:44:00 -- OpenAsReadOnly,这个没有达到目的,那是微软的问题,目前只能按五楼的代码处理只读的问题了 [此贴子已经被作者于2009-4-21 13:46:45编辑过]
|
-- 作者:t_fs -- 发布时间:2009/4/21 14:19:00 -- 以下是引用shxiaoya在2009-4-21 13:40:00的发言:
Dim Book As New XLS.BookDim Sheet As XLS.Sheet = Book.Sheets(0) Sheet.Locked = True \'禁止编辑 Book.Save("C:\\test.xls") \'保存工作簿 Dim Proc As New Process \'打开工作簿 Proc.File = "C:\\test.xls" Proc.Start() 谢谢回复! |
-- 作者:狐狸爸爸 -- 发布时间:2009/4/21 14:24:00 -- 以下是引用t_fs在2009-4-21 14:19:00的发言:
谢谢回复!
|
-- 作者:blackzhu -- 发布时间:2009/4/21 15:15:00 -- 以下是引用t_fs在2009-4-21 14:19:00的发言:
谢谢回复! im Book As New XLS.Book(ProjectPath & "Attachments\\模板.xls") \'打开模板 Proc.Start() |
-- 作者:yangming -- 发布时间:2009/4/21 15:58:00 -- Dim Book As New XLS.Book(ProjectPath & "Attachments\\出库单.xls") \'打开模板 Dim Sheet As XLS.Sheet = Book.Sheets(0) Sheet.Locked = True \'禁止编辑 Book.Build() \'生成细节区 Book.Save("c:\\reports\\test.xls") \'保存工作簿 Dim Proc As New Process \'打开工作簿 Proc.File = "c:\\reports\\test.xls" Proc.Start() 这样看看,你可以在范例中的:Excel报表.table中的命令窗口中测试此代码 |