| U bent hier: schouppe.net > computerlogica > objectgeoriënteerd programmeren > oefeningen |
In het handboek zijn enkele opgaven voorzien op het einde van het hoofdstuk. De oefeningen 1,2 en 4 zijn opgelost op de CD-ROM. U kunt ze ook downloaden van deze website. Ook de oefensessie 3 bevat opgaven met betrekking tot objectgeoriënteerd programmeren.
601. Beantwoord met behulp van het venster Objectenoverzicht en de Help-functie de volgende vragen in verband met objecten, methoden of eigenschappen.
602. In Blad1 is het gebied A1:D5 gevuld met getallen. De cel A1 is momenteel geselecteerd. Schrijf de macro die het gebied A1:D5 kopieert naar de overeenkomstige plaats op Blad2 en Blad3.
603. Schrijf de macro die alle cellen op Blad1 rood kleurt als de waarde van de cel kleiner is dan een in te lezen getal.
604. Ga uit van de Excel-database in figuur 6.17. Schrijf de macro die de volgende draaitabel maakt: het veld verkoper staat in het vak Pagina, regio staat in het vak Kolom, product staat in het vak Rij en omzet staat in het vak Gegevens. Er mogen geen eindtotalen getoond worden.
605. Schrijf de macro die een grafiek maakt van de gegevens uit figuur 6.20. Vraag echter aan de gebruiker welk type grafiek die wenst. Laat kiezen uit de subtypes vlak of 3D en tussen een kolom- of taartdiagram. U hebt hier de volgende constanten voor nodig: xlColumnClustered, xl3DColumnClustered, xlPie, xl3Dpie.
6. Schrijf een race programma (zie Flash movie hiernaast). Op het scherm verschijnen 3 rechthoeken in verschillende kleur. Iedere rechthoek groeit op toevallige wijze. Wie eerst de finish haalt (aangegeven met de zwarte balk), is gewonnen. Deze oefening borduurt verder op het voorbeeld uit het handboek (blz 99-101).[oplossing]
607. Schrijf de macro die het Excel-venster (de applicatie) met de helft verkleint, tenminste indien Excel niet gemaximaliseerd is. Ken de sneltoets CTRL+SHFT+K toe aan deze macro.
608. Schrijf de macro die het actieve venster verkleint en verplaatst. Het actieve venster is het venster van het werkboek, bijvoorbeeld Map1; niet het venster van de Excel-applicatie . Het venster moet 200 punten hoog en 300 punten breed zijn en staan in de linker bovenhoek van het Excel-venster.
609. Schrijf de macro die een nieuw werkboek aanmaakt met een op te vragen aantal werkbladen: filiaal1, filiaal2, ..., filiaalx genaamd.
610. Deze macro vraagt de naam van een bestaand werkblad; bijvoorbeeld Blad1. Indien dit werkblad niet zou bestaan, wordt de vraag opnieuw gesteld totdat de gebruiker een bestaande naam ingeeft. Gebruik een functie om te controleren of een werkblad bestaat. Deze functie heeft een naam als invoerparameter en True of False als uitvoerparameter. Als een bestaande naam is ingegeven, wordt dit werkblad op de tweede plaats in de werkmap geplaatst.
611. Op een werkblad staat een aaneengesloten gebied gegevens (bv. A1:D3). U weet niet op voorhand hoe groot dit gebied is, alleen dat het begint in cel A1 en aaneengesloten is. Schrijf de macro die deze gegevens kopieert naar de rechter onderhoek + 1 van dit gebied; dus naar het gebied E4:H6.
612. Op een werkblad met als naam Blad2 staat een aaneengesloten gebied gegevens (bv. A1:C3). Kopieer dit gebied naar de sheet Blad3, te beginnen vanaf cel F10. U mag alleen de inhoud van de cellen kopiëren; niet de opmaak. Gebruik m.a.w. de Bewerken Plakken Speciaal functie.
613.
Teken
een schaakbord. Zie het voorbeeld hiernaast. Zorg dat de macro eerst het gebied
A1:I8 leegmaakt.
614. Schrijf de macro die namen opvraagt (tot de gebruiker op Annuleren klikt).
Deze namen worden toegevoegd aan een lijst die in kolom A staat (te beginnen
vanaf A1).
U weet niet op voorhand of en hoeveel namen er reeds zijn ingevuld.
615. Schrijf de macro die het huidige gebied met 1 rij en kolom verkleint, zowel boven als onder en links als rechts Zie de figuur hiernaast. Het verkleinde gebied moet geselecteerd zijn na afloop van de macro. Ga ervan uit dat een cel in het midden van het gebied geselecteerd is.
616. Maak de cumulatieve som van de getallen die in kolom A staan (vanaf
cel A6).
Je weet niet op voorhand hoe groot de tabel is. De macro stopt als er een
lege cel is.
Plaats het resultaat in kolom B (vanaf cel B6). Zie voorbeeld.
| ©
H. Schouppe Laatste wijziging: 2004-05-12 |