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

Willekeurige bereiken selecteren op een werkblad

Status
Niet open voor verdere reacties.

Josquinde2e

Nieuwe gebruiker
Lid geworden
3 feb 2011
Berichten
4
Hallo. Om rapporten voor klanten te maken gebruik ik een excel als 'sjabloon'. Binnen een excelwerkmap staan op één excelwerkblad een aantal rapporten (kan variabel zijn) onder mekaar (allemaal 90 rijen lang). Soms moet de klant hiervan maar 1 of een paar rapporten krijgen (ze worden afgedrukt naar pdf). Dit is afhankelijk van de datum op het rapport (of de rapporten) in kwestie. Dus moet ik de datums doorlopen die per rapport voorkomen en op basis daarvan beslissen welke rapporten mogen worden afgedrukt. Het doorlopen van de datums is geen probleem (komen dus voor om de 90 cellen).

Tot zover dus geen probleem. Maar dan komt het. Eén rapport beslaat 2 kolommen (A en B) en 90 rijen (dus A1:B90; A91:B180; enz.). Hoe kan ik met vba-code in een lus aan elk rapport een unieke naam meegeven zodat de gebruiker dan kan kiezen welke rapporten hij wil afdrukken. De datum op een rapport geldt dus als voorwaarde, en ik zou de gebruiker bijvoorbeeld via een inputbox de datum kunnen laten ingeven die hij wenst.
Of kan ik de namen van alle rapporten in een formulierlijst steken en de gebruiker dan diegene laten kiezen die hij wenst af te drukken ? Maar dan moet ik natuurlijk nog altijd aan elk rapport een unieke naam kunnen meegeven.
Wie kan mij helpen, want vooral met het geven van een naam aan de rapporten raak ik er momenteel niet.
Alvast dank voor de reacties.
 
Misschien kan dit al een beetje helpen?

Bekijk bijlage 120397

Dag Paul,

Prachtig, dit helpt mij wel degelijk vooruit, alleen kan ik met behulp van de combobox nog maar 1 formulier kiezen om af te drukken, en bovendien zou er enkel een knop op het werkblad mogen staan wegens anders te weinig plaats.
Daarom zou ik het volgende (zie bijgevoegde excel) willen proberen : via de knop wordt een formulier opgeroepen, met daarin een listbox en weer een knop. Bedoeling is dus om met uw code de listbox met de waarden uit cel A1, A91, A181, enz. te vullen, en daaruit dan meerdere rapporten te kunnen selecteren naar wens, en dan de gebruiker met de commandbutton een msgbox aan te bieden alvorens af te drukken (dat vormt wel geen probleem).
Echter, als ik uw code onder 'Userform_initialize' plaats, geeft hij de foutmelding "naam is niet geldig" of zoiets. Waarschijnlijk ligt dat aan mij, hoor, wegens een ietwat gebrekkige kennis van vba.
Valt dit op te lossen ?
Alvast van harte dank.
 

Bijlagen

  • Rapporten klant.xls
    78 KB · Weergaven: 185
De Userform1 doet wel raar in je bestandje. Misschien ligt het wel aan het initialize-event. Ik gebruik zelf altijd UserForm_Activate. Misschien eens onderzoeken?
De listbox kan je bij multiselect op 1 zetten, zo kan je meerdere selecties maken.
Later kan je ook tamelijk eenvoudig die selectie uitlezen.
Hierbij dus het bestandje. Veel succes ermee!

Paul.

Bekijk bijlage Rapporten klantPaul.xls
 
Laatst bewerkt:
Dag Paulva,

Kreeg gisteren een berichtje van den 'waakhond' om te weten of mijn probleem opgelost is. Sorry, was een tijdje niet meer met de zaak bezig. Probleem was eigenlijk wel opgelost (zie excel hieronder), maar heb toch een 'omwegje' moeten gebruiken om er te geraken. Ik maak namelijk een 'tijdelijk werkblad' aan waarop alle af te drukken rapporten komen en die kunnen dan samen in een pdf.
Wat mij echter niet lukt, is om via de lijst meerdere bereiken te selecteren om die dan vervolgens met een druk op een commandbutton af te drukken. In de lijst kan ik er weliswaar meerdere selecteren, maar je stelt vast dat hij - ook in een lus - enkel de laatst aangeklikte onthoudt.
Maar kom, de oplossing die ik nu heb, werkt, ook al is het misschien niet de meest elegante.
In alle geval heel erg bedankt voor de zeer nuttige tips !
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan