Help!

PC-Problemen?
De vrijwilligers van Oplossing.be zoeken gratis met u mee!

Hulp bij posten

Recente topics

Auteur Topic: printpreview (VBA) met een variabele  (gelezen 590 keer)

0 leden en 1 gast bekijken dit topic.

Offline CR

  • Lid
  • *
  • Berichten: 22
  • Geslacht: Man
  • Oplossing.be
printpreview (VBA) met een variabele
« Gepost op: 29 oktober 2020, 01:26:02 »
Hallo, ik wil graag een printpreview laten zien voor het printen maar slechts een x-aantal pagina's. Het aantal pagina's van de sheet moet uit een variabele gehaald worden. Vandaar dat ik dacht aan een manier zoals From:=1, To:=[t2].
Alleen waar en hoe ik dat voor elkaar moet krijgen geen idee. Mijn code die ik nu heb laat alleen de range zien. Dat wil ik dus niet.

Sub printpreview()

ActiveSheet.Range("A1:l300").printpreview

End Sub

Hopelijk kunnen jullie mij op weg helpen.

Gr Cor

Offline Dotchiejack

  • Oplosser
  • ****
  • Berichten: 691
  • Geslacht: Man
  • Oplossing.be
Re: printpreview (VBA) met een variabele
« Reactie #1 Gepost op: 29 oktober 2020, 09:30:26 »
Hoi Cor,
Ik weet niet of ik uw vraag goed begrijp.
Als je onderaan de tabbladen selecteert waarvan je een afdrukvoorbeeld wilt zien en dan op afdrukvoorbeeld klikt laat excel alleen de bladen zien die je hebt geselecteerd en heb je helemaal geen macro nodig.
Dezelfde procedure kan ook met een macro.
Sub afdrukvoorbeeld()
ActiveWindow.SelectedSheets.PrintPreview
End Sub
Dan heb je nog volgende, maar dit is niet variable en waarschijnlijk niet wat je wilt.
Sub afdrukvoorbeeld()
Sheets(Array("Blad1", "Blad3")).PrintPreview
End Sub
En in bijlage het luxe model met gratis airbags en ingebouwde parkeersensoren, alleen te krijgen bij Oplossing.be ;D ;D
Gebruik Ctrl + Q om de userform te openen en selecteer de bladen die je wenst te zien en druk op de knop.
Je kan de module en de userform naar je echte bestand slepen en je bent klaar.
Groet, Philiep

Offline CR

  • Lid
  • *
  • Berichten: 22
  • Geslacht: Man
  • Oplossing.be
Re: printpreview (VBA) met een variabele
« Reactie #2 Gepost op: 29 oktober 2020, 10:31:45 »
Hoi Dotchiejack,

Wellicht heb ik het niet helemaal goed verwoord. Maar het is zo dat ik op 1 sheet 5 pagina's heb.
Iedere pagina kan worden gevuld, maar het gebeurt ook dat er slechts 1, 2, 3 etc gevuld zijn.
Het aantal pagina's die gevuld zijn met een waarde wordt getoond in een cel (T2) op de sheet.

Dus ik wil eigenlijk dat er eerst wordt gekeken naar die cel. (bijvoorbeeld met de waarde 3)
En dat hij dus in dit geval slechts 3 pagina's laat zien met printpreview.
Vandaar dat ik dacht aan de functie  From:=1 to:=[T2]
Alleen weet ik niet waar en hoe ik deze kan toepassen.


Gr Cor

Offline Dotchiejack

  • Oplosser
  • ****
  • Berichten: 691
  • Geslacht: Man
  • Oplossing.be
Re: printpreview (VBA) met een variabele
« Reactie #3 Gepost op: 29 oktober 2020, 12:40:50 »
Bedoel je zoiets dan?
Ik heb 5 afdruk bereiken aangemaakt voor de vijf pagina's (van mijn voorbeeld)
Ik kan voor het ogenblik niets beter verzinnen en vind ook niets erover in mijn boeken. :-[
Ctrl + q om de macro te activeren.
Groet, Philiep

Offline CR

  • Lid
  • *
  • Berichten: 22
  • Geslacht: Man
  • Oplossing.be
Re: printpreview (VBA) met een variabele
« Reactie #4 Gepost op: 29 oktober 2020, 14:45:36 »
Hoi Dotchiejack,

Niet helemaal nee. Ik heb er even een voorbeeldbestandje zonder VBA bijgedaan.
Wellicht dan het dan duidelijker is wat ik voor ogen heb.
Gaat echt om 1 sheet(werkblad) met daarin 5 pagina's.

Zoals je zal zien heb ik in het voorbeeld 3 pagina's even gevuld met wat tekst.
Dus de onderste 2 zijn leeg.

Het gaat er dus om dat er eerst wordt gekeken naar de variabele in cel  B1
En dat die bepaald hoeveel pagina's er worden getoond in de printpreview.
Zodat die ook weer daarna echt geprint kunnen worden.

Gr Cor

Gr Cor

Offline SoftAid

  • Administrator
  • Ambassadeur
  • *****
  • Berichten: 18.436
  • Geslacht: Man
  • Nobody is perfect, not even me...
Re: printpreview (VBA) met een variabele
« Reactie #5 Gepost op: 29 oktober 2020, 15:32:22 »
Cor,

is wat jij wil niet beter te realiseren in Word?
Daar kan je de structuur van je pagina's vast instellen, een echte preview van de pagina's krijgen.

Ik vermoed dat je in Excel veel fouten gaat krijgen betreffende uitlijning en dergelijke, een verandering in lettertype (of grootte) kan je hele Excel-sheet overhoop halen....

Waar moet je bestand precies voor dienen?

:) SoftAid :)             
Wegens veelvuldig melden van dubbelposten, het posten op verschillende help-fora van dezelfde vraag, zijn de gedragsregels op dit forum aangepast. Dubbelposten dient in de toekomst op voorhand gemeld te worden, met een melding en een link naar het topic op de andere site. De helpers wensen een weinig respect voor de inspanningen die ze doen om mensen te helpen. Je doet jezelf ook een plezier. Door je dubbelposten te melden wordt je vraag mogelijk op meerdere fora beantwoord.

Offline CR

  • Lid
  • *
  • Berichten: 22
  • Geslacht: Man
  • Oplossing.be
Re: printpreview (VBA) met een variabele
« Reactie #6 Gepost op: 29 oktober 2020, 16:01:57 »
HA die ha,

Het is echt een heel simpel voorbeeld bestandje hoor.
Het echte bestand is heel anders en best wel uitgebreid qua opmaak e.d.

Maar dit voorbeeld geeft precies weer wat ik wil.
Eigenlijk de routine in VBA van een printpreview dus...

Sub printpreview()

ActiveSheet.printpreview

End Sub



Dit uitgebreid met welke pagina's er geprint moeten worden.
Dus vanaf pagina 1 ( from:=1 ) tot en met de variabele ( To:=[B1] )
Kijk en dat weet ik dus niet hoe ik die variabele erin krijg zodat hij weet tot welke paginas er geprint gewordt moet worden.

Gr Cor

Offline Dotchiejack

  • Oplosser
  • ****
  • Berichten: 691
  • Geslacht: Man
  • Oplossing.be
Re: printpreview (VBA) met een variabele
« Reactie #7 Gepost op: 29 oktober 2020, 16:36:39 »
Mijn voorbeeld in reactie #3 deed exact wat je vroeg maar:
Jou pagina nummering is anders en is in principe fout.
(je moet maar eens een automatische paginanummering invoegen, wat jij pagina 5 noemt is in werkelijkheid 15)
Pagina' gaan namelijk eerst van links naar rechts en pas nadien naar onder.
Het was ook beter geweest dat je van in het begin had gezegd dat je met tabellen werkt.
Een tip voor de volgende keer, post een zo waarheidsgetrouw voorbeeldje (met fictieve gegevens natuurlijk)
In bijlage aangepaste code volgens jou voorbeeld.
(macro kan je activeren met CTRL + q)
Groet, Philiep

Offline CR

  • Lid
  • *
  • Berichten: 22
  • Geslacht: Man
  • Oplossing.be
Re: printpreview (VBA) met een variabele
« Reactie #8 Gepost op: 30 oktober 2020, 00:00:20 »
Beste Philiep,

Zeker bedankt voor je tijd en hulp.
Maar toch niet helemaal wat ik voor ogen had.
Inmiddels verder aan het zoeken geweest en GEVONDEN en wat van mezelf haha.
Dus wie weet heeft iemand hier wat aan.
Werkt echt perfect.
De (To:=[L7]) verwijst naar de cel in het actieve blad.

Gr Cor

Sub Afdrukvb()
'List of all of the optional parameters for printing an Excel spreadsheet using the PrintOut method

Worksheets.PrintOut _
From:=1, _
To:=[L7], _
Copies:=1, _
Preview:=True, _
ActivePrinter:="", _
PrintToFile:=False, _
Collate:=True, _
PrToFileName:="", _
IgnorePrintAreas:=False

End Sub

 


www.combell.com