ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Calling the Print Form (https://www.excelbanter.com/excel-programming/329890-calling-print-form.html)

Derek from Belgium

Calling the Print Form
 
This is probably very easy: how can I call Print Form in a VBA procedure ?
I want the user to select his printer.

Thanks !!
Derek

galimi[_2_]

Calling the Print Form
 
Derek,

I've used the following code to set printer connectivity. You need to set a
reference to the Windows Script Host Object Model.

'Windows Script Hosting Reference to determine printer connections
Application.StatusBar = "Setting references to Windows Scripting Host"
Dim objScriptControl As iwshnetwork_class
Dim colPrinters As IWshCollection_Class
Set objScriptControl = New iwshnetwork_class
Set colPrinters = objScriptControl.EnumPrinterConnections

Application.StatusBar = "Looking for a Postscript printer"
blnPrinterFound = False
With colPrinters
For intIndex = 0 To .Count
strPrinterName = .Item(intIndex)
If InStr(1, strPrinterName, strPrinterType, vbTextCompare) Or _
InStr(1, strPrinterName, strPrinterType2, vbTextCompare) Then

blnPrinterFound = True

Exit For
End If
strPrinterName = vbNullString
Next intIndex
End With
If blnPrinterFound = False Then
MsgBox "No valid Postscript printer", vbCritical, "Printer"
Exit Sub
End If

The bulk of this code will have to be changed for your purposes, but,
hopefully this is helpful.
--
http://HelpExcel.com
1-888-INGENIO
1-888-464-3646
x0197758


"Derek from Belgium" wrote:

This is probably very easy: how can I call Print Form in a VBA procedure ?
I want the user to select his printer.

Thanks !!
Derek


Tom Ogilvy

Calling the Print Form
 
Possibly one of these:

Application.Dialogs(xlDialogPrint).show
application.Dialogs(xlDialogPrinterSetup).Show

To demonstrate from the immediate window:

? application.ActivePrinter
\\ardaps01\1D343E on Ne02:
? application.Dialogs(xlDialogPrinterSetup).Show
' selected printer G
? application.ActivePrinter
\\ardaps01\1D343G on Ne04:

--
Regards,
Tom Ogilvy



"Derek from Belgium" <Derek from wrote in
message ...
This is probably very easy: how can I call Print Form in a VBA procedure ?
I want the user to select his printer.

Thanks !!
Derek





All times are GMT +1. The time now is 04:28 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com