Access 2007; VBA printen

Status
Niet open voor verdere reacties.

Basenburgen

Gebruiker
Lid geworden
25 feb 2011
Berichten
59
Hallo,

ik ben pas begonnen met mezelf VBA aan te leren dus ben er nog niet zo'n ster in.
Ik wil op een formulier een knop maken die een rapport afdrukt.
Afhankelijk van een variabele moet hij het naar de een of de andere variabele sturen.

Ik heb wat zitten googlen maar kom er helaas toch nog niet uit.

Code:
Private Sub cmdPrint_Click()
If Me.Categorie = "1" Then
'iets dat de defaultprinter wijzigt in bijvorobeeld printer 1
DoCmd.OpenReport "RPT_Rapport", acViewPreview
DoCmd.PrintOut
DoCmd.Close
End If

If Me.Categorie = "2" Then
'iets dat de defaultprinter wijzigt in bijvorobeeld printer 2
DoCmd.OpenReport "RPT_Rapport", acViewPreview
DoCmd.PrintOut
DoCmd.Close
End If
End Sub

Op deze manier opent hij het rapport, print hij braaf naar de standaard printer en sluit hij het rapport weer.

Maar misschien kan ik de standaard printer eenvoudig veranderen?
(Dat ik bij printers in configuratiescherm de twee printers bijvoorbeeld "Printer1" en "Printer2" noem en hiernaar verwijs?)

Hopelijk kan iemand me hiermee helpen alvast bedankt
 
In de meest eenvoudige vorm, zou de code er zo uit kunnen zien:
Code:
Private Sub cmdPrint_Click()
    Dim strDefaultPrinter     As String
    'haal naam standaard printer op
    strDefaultPrinter = Application.Printer.DeviceName

    'verander de standaard printer b.v.
    Set Application.Printer = Application.Printers("EPSON Stylus Photo R285 Series")
    DoCmd.OpenReport "rptMijnRapport"

    'zet de standaard printer terug
    Set Application.Printer = Application.Printers(strDefaultPrinter)
End Sub
 
Ontzettend bedankt! :D
ik zat te stoeien met de Application.Printers maar ik zie dat ik hem eerder verkeerd gebruikt heb. :confused:
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan