Met VBA eerst de betreffende printerpoort (in Windows) vaststellen, deze dan selecteren,
en de originele deafault weer terug zetten.
Het zoeken van een printerpoort :
Maak een form met een listbox (list0) en in VBA :
Private Sub Form_Open(Cancel As Integer)
List0.RowSource = “”
index = 0
For Each prtloop In Application.printers
With prtloop
List0.RowSource = List0.RowSource & index & “;” & prtloop.DeviceName & “;” & prtloop.Port & “;”
End With
index = index + 1
Next prtloop
End Sub
Dit geeft een lijst van de geinstaleerde printers. (Die ‘andere’ printer moet dan natuurlijk wel
geshared en geinstalleerd zijn op je PC
Achter de knop om te printen eerst je eigen printer en dan :
'Bewaren Default printer
strDefaultPrinter = Application.Printer.DeviceName
'Juiste printer zetten, (deze poort is de poort uit de lijst hierboven)
poort = xxxx 'Bij mij staat DLookup(“bonprinterpoort”, “TblstationSetup”, “stationID=” & GetStationId)
setprinter2 poort 'zie hierna
DoCmd.OpenReport bonreport, , , “bonnummer=” & Val(nummer) & “”
'Terug schakelen naar de default printer
Set Application.Printer = Application.printers(strDefaultPrinter)
Sub setprinter2(poort)
If Application.printers.Count = 0 Then
MsgBox “geen printers gevonden”
Exit Sub
End If
If Application.printers.Count - 1 >= poort Then
Set Application.Printer = Application.printers(poort)
Else
MsgBox “Fout in printer instellingen!” & vbCrLf & “Default printer wordt gebruikt”
End If
End Sub
Succes
wimmie