Excel 2002 Gevorderden Roger Frans met cd-rom
campinia
media
Frans, Roger – Excel 2002 – gevorderden / Roger Frans; Geel: Campinia Media vzw, 2002; 254 p; index; 29 cm; gelijmd. ISBN: 90.356.1147.0; NUGI 854; UDC 681.3.06 Wettelijk depot België: D/2002/3941/4 Campinia Media vzw Kleinhoefstraat 4 B – 2440 – GEEL (Belgium) Tel.: (+32) 014/59 09 59 Fax: (+32) 014/59 03 44 e-Mail:
URL: <www.campiniamedia.be> Copyright 2002:
No part of this book may be reproduced in any form, by print, photoprint, microfilm or any other means without written permission of the publisher. Niets uit deze uitgave mag worden verveelvoudigd en/of openbaar gemaakt door middel van druk, fotokopie, print, microfilm of op welke andere wijze ook, zonder voorafgaande schriftelijke toestemming van de uitgever.
Inleiding In Excel 2002 – beginners zijn de basistechnieken aan bod gekomen om met Excel te werken: het maken van een werkblad, grafieken, lijsten, enz. De cursus Excel 2002 – gevorderden gaat in op meer specifieke onderwerpen. In een eerste hoofdstuk worden draaitabellen of pivot tables behandeld. Met een draaitabel kunnen we uit een lijst van gegevens een samenvattingrapport genereren. U kunt gegevens, die een gebruiker moet ingeven, valideren. U kunt keuzelijsten in een werkblad opnemen, selectievakjes gebruiken, enz. We behandelen dit in het tweede hoofdstuk. Ook het zoeken naar inconsistente cellen en de tekenfunctie komen in dit hoofdstuk aan bod. De Analysis Toolpak vormt een uitbreiding op de gewone mogelijkheden van Excel. U vindt er uitbreidingen voor beschrijvende statistiek, Fourier-analyse, regressie, enz. Het pakket wordt standaard mee geleverd met Excel. U moet wel aangeven dat u het wenst te installeren. We leren in het derde hoofdstuk hoe u het pakket uitbreidingen installeert en gebruikt. Als u een bepaalde waarde wenst uit te komen voor een cel door de waarde in een andere cel aan te passen, kunt u gebruik maken van Doelzoeken. Naast Doelzoeken komen in het vierde hoofdstuk ook Oplosser en Scenariobeheer aan bod. Indien de gegevens in een werkblad op een welbepaalde manier zijn geschikt, kan u overzichten maken waarbij u detailgegevens verbergt en op die manier enkel totalen en/of subtotalen overhoudt. We behandelen dit in het vijfde hoofdstuk. In de beginnerscursus hebt u reeds kennis gemaakt met het begrip macro. In deze cursus gaan we dieper in op macro’s. We besteden in de hoofdstukken 6 tot 11 aandacht aan het programmeren in Visual Basic for Applications en combineren dit met allerlei technieken die nog niet aan bod zijn gekomen in de cursus voor beginners. Tenslotte gaan we in het laatste hoofdstuk in op het werken met meerdere toepassingen. Objecten van andere toepassingen kunnen vanuit Excel worden benaderd. We spreken van Automatisering. We stellen, vanuit Excel, een rapport samen in Word. Ook gebruiken we, vanuit Excel, rapporten die in Access zijn aangemaakt. Excel 2002 – gevorderden is een doe-cursus. Dit betekent dat u de cursus doorneemt terwijl u voor de computer zit. U neemt per hoofdstuk de cursustekst door. Daarna maakt u de oefeningen. De voorbeelden in de cursus maken gebruik van bestanden die u vindt op de bijgevoegde cd-rom. U kopieert de bestanden uit de map ExcGevVbn best naar C:\ExcGevVbn op de harde schijf van uw computer. Tot slot van deze inleiding dank ik éénieder die geholpen heeft bij het tot stand komen van deze cursus: voor het aanreiken van voorbeelden, het nalezen van de teksten, enz. Dank u wel. Ik hoop dat dit voor u een nuttige en aangename cursus is. Opmerkingen die een latere uitgave kunnen verbeteren zijn welkom.
Roger Frans maart 2002
Inleiding - 1
2 – Excel 2002 - gevorderden
Inhoudsopgave
INLEIDING ................................................................................................................. 1 INHOUDSOPGAVE.................................................................................................... 3 1 1.1
DRAAITABELLEN............................................................................................. 13 Inleiding .................................................................................................................................................. 13
1.2 Importeren van de gegevens.................................................................................................................. 13 1.2.1 Het voorbeeld ...................................................................................................................................... 13 1.2.2 Importeren ........................................................................................................................................... 13 1.3 Opmaak van de lijst ............................................................................................................................... 16 1.3.1 Kolombreedten .................................................................................................................................... 16 1.3.2 Celopmaak van de cellen in de eerste kolom....................................................................................... 16 1.3.3 Een rij invoegen................................................................................................................................... 16 1.3.4 Tabje wijzigen ..................................................................................................................................... 16 1.3.5 Een werkblad toevoegen...................................................................................................................... 17 1.3.6 Bewaar................................................................................................................................................. 17 1.4 Een draaitabel maken............................................................................................................................ 17 1.4.1 De Wizard Draaitabel en draaigrafiek ................................................................................................. 17 1.4.2 Het resultaat van de wizard.................................................................................................................. 20 1.5 De indeling van een draaitabel wijzigen............................................................................................... 21 1.5.1 Een veld in de lijst toevoegen.............................................................................................................. 21 1.5.2 De indeling van de draaitabel aanpassen ............................................................................................. 22 1.5.3 De draaitabel opnieuw maken ............................................................................................................. 22 1.5.4 De indeling aanpassen ......................................................................................................................... 24 1.6
Items selecteren of weglaten.................................................................................................................. 24
1.7
En als gegevens in de lijst wijzigen? ..................................................................................................... 25
1.8 Een (tweede) reeks gegevens toevoegen of verwijderen...................................................................... 25 1.8.1 Een reeks gegevens toevoegen ............................................................................................................ 25 1.8.2 Een gegevensreeks verwijderen........................................................................................................... 26 1.9
Percentage van het geheel...................................................................................................................... 26
1.10
Celopmaak.............................................................................................................................................. 28
1.11 Een tweede veld toevoegen bij PAGINA en RIJ.................................................................................. 28 1.11.1 Het veld Percentage verwijderen ......................................................................................................... 28 1.11.2 Zonder veld in KOLOM, een tweede veld in PAGINA ...................................................................... 28 1.11.3 Een tweede veld in het gegevensgebied RIJ ........................................................................................ 29 1.11.4 Geen totalen......................................................................................................................................... 30 1.12 Details tonen ........................................................................................................................................... 31 1.12.1 Details tonen........................................................................................................................................ 31 1.12.2 In een apart werkblad .......................................................................................................................... 32 1.12.3 Details opnieuw verbergen .................................................................................................................. 32 1.13
Een draaitabel vanuit een externe gegevensbron ................................................................................ 32
1.14
Groeperen van gegevens........................................................................................................................ 36
1.15 Een grafiek.............................................................................................................................................. 37 1.15.1 Grafieken ............................................................................................................................................. 37 1.15.2 De grafiek maken................................................................................................................................. 37 1.15.3 De gegevens wijzigen.......................................................................................................................... 40 1.16
Sorteren................................................................................................................................................... 41
1.17
Eigen formules........................................................................................................................................ 41
Inhoudsopgave - 3
1.17.1 Openen van de werkmap ..................................................................................................................... 41 1.17.2 Een draaitabel maken........................................................................................................................... 42 1.17.3 Een veld met een eigen formule toevoegen ......................................................................................... 43 1.18
2 2.1
Oefeningen.............................................................................................................................................. 44
BESTURINGSELEMENTEN OP HET WERKBLAD ......................................... 47 Inleiding .................................................................................................................................................. 47
2.2 Een keuzelijst in een werkmap.............................................................................................................. 47 2.2.1 Het voorbeeld ...................................................................................................................................... 47 2.2.2 Een keuzelijst....................................................................................................................................... 48 2.2.3 Kopiëren van de opmaak ..................................................................................................................... 49 2.3 Valideren van een datum....................................................................................................................... 50 2.3.1 Validatie .............................................................................................................................................. 50 2.3.2 Een waarschuwing i.p.v. een foutmelding ........................................................................................... 51 2.3.3 Invoerbericht........................................................................................................................................ 52 2.4
De werkbalk Formule controleren ....................................................................................................... 53
2.5
De werkbalk Werkset Besturingselementen ........................................................................................ 53
2.6 Een selectievakje gebruiken .................................................................................................................. 54 2.6.1 Het selectievakje tekenen .................................................................................................................... 54 2.6.2 Eigenschappen..................................................................................................................................... 54 2.6.3 Ontwerpmodus .................................................................................................................................... 55 2.6.4 Uittesten van de knop .......................................................................................................................... 55 2.6.5 De werkmap aanpassen ....................................................................................................................... 55 2.7 Keuzelijst met meerdere kolommen ..................................................................................................... 56 2.7.1 Lijst met klanten in een tweede werkblad ........................................................................................... 56 2.7.2 Aanmaken van een keuzelijst .............................................................................................................. 56 2.7.3 Uittesten............................................................................................................................................... 57 2.8
Een besturingselement opmaken .......................................................................................................... 58
2.9 Inconsistente cellen ................................................................................................................................ 58 2.9.1 Broncellen aanwijzen .......................................................................................................................... 59 2.9.2 Doelcellen aanwijzen........................................................................................................................... 59 2.10 Selecteren speciaal ................................................................................................................................. 60 2.10.1 Constanten of formules aangeven........................................................................................................ 60 2.10.2 Verschillen in de formules................................................................................................................... 60 2.11 Tekenen in Excel .................................................................................................................................... 60 2.11.1 De werkbalk Tekenen .......................................................................................................................... 61 2.11.2 AutoVormen ........................................................................................................................................ 61 2.11.3 Tekst in een vorm ................................................................................................................................ 61 2.11.4 Een tekstvak......................................................................................................................................... 62 2.11.5 Ovaal of cirkel tekenen........................................................................................................................ 62 2.11.6 Verwijderen van een tekenobject......................................................................................................... 63 2.11.7 Experimenteren.................................................................................................................................... 63 2.12
3 3.1
Oefeningen.............................................................................................................................................. 63
INVOEGTOEPASSINGEN................................................................................. 67 Inleiding .................................................................................................................................................. 67
3.2 Invoegtoepassingen ................................................................................................................................ 67 3.2.1 Analysis Toolpak................................................................................................................................. 68 3.2.2 Meer functies ....................................................................................................................................... 68 3.3 Aselecte getallen ..................................................................................................................................... 68 3.3.1 Aselecte getallen genereren ................................................................................................................. 68 3.3.2 Matrixformule invoeren....................................................................................................................... 70 3.3.3 Kopiëren naar waarden ........................................................................................................................ 71 3.4 Frequentietabel ...................................................................................................................................... 72 3.4.1 Een frequentietabel maken .................................................................................................................. 72
4 – Excel 2002 - gevorderden
3.4.2
De categorieën aanpassen en zelf de grafiek maken............................................................................ 73
3.5 Lineaire regressie ................................................................................................................................... 73 3.5.1 Regressie.............................................................................................................................................. 73 3.5.2 Het voorbeeld ...................................................................................................................................... 74 3.5.3 De grafiek ............................................................................................................................................ 75 3.5.4 Vergelijking van de rechte................................................................................................................... 76 3.5.5 De functie VOORSPELLEN ............................................................................................................... 76 3.5.6 Andere functies.................................................................................................................................... 77 3.6
De functie WERKDAG.......................................................................................................................... 77
3.7
Oefeningen.............................................................................................................................................. 78
4 4.1
DOELZOEKEN – OPLOSSER - SCENARIOBEHEER ..................................... 81 Inleiding .................................................................................................................................................. 81
4.2 Doelzoeken.............................................................................................................................................. 81 4.2.1 Het voorbeeld ...................................................................................................................................... 81 4.2.2 Opmerking........................................................................................................................................... 82 4.3 De Oplosser............................................................................................................................................. 82 4.3.1 Installeren van Oplosser ...................................................................................................................... 83 4.3.2 Openen van het voorbeeld ................................................................................................................... 83 4.3.3 De Oplosser starten.............................................................................................................................. 84 4.3.4 Restricties toevoegen........................................................................................................................... 85 4.3.5 Opslaan van de parameters .................................................................................................................. 86 4.4 Scenariobeheer ....................................................................................................................................... 87 4.4.1 Een begroting opstellen ....................................................................................................................... 87 4.4.2 Naam geven aan de cellen ................................................................................................................... 88 4.4.3 Drie mogelijke scenario’s .................................................................................................................... 88 4.5 Scenario’s toevoegen.............................................................................................................................. 88 4.5.1 Een scenario toevoegen ....................................................................................................................... 88 4.5.2 Een gunstig scenario toevoegen........................................................................................................... 89 4.5.3 Een derde scenario maken ................................................................................................................... 90 4.5.4 Bewaar de werkmap ............................................................................................................................ 91 4.6 Een scenario weergeven......................................................................................................................... 91 4.6.1 Een scenario weergeven m.b.v. het dialoogvenster Scenariobeheer ................................................... 91 4.6.2 Een scenario weergeven m.b.v. de keuzelijst Scenario........................................................................ 91 4.7
Een scenario bewerken .......................................................................................................................... 92
4.8
Een rapport maken ................................................................................................................................ 92
4.9
Invoegtoepassingen verwijderen........................................................................................................... 93
4.10
Oefeningen.............................................................................................................................................. 94
5
OVERZICHTEN ................................................................................................. 95
5.1
Inleiding .................................................................................................................................................. 95
5.2
Een overzicht automatisch laten creëren ............................................................................................. 95
5.3
Tonen en verbergen van detailgegevens............................................................................................... 96
5.4
Verwijderen van een niveau.................................................................................................................. 97
5.5
Opties ...................................................................................................................................................... 97
5.6
Oefeningen.............................................................................................................................................. 98
6
MACRO’S EN VISUAL BASIC FOR APPLICATIONS...................................... 99
6.1
Inleiding .................................................................................................................................................. 99
6.2
Opnemen van een macro ....................................................................................................................... 99
6.3 De macro uitvoeren.............................................................................................................................. 101 6.3.1 De macro starten met menukeuzen.................................................................................................... 101 6.3.2 Uitvoeren m.b.v. de sneltoets ............................................................................................................ 102
Inhoudsopgave - 5
6.4 De Visual Basic omgeving.................................................................................................................... 102 6.4.1 Iets meer over de persoonlijke werkmap ........................................................................................... 102 6.4.2 Een module........................................................................................................................................ 103 6.4.3 Het projectvenster.............................................................................................................................. 104 6.4.4 Het eigenschappenvenster ................................................................................................................. 104 6.5 De programmacode.............................................................................................................................. 104 6.5.1 Een subprocedure .............................................................................................................................. 105 6.5.2 Commentaar ...................................................................................................................................... 105 6.5.3 Opdrachten en help............................................................................................................................ 105 6.5.4 Cursorbesturingstoetsen..................................................................................................................... 106 6.5.5 Objecten, methoden en eigenschappen.............................................................................................. 106 6.5.6 Grafische voorstelling........................................................................................................................ 107 6.5.7 En de betekenis? ................................................................................................................................ 107 6.5.8 Persnlk.xls terug onzichtbaar maken ................................................................................................. 108 6.6 Relatieve of absolute verwijzingen gebruiken ................................................................................... 108 6.6.1 Een macro opnemen vanuit de werkbalk Visual Basic ...................................................................... 108 6.6.2 De macro uitvoeren ........................................................................................................................... 108 6.6.3 Programmacode bekijken .................................................................................................................. 109 6.6.4 Programmacode bewerken................................................................................................................. 109 6.6.5 Relatieve of absolute verwijzingen gebruiken................................................................................... 110 6.7 Een macro toekennen aan een menukeuze of werkbalkknop .......................................................... 111 6.7.1 Een nieuwe werkbalk maken ............................................................................................................. 111 6.7.2 Een macro toekennen aan een knop in een werkbalk ........................................................................ 112 6.7.3 Naam wijzigen................................................................................................................................... 112 6.7.4 Knopvlak wijzigen............................................................................................................................. 113 6.7.5 Uittesten van de macro ...................................................................................................................... 113 6.8
Een macro verplaatsen of kopiëren .................................................................................................... 114
6.9 Een macro koppelen aan een knop in het werkblad ......................................................................... 114 6.9.1 Een knop tekenen............................................................................................................................... 114 6.9.2 Een macro toewijzen aan een knop.................................................................................................... 115 6.9.3 Besturingselement opmaken.............................................................................................................. 115 6.9.4 De grootte of de plaats wijzigen ........................................................................................................ 116 6.9.5 De naam van de knop wijzigen.......................................................................................................... 116 6.10
Een macro koppelen aan een grafisch object..................................................................................... 116
6.11
Verwijderen van een macro ................................................................................................................ 117
6.12 Objecten, eigenschappen en methoden .............................................................................................. 118 6.12.1 Terminologie ..................................................................................................................................... 118 6.12.2 Eigenschappen een waarde geven ..................................................................................................... 118 6.12.3 Veel voorkomende eigenschappen .................................................................................................... 118 6.12.4 Een methode gebruiken ..................................................................................................................... 118 6.12.5 Enkele veel voorkomende methoden................................................................................................. 119 6.13 Collecties ............................................................................................................................................... 119 6.13.1 Een element uit een collectie aanduiden............................................................................................ 119 6.13.2 Veel voorkomende collecties............................................................................................................. 119 6.14
7 7.1
Oefeningen............................................................................................................................................ 119
PROCEDURES EN FUNCTIES IN VBA...........................................................123 Inleiding ................................................................................................................................................ 123
7.2 Een zelfgedefinieerde functie .............................................................................................................. 123 7.2.1 Een bijkomende module in Persnlk.xls.............................................................................................. 123 7.2.2 Een functie om 100-delige graden om te zetten naar 60-delige graden ............................................. 123 7.2.3 Een functie......................................................................................................................................... 125 7.2.4 Compileren van de code .................................................................................................................... 126 7.3
Oproepen van de functie...................................................................................................................... 126
7.4
Variabelen............................................................................................................................................. 127
7.5
Gegevenstypen in VBA ........................................................................................................................ 128
6 – Excel 2002 - gevorderden
7.6 Declareren van variabelen................................................................................................................... 129 7.6.1 De instructie Dim............................................................................................................................... 129 7.6.2 Persoonlijke variabelen...................................................................................................................... 129 7.6.3 Openbare variabelen .......................................................................................................................... 130 7.6.4 Statische variabelen ........................................................................................................................... 130 7.6.5 Impliciete declaratie .......................................................................................................................... 131 7.6.6 Deftype .............................................................................................................................................. 131 7.6.7 Declareren is niet verplicht, tenzij ... ................................................................................................. 131 7.6.8 Naamgeving....................................................................................................................................... 131 7.7
Het statement Let................................................................................................................................. 131
7.8 Operatoren ........................................................................................................................................... 132 7.8.1 Rekenkundige operatoren .................................................................................................................. 132 7.8.2 Operatoren voor tekenreeksen ........................................................................................................... 132 7.8.3 Vergelijkingsoperatoren .................................................................................................................... 133 7.8.4 Logische operatoren .......................................................................................................................... 133 7.9 Ingebouwde functies ............................................................................................................................ 133 7.9.1 Sgn..................................................................................................................................................... 133 7.9.2 Int en Fix............................................................................................................................................ 133 7.9.3 Round ................................................................................................................................................ 134 7.9.4 Functies om te converteren................................................................................................................ 134 7.10
Het venster Direct ................................................................................................................................ 134
7.11 De methode Print ................................................................................................................................. 135 7.11.1 Syntax................................................................................................................................................ 135 7.11.2 Voorbeelden ...................................................................................................................................... 136 7.12
Opties .................................................................................................................................................... 136
7.13 Een subprocedure ................................................................................................................................ 137 7.13.1 Voorbeeld .......................................................................................................................................... 137 7.13.2 De subprocedure aanmaken............................................................................................................... 137 7.13.3 De procedure Voettekst...................................................................................................................... 138 7.13.4 InputBox ............................................................................................................................................ 139 7.13.5 De macro Afdrukvoorbeeld maken .................................................................................................... 140 7.13.6 Het geheel uittesten ........................................................................................................................... 140 7.14 InputBox ............................................................................................................................................... 140 7.14.1 Syntax................................................................................................................................................ 140 7.14.2 Twips ................................................................................................................................................. 141 7.15 Constanten............................................................................................................................................ 141 7.15.1 Symbolische constanten .................................................................................................................... 141 7.15.2 Ingebouwde constanten ..................................................................................................................... 142 7.16 Modules en procedures........................................................................................................................ 142 7.16.1 Syntax van een subprocedure ............................................................................................................ 143 7.16.2 Syntax van een functieprocedure....................................................................................................... 144 7.17
Bereik van variabelen en constanten.................................................................................................. 144
7.18
Oefeningen............................................................................................................................................ 145
8 8.1
HET OBJECTMODEL VAN EXCEL .................................................................147 Inleiding ................................................................................................................................................ 147
8.2 Objectenhiërarchie .............................................................................................................................. 147 8.2.1 Een object .......................................................................................................................................... 147 8.2.2 Een collectie ...................................................................................................................................... 147 8.2.3 Objectenhiërarchie............................................................................................................................. 147 8.3 Verwijzen naar objecten...................................................................................................................... 148 8.3.1 Een element uit een collectie ............................................................................................................. 148 8.3.2 Verwijzing naar een object ................................................................................................................ 149 8.4 Methoden en eigenschappen ............................................................................................................... 149 8.4.1 Eigenschappen................................................................................................................................... 149
Inhoudsopgave - 7
8.4.2 8.5
Methoden........................................................................................................................................... 150 Het objectenoverzicht .......................................................................................................................... 151
8.6 Het object Range .................................................................................................................................. 152 8.6.1 Verwijzen naar een object van het type Range met de eigenschap Range()...................................... 152 8.6.2 De eigenschap Cells........................................................................................................................... 154 8.6.3 De eigenschap Offset......................................................................................................................... 155 8.6.4 De methoden Select, Copy en Paste .................................................................................................. 156 8.6.5 De methoden ClearContents, Clear en Delete ................................................................................... 156 8.7
Objectvariabelen .................................................................................................................................. 156
8.8 Meer over cellenbereiken .................................................................................................................... 157 8.8.1 Union ................................................................................................................................................. 157 8.8.2 De eigenschap Range toegepast op een object van het type Range................................................... 158 8.8.3 Een gebied als een verzameling van… .............................................................................................. 158 8.8.4 R1C1-notatie...................................................................................................................................... 159 8.9
Een grafiek maken ............................................................................................................................... 160
8.10
Oefeningen............................................................................................................................................ 161
9 9.1
CONTROLESTRUCTUREN IN VBA ................................................................163 Inleiding ................................................................................................................................................ 163
9.2 De selectie.............................................................................................................................................. 163 9.2.1 Programmacode ................................................................................................................................. 163 9.2.2 Testen ................................................................................................................................................ 164 9.2.3 Korte uitleg........................................................................................................................................ 164 9.2.4 Testen in het venster Direct............................................................................................................... 165 9.3
Het statement MsgBox en de functie MsgBox()................................................................................. 165
9.4 Het If-statement ................................................................................................................................... 167 9.4.1 Syntax................................................................................................................................................ 167 9.4.2 Voorbeeld 1 ....................................................................................................................................... 167 9.4.3 Voorbeeld 2 ....................................................................................................................................... 168 9.4.4 Exit Function ..................................................................................................................................... 169 9.5 Ingebouwde functies ............................................................................................................................ 169 9.5.1 Left .................................................................................................................................................... 169 9.5.2 Right .................................................................................................................................................. 169 9.5.3 Mid .................................................................................................................................................... 170 9.5.4 Len..................................................................................................................................................... 170 9.5.5 UCase ................................................................................................................................................ 170 9.5.6 LCase................................................................................................................................................. 170 9.5.7 VarType............................................................................................................................................. 170 9.5.8 IsEmpty ............................................................................................................................................. 171 9.5.9 IsNull ................................................................................................................................................. 171 9.6 Het Select/Case-statement ................................................................................................................... 172 9.6.1 Een voorbeeld.................................................................................................................................... 172 9.6.2 Aanmaken van een opdrachtknop en macro ...................................................................................... 172 9.6.3 Syntax................................................................................................................................................ 174 9.6.4 Nog een voorbeeld............................................................................................................................. 174 9.7 Het For/Next-statement ....................................................................................................................... 174 9.7.1 Het voorbeeld .................................................................................................................................... 174 9.7.2 Aantallen per dag............................................................................................................................... 175 9.7.3 Programmacode ................................................................................................................................. 176 9.7.4 Let op: niet automatisch herberekend................................................................................................ 176 9.7.5 En voor de tweede week? .................................................................................................................. 176 9.7.6 De syntax ........................................................................................................................................... 177 9.7.7 De aantallen per week........................................................................................................................ 178 9.7.8 De formules voor de aantallen per balie ............................................................................................ 178 9.8 De (gewone) iteratie ............................................................................................................................. 179 9.8.1 Het voorbeeld .................................................................................................................................... 179
8 – Excel 2002 - gevorderden
9.8.2 9.9
Programmacode ................................................................................................................................. 180 Do While/Loop en andere lussen ........................................................................................................ 181
9.10 Enkele datumfuncties .......................................................................................................................... 181 9.10.1 De functie Weekday()........................................................................................................................ 181 9.10.2 De functie CDate ()............................................................................................................................ 182 9.10.3 De functie IsDate() ............................................................................................................................ 182 9.11 De functie Format ................................................................................................................................ 183 9.11.1 Weergave van getallen....................................................................................................................... 183 9.11.2 Weergave van tijd en datum .............................................................................................................. 185 9.11.3 Opletten met datums in programmacode ........................................................................................... 187 9.11.4 Strings................................................................................................................................................ 187 9.12
De instructie For Each/Next................................................................................................................ 188
9.13
Een opmerking ..................................................................................................................................... 188
9.14
Oefeningen............................................................................................................................................ 189
10
MATRICES - DEBUGGEN - FOUTAFHANDELING .....................................191
10.1
Inleiding ................................................................................................................................................ 191
10.2 Matrices ................................................................................................................................................ 191 10.2.1 Een voorbeeld.................................................................................................................................... 191 10.2.2 Declaratie van een matrix .................................................................................................................. 192 10.2.3 Eéndimensionaal?.............................................................................................................................. 193 10.3 Meerdimensionale matrices ................................................................................................................ 193 10.3.1 Voorbeeld .......................................................................................................................................... 193 10.3.2 Uitbreiding syntax statements Public, Private, Dim en Static ........................................................... 194 10.3.3 Meerdimensionaal?............................................................................................................................ 194 10.4
Dynamische matrices ........................................................................................................................... 194
10.5
Een matrix in een Variant ................................................................................................................... 195
10.6
Argumenten van een procedure.......................................................................................................... 195
10.7
ByVal en ByRef .................................................................................................................................... 196
10.8
Optionele parameters .......................................................................................................................... 197
10.9
Een array van parameters................................................................................................................... 199
10.10 Enkele ingebouwde functies............................................................................................................ 199 10.10.1 IsMissing ........................................................................................................................................... 199 10.10.2 LTrim, RTrim en Trim. ..................................................................................................................... 200 10.11
Benoemde argumenten.................................................................................................................... 200
10.12 Fouten opsporen .............................................................................................................................. 200 10.12.1 De werkbalk Foutopsporing .............................................................................................................. 200 10.12.2 Een onderbrekingspunt ...................................................................................................................... 200 10.12.3 De volgende stap ............................................................................................................................... 201 10.12.4 Snelcontrole....................................................................................................................................... 202 10.12.5 Macro hervatten................................................................................................................................. 202 10.12.6 Stap over............................................................................................................................................ 202 10.12.7 Verwijderen van een breakpoint........................................................................................................ 202 10.13 Een controle-expressie toevoegen ................................................................................................... 203 10.13.1 Een controle-expressie toevoegen ..................................................................................................... 203 10.13.2 Controle-expressies verwijderen ....................................................................................................... 203 10.14 On Error Goto ................................................................................................................................. 204 10.14.1 Een voorbeeld.................................................................................................................................... 204 10.14.2 Toch niet foutloos? ............................................................................................................................ 204 10.14.3 Het statement On Error Goto............................................................................................................. 205 10.14.4 Een foutafhandelingsroutine in het voorbeeld ................................................................................... 205 10.14.5 Het statement Resume ....................................................................................................................... 206 10.15
Oefeningen........................................................................................................................................ 207
Inhoudsopgave - 9
11
ZELF FORMULIEREN MAKEN ....................................................................209
11.1
Inleiding ................................................................................................................................................ 209
11.2 Een formulier toevoegen...................................................................................................................... 209 11.2.1 Vertreksituatie ................................................................................................................................... 209 11.2.2 Een formulier toevoegen ................................................................................................................... 209 11.2.3 Formaat wijzigen ............................................................................................................................... 210 11.2.4 Het eigenschappenvenster ................................................................................................................. 210 11.2.5 Naam en bijschrift wijzigen............................................................................................................... 211 11.2.6 Tonen van het formulier .................................................................................................................... 211 11.2.7 De Werkset Besturingselementen...................................................................................................... 211 11.3 Besturingselementen in een formulier................................................................................................ 213 11.3.1 Een besturingselement in een formulier plaatsen .............................................................................. 213 11.3.2 Formaat van een besturingselement wijzigen .................................................................................... 213 11.3.3 De tekst in de label aanpassen ........................................................................................................... 213 11.3.4 Een tekstvak toevoegen en de eigenschappen instellen ..................................................................... 213 11.3.5 Kopiëren van besturingselementen.................................................................................................... 214 11.3.6 Een besturingselement verwijderen en verplaatsen ........................................................................... 214 11.3.7 Een opdrachtknop .............................................................................................................................. 214 11.4
Tabvolgorde.......................................................................................................................................... 215
11.5
Besturingselementen koppelen aan een cel ........................................................................................ 216
11.6 Een formulier tonen............................................................................................................................. 216 11.6.1 Knop toevoegen in het blad Factuur ................................................................................................. 216 11.6.2 Uittesten van de knop ........................................................................................................................ 216 11.7
Een waarde in een besturingselement plaatsen ................................................................................. 217
11.8
Gegevens invullen als de gebruiker op OK klikt ............................................................................... 218
11.9 Controle van de gegevens .................................................................................................................... 219 11.9.1 Controle of een veld is ingevuld........................................................................................................ 219 11.9.2 Uittesten............................................................................................................................................. 219 11.9.3 Sluiten van het dialoogvenster........................................................................................................... 219 11.9.4 De knop Annuleren............................................................................................................................ 220 11.10
Automatisch starten van de macro................................................................................................. 220
11.11 Andere besturingselementen........................................................................................................... 220 11.11.1 Aanmaken van een dialoogvenster met een keuzelijst....................................................................... 220 11.11.2 Eigenschappen van de label en de keuzelijst ..................................................................................... 221 11.11.3 Aanbrengen van de waarden van de keuzelijst .................................................................................. 221 11.11.4 Een macro aanmaken om te testen..................................................................................................... 221 11.12
Ingebouwde dialoogvensters ........................................................................................................... 222
11.13 Digitale handtekening...................................................................................................................... 223 11.13.1 Een digitaal certificaat maken ........................................................................................................... 223 11.13.2 Een digitale handtekening toevoegen ................................................................................................ 223 11.14
Oefeningen........................................................................................................................................ 225
12
INTERACTIE MET ANDERE TOEPASSINGEN ...........................................229
12.1
Inleiding ................................................................................................................................................ 229
12.2 Interactie met Word ............................................................................................................................ 229 12.2.1 Het document in Word ...................................................................................................................... 229 12.2.2 Het document in Excel ...................................................................................................................... 230 12.3
Een verwijzing naar een toepassing opnemen ................................................................................... 231
12.4 Een nieuw object maken...................................................................................................................... 231 12.4.1 De instructies uit Word...................................................................................................................... 232 12.4.2 Instructies in Excel ............................................................................................................................ 233 12.4.3 Samenvoegen van de code................................................................................................................. 233 12.4.4 Uittesten............................................................................................................................................. 234 12.5
Een bestaand object gebruiken ........................................................................................................... 235
10 – Excel 2002 - gevorderden
12.6 Ook met Access .................................................................................................................................... 235 12.6.1 Verwijzing ......................................................................................................................................... 235 12.6.2 Wat willen we doen? ......................................................................................................................... 235 12.6.3 Objecten in Excel............................................................................................................................... 235 12.6.4 De programmacode om een keuzelijst op te vullen ........................................................................... 236 12.6.5 Uittesten............................................................................................................................................. 237 12.7 Een lijst met lettertypen ...................................................................................................................... 237 12.7.1 Wat willen we? .................................................................................................................................. 237 12.7.2 Programmacode ................................................................................................................................. 238 12.7.3 Uittesten en bewaren ......................................................................................................................... 238 12.8
Oefeningen............................................................................................................................................ 238
APPENDIX A AFSPRAKEN M.B.T. NAAMGEVING .............................................241 TREFWOORDENREGISTER..................................................................................247
Inhoudsopgave - 11