以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- word vba 怎么无法打印出来文件呢? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=169834) |
|
-- 作者:cnsjroom -- 发布时间:2021/7/2 17:04:00 -- word vba 怎么无法打印出来文件呢? word vba 怎么无法打印出来文件呢?麻烦老师帮忙看看! Dim dy As WinForm.ComboBox = e.Form.Controls("打印机") Dim t3 As WinForm.TextBox = e.Form.Controls("单元格行") Dim t4 As WinForm.TextBox = e.Form.Controls("单元格列") Dim t5 As WinForm.TextBox = e.Form.Controls("文件目录") Dim t6 As WinForm.TextBox = e.Form.Controls("单元格新值") Dim t7 As WinForm.TextBox = e.Form.Controls("运行状态") Dim js As WinForm.Label = e.Form.Controls("计数") Dim wj As WinForm.ComboBox = e.Form.Controls("文件后缀") Dim abc As Integer= 0 Dim dt = t7.BaseControl Dim App As New MSWord.Application If dy.text=""then MessageBox.Show("请选择打印机!") Else If t5.value="" Then MessageBox.Show("请输入文件所在目录") Else For Each File As String In FileSys.GetFiles(t5.value) Dim ifo As new FileInfo(File) If ifo.Name.Contains("~$") Then Else If ifo.Extension.Contains(wj.text) Then Dim doc As Object = app.Documents.Open(file) app.ActiveWindow.Selection.WholeStory doc.PrintOut(ActivePrinter:=dy.text) abc=abc+1 App.Quit js.Text= "已完成" & abc & "件/次!" t7.Text= t7.Text & vbcrlf & "【" & ifo.Name & "】记录,已加入打印队列!" t7.SelectionStart = t7.Text.Length dt.ScrollToCaret Application.DoEvents End If End If Dim sc As WinForm.RadioButton = e.Form.Controls("打印后是否删除文件") If sc.Checked=True If FileSys.FileExists(File) Then \'如果指定的文件存在 FileSys.DeleteFile(File,2,2) \'则彻底删除之 End If End If Next End If End If
|
|
-- 作者:有点蓝 -- 发布时间:2021/7/2 17:30:00 -- 看不出什么问题,看看打印执行没有 msgbox(1) doc.PrintOut(ActivePrinter:=dy.text) msgbox(2) 如果执行了就是打印机和打印驱动的问题了
|
|
-- 作者:cnsjroom -- 发布时间:2021/7/2 17:42:00 -- 回复:(有点蓝)看不出什么问题,看看打印执行没有ms...
会报错: .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2020.5.29.8 错误所在事件:窗口,窗口1,Button2,Click 详细错误信息: 未找到类型“DocumentClass”的公共成员“PrintOut”。 [此贴子已经被作者于2021/7/2 18:27:49编辑过]
|
|
-- 作者:有点蓝 -- 发布时间:2021/7/3 8:53:00 -- Ws.PrintOut(ActivePrinter:=dy.text)
|
|
-- 作者:cnsjroom -- 发布时间:2021/7/3 10:38:00 -- 回复:(有点蓝)http://www.foxtable.com/webhelp/to... 怎么修改成msword呢? |
|
-- 作者:有点蓝 -- 发布时间:2021/7/3 11:23:00 -- 哦,看错了,试试 Dim doc As Object = app.Documents.Open(file) app.ActiveWindow.Selection.WholeStory doc.ActivePrinter = dy.text doc.PrintOut |
|
-- 作者:cnsjroom -- 发布时间:2021/7/3 11:44:00 -- 回复:(有点蓝)哦,看错了,试试  ... 老师 现在是提示 未找到类型“DocumentClass”的公共成员“ActivePrinter”。
|
|
-- 作者:有点蓝 -- 发布时间:2021/7/3 12:04:00 -- app.ActivePrinter = dy.text |
|
-- 作者:cnsjroom -- 发布时间:2021/7/3 12:31:00 -- 回复:(有点蓝)app.ActivePrinter = dy.text 现在可以打印了 但是指定文件夹下 如果有多个word文件 只能正常打印一个 其他的就提示如下错误: .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2020.5.29.8 错误所在事件:窗口,窗口1,Button2,Click 详细错误信息: 异常来自 HRESULT:0x800A16C1 .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2020.5.29.8 错误所在事件:窗口,窗口1,Button2,Click 详细错误信息: 被呼叫方拒绝接收呼叫。 (异常来自 HRESULT:0x80010001 (RPC_E_CALL_REJECTED)) |
|
-- 作者:有点蓝 -- 发布时间:2021/7/3 14:23:00 -- App.Quit放到最后一行 |