• 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.

PrintMacro

Status
Niet open voor verdere reacties.

WIMLIN

Gebruiker
Lid geworden
17 jul 2007
Berichten
429
Goedemorgen,

Ik heb een printmacro gemaakt alleen niet alles wordt geprint wat ik wil.

Ik wil in 1 keer kunnen printen de range "PrintenManagementboek" en "PrintenManagementboek1". Tot nu toe lukt mij dit helaas niet. Ik heb de naam gedefinieerd in Excel bij Invoegen naam. Maar het zijn heel veel verschillende bereiken. Dus ik heb aan 1 range te weinig. Waarschijnlijk heb ik er wel 4 nodig. De regels waar het fout gaat heb ik vet in code staan.

Ik hoop dat er iemand is die mij kan helpen.

ActiveSheet.Previous.Select
ActiveSheet.Previous.Select
ActiveSheet.Previous.Select
ActiveSheet.Previous.Select
Application.Goto Reference:="R23C1"
ActiveCell.FormulaR1C1 = "Print DPO Management Boek"
ActiveSheet.Next.Select
Range("A514:J946").Select
ActiveSheet.PageSetup.PrintArea = "PrintenManagementboek"
ActiveSheet.PageSetup.PrintArea = "PrintenManagementboek1"

Range("A513").Select
ActiveSheet.Previous.Select
Sheets(Array("Voorblad dpo sp", "Alle b.u.'s", "Recap")).Select
Sheets("Voorblad dpo sp").Activate
Application.ActivePrinter = "Adobe PDF op Ne02:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"Adobe PDF op Ne03:", Collate:=True
ActiveSheet.Next.Select
ActiveSheet.Next.Select
ActiveSheet.Next.Select
ActiveSheet.Next.Select
Range("d5").Select
 
Code:
ActiveSheet.Previous.Select
ActiveSheet.Previous.Select
ActiveSheet.Previous.Select
ActiveSheet.Previous.Select
Application.Goto Reference:="R23C1"
ActiveCell.FormulaR1C1 = "Print DPO Management Boek"
ActiveSheet.Next.Select
Range("A514:J946").Select
ActiveSheet.PageSetup.PrintArea = "PrintenManagementboek"
ActiveSheet.PageSetup.PrintArea = "PrintenManagementboek1" 
Range("A513").Select
ActiveSheet.Previous.Select
Sheets(Array("Voorblad dpo sp", "Alle b.u.'s", "Recap")).Select
Sheets("Voorblad dpo sp").Activate
Application.ActivePrinter = "Adobe PDF op Ne02:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"Adobe PDF op Ne03:", Collate:=True
ActiveSheet.Next.Select
ActiveSheet.Next.Select
ActiveSheet.Next.Select
ActiveSheet.Next.Select
Range("d5").Select

Zet code zoveel mogelijk in code tags!

Waarom al die Next/Previous.Selects? Je kunt toch meteen naar het gewenste sheet gaan met Sheets("blad1").select?

Code:
ActiveSheet.PageSetup.PrintArea = "PrintenManagementboek"
ActiveSheet.PageSetup.PrintArea = "PrintenManagementboek1"
Laat de " weg dan werkt het wel

Ron
 
PRINT Macro

Ron,

Dat commando om naar een ander blad te gaan wist ik toen nog niet toen ik die Macro opnam. Dat heb ik pas deze week van u geleerd.

Ik heb nu de "weggehaald maar krijg dan weer een andere foutmelding.

Zie vorig blad.
 

Bijlagen

  • macrofout.jpg
    macrofout.jpg
    74,7 KB · Weergaven: 69
Wimlin,

hoe heb je PrintenManagementboek gedefinieerd? Het is een vrij lange naam en wellicht zit er ergens een tikfout.
Ik creëer mijn reeksen door het gebied te selecteren en dan links boven (waar de actieve cell staat, naast fx) de naam van de reeks in te geven. Probeer het eens met pmb en pmb1. Dat geeft in ieder geval minder kans op tikfouten.

Ron
 
PRINT Macro

Ron,

Mijn grote probleem is ik een sheet met 10.000 regels minimaal.

om de 1000 regels staan er totalen.

Ik wil nu alleen de totalen printen.

Wat ik had gedaan was eerst alle bereiken selecteren. Vervolgens had ik gekozen voor invoegen naam. Het probleem is echter dat ik teveel bereiken heb om in één keer gebruik te kunnen maken van deze functie. Vandaar dat ik al twee namen had gebruikt maar ik heb er nog meer nodig.

Maar kan ik met optie die u aangaaf wel een onbeperkt aantal bereiken opgeven? Dat gaat mijn macro wel werken want ik selecteer ze eerst alle 25 en tik dan een naam in.
 
PRINT Macro

Ron,

Ik hoop dat je nog een keer wil reageren!!!


Ik ben een heel stuk verder gekomen door op deze manier mijn bereik op te geven. Maar het is helaas toch nog iets te kort. U gaf eerder aan dat ik de " weg moet halen bij PMB en dat er dan twee bereiken worden geselecteerd. Hoe doe ik dat dan?

ActiveSheet.Previous.Select
ActiveSheet.Previous.Select
ActiveSheet.Previous.Select
ActiveSheet.Previous.Select
Application.Goto Reference:="R23C1"
ActiveCell.FormulaR1C1 = "Print DPO Management Boek"
ActiveSheet.Next.Select
Range("A514:J946").Select
ActiveSheet.PageSetup.PrintArea = "PMB"
'ActiveSheet.PageSetup.PrintArea = PrintenManagementBoek1
Range("A513").Select
ActiveSheet.Previous.Select
Sheets(Array("Voorblad dpo sp", "Alle b.u.'s", "Recap")).Select
Sheets("Voorblad dpo sp").Activate
Application.ActivePrinter = "Adobe PDF op Ne02:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"Adobe PDF op Ne03:", Collate:=True
ActiveSheet.Next.Select
ActiveSheet.Next.Select
ActiveSheet.Next.Select
ActiveSheet.Next.Select
Range("d5").Select
End Sub
 
Hallo Wimlin,

Waarom breng je de totalen niet over naar een volgende bladzijde, (in de bijlage staat saldo.)

Gr Justes
 

Bijlagen

PRINT Macro

Justus,

Ik heb inderdaad al zo'n blad. Maar in de detailgegevens staan ook nog totalen die echt niet weg kunnen (lees mogen) vandaar dat ik een printmacro wilde waar ik eerst een blad heb waar de titel in staat, dan één blad waar mijn probleem in ligt en tot slot een blad met eindtotalen.

Bij onze organisatie wordt gewerkt met business units. Per b.u. zijn heel veel project met verschillende activitetien. De eindtotalen van alle b.u.'s moeten samengevoegd worden in één printmacro.

Dus helaas kan ik uw optie niet gebruiken.

Maar toch super bedankt voor het idee
 
Justus,

Ik heb inderdaad al zo'n blad. Maar in de detailgegevens staan ook nog totalen die echt niet weg kunnen (lees mogen) vandaar dat ik een printmacro wilde waar ik eerst een blad heb waar de titel in staat, dan één blad waar mijn probleem in ligt en tot slot een blad met eindtotalen.

Bij onze organisatie wordt gewerkt met business units. Per b.u. zijn heel veel project met verschillende activitetien. De eindtotalen van alle b.u.'s moeten samengevoegd worden in één printmacro.

Dus helaas kan ik uw optie niet gebruiken.

Maar toch super bedankt voor het idee
Kun je geen voorbeeldje plaatsen.
 
Ron,

Ik hoop dat je nog een keer wil reageren!!!
Geen reden om te gaan schreeuwen, zo is nog niets opgelost.

Ik ben een heel stuk verder gekomen door op deze manier mijn bereik op te geven.
Da's toch weer mooi:thumb:

Code:
Maar het is helaas toch nog iets te kort. U gaf eerder aan dat ik de " weg moet halen bij PMB en dat er dan twee bereiken worden geselecteerd.
Maar in het voorbeeld zie ik ze nog steeds staan "PMB" dus dat werkt dan nog niet. Moet zijn PMB zonder ".

Een sheet kan volgens mij maar 1 print area hebben. Ik kan me niet voorstellen dat je per sheet meerdere verspreid liggende printarea's kan definieren. Hier zal je een list moeten verzinnen

Ron
 
PRINT Macro

Justus,

als bijlage een zeer mager voorbeeld. Ik heb nl heel veel regels verwijderd. Maar als je in het tabblad Alle B.u.'s kijk op regel 412 t/m 494 zie je subtotalen. In de orgineel komen er echter veel meer voor.

Hier: regel 412:494 en 674:714

Ik had een macro gemaakt printen management boek. Maar die mislukt nu.
 

Bijlagen

Een aantal bemerkingen:

- Haal eens eerst ALLE verwijzingsfouten uit de namen

- goed verwijzen naar PMB is met:
Code:
Range("PMB")

- Afdrukbereik:
Code:
ActiveSheet.PageSetup.PrintArea = Range("PMB").Address

En ik weet niet of dat afzonderlijke bereiken mogen zijn of niet.

Wigi
 
PRINT Macro

WIGI,

De verwijzingsfouten zijn gekomen doordat ik heel veel heb weggehaald uit mijn Excel file.

Het gaat mij er om dat ik in het tabblad alle bu's meerder printranges kan selecteren dus naast pmb nog een printrange.

Nu kan ik wel pmb printen maar ik heb nog een tweede range nodig. Want blijkbaar kan ik al mijn gebieden niet kwijt in mijn naam pmb. Het zijn er zo'n 25 zie het tabblad printmacro's.

Ik kreeg mijn macro printen tbv management bijna compleet om de laatste 7 na.
 
Print dan alles uit voor range 1, dan dezelfde code maar met range 2. Niet?
 
Respect

Ik moest vandaag iets afronden op mijn werk. Vandaar dat ik ook gebruik maakte van Worksheet. Dit betekent echter niet dat ik het ene forum meer waardeer dan het andere. Ik hoopte er vandaag gewoon uit te komen.

Helaas is dit niet gelukt.

Als ik u tip goed begrijp. Geef ik gewoon 2 print opdrachten door de hele macro twee keer door te lopen. Lijkt mij een goede tip.
 
Laatst bewerkt:
Ik moest vandaag iets afronden op mijn werk. Vandaar dat ik ook gebruik maakte van Worksheet. Dit betekent echter niet dat ik het ene forum meer waardeer dan het andere.

Het gaat niet over welk forum meer respect geniet, het gaat over respect naar de helpers die geen 2 keer hetzelfde werk moeten doen. Een link plaatsen kan bv. al veel helpen. Dan weet men wat er al gedaan is en wat niet.

Als ik u tip goed begrijp. Geef ik gewoon 2 print opdrachten door de hele macro twee keer door te lopen. Lijkt mij een goede tip.

Klopt, aangezien je maar 1 printbereik per keer kan instellen en jij een groot bereik nodig hebt.
 
PRINT Macro

Goedemorgen,

Na veel tips van jullie is het mij vandaag gelukt om via een macro mijn gegevens te kunnen printen. Dus bij deze super bedankt.

Ik print nu mijn gegevens in twee keer. Het enige nadeel is dat mijn bladzijdenr's twee keer met 1 beginnen.

Wat mij niet gelukt is om mijn macro in 1 keer in Adobe te laten printen ook dit worden twee bestanden. Dit kan wel weer handmatig samenvoegen maar dat schiet zo heel erg op.

Onderstaand mijn macro.

Sheets("Voorblad dpo sp").Select
Application.Goto Reference:="R23C1"
ActiveCell.FormulaR1C1 = "Print DPO Management Boek"
Sheets("Alle b.u.'s").Select
Range("A514:J946").Select
ActiveSheet.PageSetup.PrintArea = "PMB"
Range("A513").Select
Sheets("Voorblad dpo sp").Select
Sheets(Array("Voorblad dpo sp", "Alle b.u.'s")).Select
Sheets("Voorblad dpo sp").Activate
Application.ActivePrinter = _
"\\PC_GERBOE\HP LaserJet 2300 Series PCL 5e op Ne03:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:="\\PC_GERBOE\HP LaserJet 2300 Series PCL 5e op Ne03:", _
Collate:=True
Sheets("Print Macro's").Select
Sheets("Alle b.u.'s").Select
Range("A514:J946").Select
ActiveSheet.PageSetup.PrintArea = "PMB1"
Range("A513").Select
'ActiveSheet.Previous.Select
Sheets(Array("Alle b.u.'s", "Recap")).Select
Sheets("Alle b.u.'s").Activate
Application.ActivePrinter = _
"\\PC_GERBOE\HP LaserJet 2300 Series PCL 5e op Ne03:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:="\\PC_GERBOE\HP LaserJet 2300 Series PCL 5e op Ne03:", _
Collate:=True
Sheets("Print Macro's").Select
Range("d5").Select
End Sub
 
Laatst bewerkt:
Na veel tips van jullie is het mij vandaag gelukt om via een macro mijn gegevens te kunnen printen. Dus bij deze super bedankt.

Wim, goed dat het opgelost is, maar in plaats van te "schreeuwen" zou je de HTML tags beter voor de code gebruiken. En dat is allebei in deze topic al eerder gevraagd geweest door Ron.

Geen reden om te gaan schreeuwen, zo is nog niets opgelost.

Ron

Zet code zoveel mogelijk in code tags!

Ron
 
PRINT Macro

Wim, goed dat het opgelost is, maar in plaats van te "schreeuwen" zou je de HTML tags beter voor de code gebruiken. En dat is allebei in deze topic al eerder gevraagd geweest door Ron.

Het zou wel heel erg stom van mij zijn maar ik weet niet wat html tags zijn? Wat bedoel je met "Schreeuwen" ? Is dat mijn hele macro?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan