5

我的打印机名称是\\abc\First Floor A-Block它的取名 \abc\First Floor A-Block on NE04:。我应该如何打印它

Private oWord As Word.Application

Dim lobjDoc As Word.Document

Dim strFolder as String
Dim pd As New PrintDocument
Dim strPrintername as String
oWord = CreateObject("Word.Application")
oWord.DisplayAlerts = Word.WdAlertLevel.wdAlertsNone
oWord.ActivePrinter =strPrintername 
strFolder="D:\testdoc.prn"

' 这里我给出了网络上的打印机名称,但它的名字

\abc\NE04 上的一楼 A 座:

lobjDoc = oWord.Documents.Open(CType(strFolder, Object))

lobjDoc.PageSetup.FirstPageTray = Word.WdPaperTray.wdPrinterAutomaticSheetFeed

lobjDoc.PageSetup.OtherPagesTray = Word.WdPaperTray.wdPrinterAutomaticSheetFeed

lobjDoc.PrintOut(Background:=False, Append:=False, OutputFileName:=strFolder, PrintToFile:=True)  'here its giving error about printer settings

lobjDoc.Close(SaveChanges:=False)

有没有办法通过PrintDocument打印包含所有内容的 word 文档?

谢谢

4

1 回答 1

4

你可以试试这个:

首先使用 Windows 打印机设置将该打印机设置为默认打印机。然后手动打开 Word 并打开 VBA 编辑器,转到即时窗口并键入?ActivePrinter.

这应该有望为您提供您需要发送给 Word 以识别它的打印机名称的确切格式。

于 2010-06-02T07:34:52.403 回答