Printen met VBA

Status
Niet open voor verdere reacties.

wilcovanee

Gebruiker
Lid geworden
30 mei 2011
Berichten
28
Momenteel maak ik gebruik van de volgende macro:

Code:
[I]Sub printen()
Dim invoer As Integer
Dim i As Integer
  invoer = InputBox("aantal afdrukken")
  For i = 1 To invoer
    ActiveWindow.SelectedSheets.PrintOut Copies:=3, Collate:=True
    Range("h6") = Range("h6") + 1
  Next i
End Sub[/I]

Wanneer ik deze macro opstart krijg ik een box waar ik een waarde invoer. Deze waarde geeft aan hoeveel afdrukken er gemaakt moeten worden.
Verder zorgt "Copies:=3" er voor dat er setjes van 3 gelijke afdrukken gemaakt worden. Na ieder setje van 3 wordt de waarde met 1 verhoogd, zodat de nummering van ieder setje 1 cijfer hoger is.

Dit werkt allemaal prima, maar ik wil dit eigenlijk uit lade 2 (niet standaard lade) laten komen.

Ik krijg wel voor elkaar dat de printer wordt gekozen met de juiste lade en het aantal afdrukken. Ook wordt het aantal setjes afdrukken gedaan, alleen wordt het cijfer niet iedere keer verhoogd. Is de waarde van cel h6 bijvoorbeeld 50 dan zal deze per setje 50 blijven en niet ieder setje een cijfer hoger

Wat ik tot nu toe heb is het volgende:

Code:
[I]Sub print_lade2()
' print_lade2 Macro
Dim invoer As Integer
Dim i As Integer
  invoer = InputBox("aantal afdrukken")
  For i = 1 To invoer
	Application.ActivePrinter = "\\SERVER\PRINTER op NE06:"
	SendKeys "^p %E ^{tab}{tab 6}{DOWN 2} {tab 5}{3}{del} ~~~"
 Range("h6") = Range("h6") + 1
  Next i
End Sub[/I]
Wie kan mij helpen hiermee?
 
Laatst bewerkt door een moderator:
Als het een HP compatible printer is kun je er gewoon de PCL5 (Printer Command Language) code voor gebruiken.
Code:
Esc&l1H
Esc staat voor ASCII(27) (Escape)
Stuur dus eerst een bestandje waarin die code staat naar de printer en vervolgens het eigenlijke document.

Om de printer de resetten naar startup modus gebruik je het volgende:
Code:
EscE

Kijk hier voor een lijst met mogelijke PCL5 codes:
http://www.pclviewer.com/resources/reference/
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan