IP adresse på printer
Jeg bruger følgende kode til at vælge en printer vha. VBADim prtLoop As Printer
Dim SearchString As String
Set Me.Application.Printer = Nothing
SearchString = "Citizen CLP-8301"
For Each prtLoop In Application.Printers
With prtLoop
If InStr(prtLoop.DeviceName, SearchString) > 0 Then
Set Application.Printer = Application.Printers(prtLoop.DeviceName)
Exit For
End If
End With
Next prtLoop
MsgBox Me.Application.Printer.DeviceName
Set Me.Application.Printer = Nothing
Det fungerer fint, bortset fra en ting:
Der er indtil flere brugere der har den samme printer installeret 2 gange, som en netværksprinter, Citizen CLP-8301 (Bærbar) og Citizen CLP-8301.
Koden vil jo kun vælge den første, hvilket er den forkerte printer.
Kan man ændre koden så jeg kan få fat i printeren på IP adressen?
Jeg har forsøgt med
If InStr(prtLoop.DeviceName, SearchString) > 0 Then
Set Application.Printer = Application.Printers(prtLoop.DeviceName)
If prtLoop.Port = "192.168.1.105" Then
Men her får jeg altid IP adressen på den printer som har et navn der kommer først i alfabetisk rækkefølge! :(
