• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Printen tot een bepaalde pagina

Status
Niet open voor verdere reacties.

zwans

Gebruiker
Lid geworden
28 apr 2010
Berichten
32
Mensen,

Ik heb nu een redelijk lastig te omschrijven probleem.

Via een userform laat ik een tabel vullen van cel A6 tot cel C19.
Dit zit in een bestand voor het printen van stickers.
De tabel heeft 14 regels wat betekent dat er maximaal 14 verschillende soorten stickers geprint kunnen worden.

Nou is dit lang niet altijd het geval. Vaak moeten er minder verschillende soorten stickers worden geprint.
In kolom A komt het soort sticker te staan. Elke soort sticker heeft zijn eigen tabblad (vandaar mijn vorige vraag).
Ik heb nu dus een macro die kijkt welke soort sticker op de eerste regel staat. Daarna wordt het tabblad van dat soort sticker geselecteerd en worden er een bepaald aantal pagina's geprint.
Daarna wordt er gekeken welke soort sticker er op de tweede regel staat en wordt het tabblad van deze soort sticker geselecteerd en worden er weer een bepaald aantal stickers geprint.
Deze stappen herhalen zich tot alle 14 regels geweest zijn.
Maar wanneer ik maar 8 verschillende stickers moet printen krijg ik een foutmelding bij de 9e regel.
Dit komt omdat ik bij elke regel het aantal stickers dat geprint moet worden invul. Bij het printen wordt dan geprint vanaf pagina 1 tot de pagina die ik invul als aantal stickers dat geprint moet worden. Wanneer er dus op de 9e regel geen soort sticker wordt ingevoerd krijg je de volgende regel: printen vanaf pagina 1 tot pagina 0. Hierdoor krijg ik dus de foutmelding.

Weet iemand hoe ik dit kan verhelpen?

Bij voorbaat dank!

Met vriendelijke groet,

Ronald Buikema
 
Ronald,

Misschien kun je de volgende regel toevoegen:
Code:
ActiveWorkbook.Names.Add Name:="Afdrukbereik", RefersToR1C1:= _
    "=INDIRECT(""'[COLOR="red"]<naam blad>[/COLOR]'!$B$2:$E$""&COUNTA('[COLOR="red"]<naam blad>[/COLOR]'!a2))"
    ActiveWindow.SelectedSheets.PrintOut Copies:=1
 
Ok, maar ik heb geen idee hoe ik dit kan invoegen...

Mijn code ziet er op dit moment zo uit:

Code:
Sheets("Informatie").Select
Range("F6").Select
Selection.Copy
Worksheets(Range("E6").Text).Activate
Range("P1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
Application.CutCopyMode = False

Sheets("Informatie").Select
Range("H6").Select
Selection.Copy
Worksheets(Range("E6").Text).Activate
Range("Q1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
Application.CutCopyMode = False

Range("Q1").Select

ActiveWindow.SelectedSheets.PrintOut From:=1, To:=ActiveCell.Value, Copies:=1, Collate _
        :=True
        
Range("P1:O1").Select
Selection.ClearContents

Sheets("Informatie").Select

'2e lijn

Sheets("Informatie").Select
Range("F7").Select
Selection.Copy
Worksheets(Range("E7").Text).Activate
Range("P1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
Application.CutCopyMode = False

Sheets("Informatie").Select
Range("H7").Select
Selection.Copy
Worksheets(Range("E7").Text).Activate
Range("Q1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
Application.CutCopyMode = False

Range("Q1").Select

ActiveWindow.SelectedSheets.PrintOut From:=1, To:=ActiveCell.Value, Copies:=1, Collate _
        :=True
        
Range("P1:O1").Select
Selection.ClearContents

Sheets("Informatie").Select

En zo herhaalt deze code zich nog een aantal maal tot alle 14 regels geweest zijn.

Weet iemand hoe ik dit op kan lossen?

Bij voorbaat dank!

Met vriendelijke groet,

Ronald Buikema
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan