Ik gebruik de volgende code:
Het probleem zit hem in:
Deze code zet keurig de printer met indexgetal 0 als active printer, maar ik wil de windows defaultprinter als active printer. De enige functie die in de buurt kom is .UseDefaultPrinter, maar dit is een form of report property en wordt op de een of andere manier overruled door de applications.printers(0).
Iemand een idee wat ik fout doe?
Alvast bedankt
Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| Private Sub Report_Open(Cancel As Integer) FindPrinter = False Set Database = CurrentDb SQL = "SELECT * FROM SERVER_STAM_998_Layouts WHERE Layout_ID=" & Report.OpenArgs Set RstReport = Database.openrecordset(SQL, , DbForwardOnly) Me.CHILD_001_Rpt_Header.Visible = RstReport("Layout_Koptekst") Me.CHILD_002_rpt_footer.Visible = RstReport("Layout_Voettekst") Afdr_AantalEx = RstReport("Layout_AantalExemplaren") X = 0 For Each Prnt In Application.Printers If Prnt.DeviceName = RstReport("Layout_Printer") Then Set Afdr_Printer = Application.Printers(X): FindPrinter = True X = X + 1 Next If FindPrinter = False Then Set Afdr_Printer = Applications.Printers(0) RstReport.Close Me.Application.Printer = Afdr_Printer Me.Report.Printer.Copies = Afdr_AantalEx End Sub |
Het probleem zit hem in:
Visual Basic:
1
| If FindPrinter = False Then Set Afdr_Printer = Applications.Printers(0) |
Deze code zet keurig de printer met indexgetal 0 als active printer, maar ik wil de windows defaultprinter als active printer. De enige functie die in de buurt kom is .UseDefaultPrinter, maar dit is een form of report property en wordt op de een of andere manier overruled door de applications.printers(0).
Iemand een idee wat ik fout doe?
Alvast bedankt