Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo Gemeinde,

wir haben hier im Betrieb ein ein Excel VBA-Modul, welches direkt auf den lokalen LPT1 ein Print-Statement weiterleitet, damit wir dort Etiketten drucken können. Will heißen: Der Drucker hat keinen Druckertreiber sondern interpretiert direkt den LPT1 aufruf. Zur Veranschaulichung der Quelltext:

Sub Etikettendruck()


Open "LPT1" For Output As #1


Dim Zähler As Integer

Dim Zeile, Spalte, Dummy As Integer

Dim z

Dim Temp$

Dim Hostname$

Dim AssetID$

Dim Stückzahl$


Zeile = 0: Dummy = 0


For Each z In Selection

  If z <> "" Then ' wenn "etwas" in der Markierung, ...

    Zeile = z.Row ' Merke in welcher Zeile, ...

    Spalte = z.Column ' Merke in welcher Spalte, ...


    Select Case Spalte

      Case 1: y$ = "A"

      Case 2: y$ = "B"

      Case 3: y$ = "C"

      Case 4: y$ = "D"

    End Select


    If Zeile <> Dummy Then ' ist es keine Mehrfachmarkierung, ...


      Range(y$ + CStr(Zeile)).Activate ' aktiviere Zelle, ...


      ' Werte aus den Zellen holen, ...

      Hostname$ = Cells(ActiveCell.Row, Spalte) '1

      AssetID$ = Cells(ActiveCell.Row, Spalte + 1) '2

      Stückzahl$ = "1"


      Dummy = Zeile ' und aktuelle Zeile Merken, ...


      'Drucke an "LPT1:", ....

      Print #1, "mm"

      Print #1, "z0"

      Print #1, "J"

      Print #1, "OR"

      Print #1, "H100,0,T"


      'Format 76 x 25 mm

      Print #1, "Sl1;0.0,0.0,25.0,25.0,76.0"


      'Offset in X / Y

      Print #1, "D3.0,1.0"


      'Textausgabe

      Print #1, "T04.0,06.0,0,3,PT 14;Firma XY GmbH"

      Print #1, "T04.0,11.0,0,3,PT 12;Hostname:"

      Print #1, "T27.0,11.0,0,3,PT 12;" + Hostname$

      Print #1, "T04.0,16.0,0,3,PT 12;AssetID:"

      Print #1, "T27.0,16.0,0,3,PT 12;" + AssetID

      Print #1, "B04.7,18.0,0,PDF417+EL0,0.42,0.42,0;" + Hostname$ + " " + AssetID


      'Anzahl Etiketten

      Print #1, "A" + Trim(Str(Stückzahl))

    End If

  End If

Next z

Close

End Sub

So, das ganze funktioniert tadellos, nur haben wir darüber nachgedacht, das wir das gerne auch Remote drucken wollen. Also das der Print-Aufruf nicht lokal sondern einen Remote Rechner anspricht um es dort durch den lpt1 zu jagen.

Leider bin ich in VBA / LPT-Printaufrufe garnicht fit. Hat da jemand eine Idee wie man das programmiertechnisch einfangen könnte?

Geschrieben
Leider bin ich in VBA / LPT-Printaufrufe garnicht fit. Hat da jemand eine Idee wie man das programmiertechnisch einfangen könnte?

Das VBA/LPT funktioniert ja schon ganz gut. Hier braucht man auf dem Remote-Recher eine Dienstprogramm mit der man geeignet kommunizieren kann oder sollte (http-Klasse)

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...