views:

231

answers:

1

Hi

My printer name is \\abc\First Floor A-Block its taking name \abc\First Floor A-Block on NE04:. How should i print it

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"

' Here I am giving the printer name which is on network, But its taking name

\abc\First Floor A-Block on NE04:

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)

Is there any way to print word document with all its content through PrintDocument?

thanks

+1  A: 

You can try this:

First use the Windows printer settings to set that printer as the default printer. Then open Word by hand and open the VBA editor, go to the immediate window and type ?ActivePrinter.

This should hopefully give you the exact format for the printer name that you need to send in for Word to recognize it.

ho1