2

次のコードを使用する場合

                Dim oWordApp As Word.Application
                Dim oTargetDoc As Word.Document
                oWordApp = New Word.Application

                Select Case SQLdr("Priority")
                    Case 1
                        oWordApp.WordBasic.FilePrintSetup(Printer:=printPriority1, DoNotSetAsSysDefault:=1)
                    Case 2
                        oWordApp.WordBasic.FilePrintSetup(Printer:=printPriority2, DoNotSetAsSysDefault:=1)
                    Case 3
                        oWordApp.WordBasic.FilePrintSetup(Printer:=printPriority3, DoNotSetAsSysDefault:=1)
                    Case 4
                        oWordApp.WordBasic.FilePrintSetup(Printer:=printPriority4, DoNotSetAsSysDefault:=1)
                    Case 5
                        oWordApp.WordBasic.FilePrintSetup(Printer:=printPriority5, DoNotSetAsSysDefault:=1)
                End Select

                oTargetDoc = oWordApp.Documents.Open(SQLdr("DocumentName") & ".doc")
                oWordApp.PrintOut()
                oWordApp.Documents.Close()
                oWordApp.Quit()

FilePrintSetupを使用してプリンターを設定すると、エラーが発生します。

Wordを手動で開いてドキュメントを印刷すると、正常に機能します。

私が使用しているプリンターはネットワークプリンターで、「\\ mhiav202 \ HPCM8060MFPPriority1」などのように見えます。

AdobeReaderを使っても問題なく印刷できます。

4

1 に答える 1

0

Note that the printername parameter of the fileprintsetup method is case-sensitive. XP and Win7 don't store server\printernames the same way so you may find a problem when upgrading OS

于 2012-05-24T14:12:16.690 に答える