Selecteren van een printer

Status
Niet open voor verdere reacties.

WillemSchaaper

Gebruiker
Lid geworden
2 nov 2004
Berichten
22
Hallo Allemaal

Ik heb een excel file op diverse computers in een netwerk (ongeveer 30).
Deze computers moeten het bestand via een macro printen op een bepaalde printer. Omdat de bewuste printer niet op alle computers via start/instellingen/printers printer toevoegen is te bereiken, wil graag weten of het mogelijk is om dit via een macro rechtstreeks naar die printer te versturen.

Alvast bedankt

Willem Schaaper
 
Volgens mij moet dat gewoon kunnen door een macro op te nemen, je handelingen uit te voeren en dat macro vervolgens af te spelen?
 
Hai, :D

Als je na een specifieke printer wilt printen moet je de ActivePrinter in VBA veranderen dat ziet er in code zo uit. (Deze krijg je als je het wisselen van de printer opneemt uit Bestand/Print-dialoog)
Code:
    Application.ActivePrinter = "Auto OKIPAGE 24DX on DISCO op Ne02:"
Deze printstring moet bestaan uit de naam van de printer in dit geval: "Auto OKIPAGE 24DX"

En daarachter de printserver en/of de poortnaam in dit geval: on DISCO op Ne02:

Zonder de correcte printstring gaat jou printje niet lukken (naar een printer welke niet jou default is)

Overigens geloof ik dat Office 97 alleen de printernaam hoeft te hebben.

Jij zegt dat de printer niet benaderbaar is vanuit printers toevoegen..Hier zit het addertje volgens mij want als er geen printerdriver aanwezig is dan kun je er volgens mij ook niet naar printen...

Controleer het gewoon daar als de printer niet voorkomt in de Printdialoog Bestand/printen dan kun je er dus ook niet naar toe printen! (Vermoed ik)

De printactie kun je inderdaad zoals vermeld gewoon opnemen..(en eventueel hier laten finetunen)

See Yah! :thumb:
 
Hallo Joost en Hangmat

Ik heb nog even doorgezocht op internet en kwam de volgende oplossing tegen.
Deze macro selecteert de printer:

Sub instaleer_printer()
Dim net
Set net = CreateObject("WScript.Network")
net.AddWindowsPrinterConnection "\\ijmpr00\pr11765"
End Sub

Deze macro print het bestand vervolgens uit:
Sub print_naar_WOW_printer()
instaleer_printer
Dim strCurrentPrinter As String
strCurrentPrinter = Application.ActivePrinter ' onthoud de standaard active printer
On Error Resume Next ' negeer print fouten
Application.ActivePrinter = "\\ijmpr00\PR11765 op Ne03:" ' switch naar een andere printer
ActiveSheet.PrintOut ' print de actieve sheet
Application.ActivePrinter = strCurrentPrinter ' terug naar de standaard printer
On Error GoTo 0 ' hervat de normale fout afhandeling
End Sub

In ieder geval bedankt voor het meedenken

Groeten Wilem Schaaper
 
Hai Willem, :D

Fijn dat je eruit bent en graag gedaan hoor!

Zet jij hem nog even op afgehandeld aub? (Rechtsonder vraag is opgelost) :thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan