Access 2002. Gevorderden (JET) Roger Frans. met cd-rom. campinia media



Vergelijkbare documenten
Access 2000 gevorderden

2/3 OFFICE 2007 ACCESS. Roger Frans. campinia media vzw

Afspraken vet voor- beeldenmap oefeningenmap

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.

Afspraken vet voor- beeldenmap oefe- ningenmap

Access 97 gevorderden

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.

INLEIDING... 1 A FSPRAKEN... 2 INHOUDSOPGAVE...

OFFICE 2007 ACCESS. Roger Frans. campinia media vzw

ROGER FRANS. met cd. Conform module Rekenblad 3 van het leerplan INFORMATICA-TOEPASSINGSSOFTWARE voor het volwassenenonderwijs

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.

Access Gevorderden (SQL server) Roger Frans. met cd-rom

Excel 2000 gevorderden

Excel Gevorderden. Roger Frans. met cd-rom

INLEIDING... 1 AFSPRAKEN... 2 INHOUDSOPGAVE...

INLEIDING... 1 A FSPRAKEN... 2 INHOUDSOPGAVE...

OFFICE 2007 EXCEL. Roger Frans. campinia media vzw

Afspraken vet voorbeeldenmap oefeningenmap

Visual Basic 6.0 beginners

Afspraken vet voorbeeldenmap oefeningenmap

Microsoft. Roger Frans

Afspraken. Typ Dit moet je letterlijk intypen.

Afspraken. Dit moet je letterlijk intypen.

Inleiding. Roger Frans oktober Inleiding - 1

Outlook 2000 beginners

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.

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.

Access /3. Roger Frans. met cd-rom. campinia media vzw

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.

Je vindt in de startmap ook het bestand Appendix Excel pdf. Het bestand

Access Beginners. Roger Frans. met cd-rom. campinia media

Microsoft. Roger Frans

Outlook Beginners. Roger Frans. met cd-rom. campinia media

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.

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.

Access 2000 beginners

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.

Inhoudsopgave. Module 2 Geavanceerde formulieren

Visual Studio NET Framework 2.0. campinia media vzw

Leren programmeren met

Word 2000 gevorderden

Trainingsomschrijving ACCESS 97 / 2000 / 2003NL

De acties die je als gebruiker stapsgewijs moet volgen, worden als volgt genoteerd.

2/3 OFFICE 2007 EXCEL. Roger Frans. campinia media vzw

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.

Access. Module 0. Access, versie 97 (UK) Nummer: 012 ( ) The Courseware Company

MS Access. Module 0. Pakketnaam, versie 2002 (NL) Nummer: 296 ( ) The Courseware Company

OFFICE 2007 OUTLOOK. Roger Frans. campinia media vzw

Word Gevorderden. Roger Frans. met cd-rom. campinia media

Excel 2000 beginners. Roger Frans

Microsoft. Roger Frans

Inhoud Basiscursus. Access 2010 NL-NL

2/3 OFFICE 2007 WORD. Roger Frans. campinia media vzw

MS Access. Module 0. MS Access, versie 2000 (NL) Nummer: 257 ( ) The Courseware Company

Excel /3. Roger Frans. met cd-rom. campinia media cvba-vso

De acties die je als gebruiker stapsgewijs moet volgen, worden als volgt genoteerd.

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.

Over het boek Over de auteur campinia media campinia media campinia media

campinia media cvba-vso

MS Access. Module 0. MS Access, versie 97 (NL) Nummer: 237 ( ) The Courseware Company

Access voor beginners - hoofdstuk 25

INHOUDSOPGAVE Ms Access 2007

VAN HET PROGRAMMEREN. Inleiding

Opleidingscatalogus: Automatisering

Auteur boek: Vera Lukassen Titel boek: Word Gevorderd , Serasta Uitgegeven in eigen beheer Eerste druk: augustus 2012

Jochen Mariën september 2013

EUROPEES COMPUTER RIJBEWIJS / INTERNATIONAAL COMPUTER RIJBEWIJS ADVANCED DATABASE

Programmeren in Access met VBA

Jochen Mariën C#2012. Leren programmeren in. deel 1. media cvba-vso. campinia

Programmeren in Access 2016 met VBA

Windows applicaties met VB.NET VB Express 2010

INHOUDSOPGAVE Ms Access 2010

Afspraken. Typ Dit moet je letterlijk intypen.

Programmeren in Excel 2016 met VBA

module Instruct, Postbus 38, 2410 AA Bodegraven - 1 e druk: november 2008

Microbiologie ter kennismaking

Visual Basic /2

VAN HET PROGRAMMEREN. Inleiding. Het spiraalmodel. De programmeertaal. vervolgens de berekening van het totale bedrag, incl. BTW:

Visual Studio NET Framework 2.0. campinia media vzw

Outlook Roger Frans. met cd-rom. campinia media cvba-vso

Macro s. 4.2 Een macro maken

ADVANCED DATABASES Syllabus versie 2.0

Inhoud. VBA Excel 2010

Nummer: 011 ( ) The Courseware Company

Databases gebruiken. Databases gebruiken

Auteur boek: Vera Lukassen Titel boek: Excel Beginners , Serasta Uitgegeven in eigen beheer Eerste druk: mei 2013

Word 2016 VBA Cursus Leer programmeren in Word

Handleiding Access 2010

MS Access. Module 0. MS Access, versie 2000 (NL) Nummer: 256 ( ) The Courseware Company

Programmeren in Word 2013 met VBA

Aan de slag. Handleiding Voorraadbeheer

Auteur boek: Vera Lukassen Titel boek: Excel Expert , Serasta Uitgegeven in eigen beheer Eerste druk: November 2013

Visual Basic.NET. Visual Basic.NET. M. den Besten 0.3 VB. NET

OFFICE A LA CARTE - ACCESS 2013

Programmeren in Excel met VBA

Handleiding Menukeuze

Frans, Roger Word /3 / Roger Frans; Geel: Campinia Media vzw, 2009; 240 p; index; 25 cm; gelijmd. ISBN:

6.2 VBA Syntax. Inleiding Visual Basic

INHOUDSOPGAVE. Access: programmeren met VBA INHOUDSOPGAVE 1 INTRODUCTIE 4

6.3 VBA Syntax Instructie. Wij gaan de Visual Basic Editor opnieuw openen, om de instructie die wij zojuist getypt hebben, nader te bekijken.

Transcriptie:

Access 2002 Gevorderden (JET) Roger Frans met cd-rom campinia media

Frans, Roger Access 2002 gevorderden (JET) / Roger Frans; Geel: Campinia Media vzw, 2002; 290 p; index; 29 cm; gelijmd. ISBN: 90.356.1151.9; NUGI 854; UDC 681.3.06; Wettelijk depot België: D/2002/3941/2 Campinia Media vzw Kleinhoefstraat 4 B 2440 GEEL (Belgium) Tel.: (+32) 014/59 09 59 Fax: (+32) 014/59 03 44 e-mail: <info@campiniamedia.be> 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 Access 2002 is een relationeel databasesysteem. Het is m.a.w. een programma om gegevens op een (relatief) gemakkelijke manier te beheren. Deze gegevens worden in tabellen bewaard. Tussen de tabellen kunnen relaties bestaan. In de cursus Access 2002 - beginners zijn de klassieke onderwerpen m.b.t. een databasesysteem aan bod gekomen: aanmaken van tabellen, ontwerpen van query s, formulieren, rapporten en etiketten. In de cursus Access 2002 gevorderden (Jet) leren we programmeren in Access. We gebruiken hiervoor de programmeertaal Visual Basic for Applications. We maken ook gebruik van het ADOobjectmodel om de gegevens in een database te benaderen. Deze cursus behandelt enkel typische Access-databases, databases met een extensie MDB, ook wel Jet-databases genoemd. Een ander deel; Access 2002 gevorderden (SQL Server) behandelt Access Data Projects, ADP-bestanden. We gebruiken daar Access voor de gebruikersomgeving maar de gegevens komen in een SQL Server database. In de eerste drie hoofdstukken leggen we de basis uit van de taal Visual Basic for Applications (VBA). We leren werken met sub- en functieprocedures, ingebouwde functies, de controlesturen zoals If, While en Select, een foutafhandelingsroutine, enz. In het vierde, vijfde en zesde hoofdstuk gaan we vooral in op technieken waarbij we gebruik maken van afhankelijke formulieren. De verschillende formulieren worden aan elkaar gesmeed m.b.v. VBA, we controleren de gegevens die de gebruiker ingeeft, voegen elementen aan een keuzelijst toe, enz. In de volgende drie hoofdstukken gaan we dieper in op ActiveX Data Objects. We kunnen hiermee database-objecten benaderen: tabellen, query s, enz. We werken in deze hoofdstukken ook met onafhankelijke formulieren. Access kent geen grenzen meer In een 10de hoofdstuk geven we een aantal speciale voorbeelden die we kunnen gebruiken in formulieren en rapporten. In het laatste hoofdstuk besteden we aandacht aan het maken van een eigen menustructuur en werkbalk. We kunnen onze toepassing af maken. Access 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. Bij de cursus hoort een cd-rom. Op deze cd-rom staan de meeste voorbeelden en oefeningen die u uitwerkt in deze cursus. U vindt er ook een bestand Lees mij.doc. Hierin staat uitgelegd hoe u de bestanden gebruikt. U kunt dit bestand lezen door op de naam van het bestand te dubbelklikken in Verkenner of Deze Computer of u kunt het openen in Kladblok of een tekstverwerkingspakket. Tot slot van deze inleiding dank ik éénieder die geholpen heeft bij het tot stand komen van deze cursus. Dank u wel. Ik hoop dat dit voor u een nuttige en aangename cursus is, een cursus die u inzicht geeft in het programmeren in Access. Opmerkingen die een latere uitgave kunnen verbeteren zijn welkom. Roger Frans februari 2002 Inleiding - 1

2 Access 2002 gevorderden (Jet)

Inhoudstafel INLEIDING... 1 INHOUDSTAFEL... 3 1 INLEIDING TOT VISUAL BASIC FOR APPLICATIONS... 13 1.1 Inleiding... 13 1.2 Een voorbeeld van een subprocedure... 13 1.2.1 Probleemstelling... 13 1.2.2 Ontwerp van het scherm... 13 1.2.3 Gebeurtenisprocedure... 14 1.2.4 Visual Basic Editor... 15 1.2.5 De programmacode... 16 1.2.6 Compileren... 18 1.2.7 Uittesten... 19 1.3 Begrippen... 19 1.3.1 Collecties en objecten... 19 1.3.2 Eigenschappen en methoden... 19 1.3.3 Gebeurtenissen... 20 1.3.4 Procedures... 21 1.3.5 Modules... 21 1.4 Commentaar... 22 1.5 Variabelen... 22 1.6 Gegevenstypen in VBA... 23 1.7 Declareren van variabelen... 24 1.7.1 De instructie DIM... 24 1.7.2 Persoonlijke variabelen op moduleniveau... 24 1.7.3 Openbare variabelen... 25 1.7.4 Statische variabelen... 27 1.7.5 Impliciete declaratie... 27 1.7.6 Deftype... 27 1.7.7 Declareren is niet verplicht, tenzij...... 27 1.7.8 Besturingselementen... 28 1.8 Het statement Let... 28 1.9 Operatoren... 28 1.9.1 Rekenkundige operatoren... 28 1.9.2 Operatoren voor tekenreeksen... 29 1.9.3 Vergelijkingsoperatoren... 29 1.9.4 Logische operatoren... 29 1.10 Help... 29 1.11 Ingebouwde functies... 30 1.11.1 Left... 30 1.11.2 Right... 30 1.11.3 Mid... 30 1.11.4 Len... 30 1.11.5 UCase... 31 1.11.6 LCase... 31 1.11.7 Conversiefuncties... 31 1.12 Het venster Direct... 31 1.12.1 De waarde van een expressie berekenen... 31 1.12.2 Variabelen een waarde geven... 32 1.13 Een functieprocedure... 32 1.13.1 Probleemstelling... 32 1.13.2 Ontwerp van het scherm... 32 Inhoudstafel - 3

1.13.3 Oproepen van de functie...33 1.13.4 Procedure invoegen...33 1.13.5 Opmerking...34 1.14 De functie in een algemene module opnemen...35 1.15 De VBE-omgeving...35 1.15.1 Het projectvenster...35 1.15.2 De toetsencombinatie Alt+F11...36 1.15.3 Vergroten, verkleinen, verplaatsen, enz....36 1.15.4 Ctrl+<spatiebalk>...36 1.15.5 Venster splitsen...37 1.15.6 Procedureweergave...37 1.15.7 Toetsen in het modulevenster en bij uitvoering...38 1.16 Enkele datumfuncties...38 1.16.1 DateAdd...38 1.16.2 DateDiff...38 1.17 Het objectenoverzicht...39 1.17.1 Algemeen...39 1.17.2 Verwijzingen...39 1.17.3 Objectenoverzicht...39 1.17.4 Zoeken...40 1.18 Bewaren van het formulier en de module...41 1.19 Afdrukken van een module...41 1.20 Constanten...42 1.20.1 Symbolische constanten...42 1.20.2 Ingebouwde constanten...43 1.21 Naamgeving...43 1.22 Oefeningen...44 2 CONTROLESTRUCTUREN... 47 2.1 Inleiding...47 2.2 De selectie, een inleidend voorbeeld...47 2.2.1 Probleemstelling...47 2.2.2 Ontwerp van het formulier...48 2.2.3 Programmacode...48 2.3 Het statement MsgBox en de functie MsgBox()...49 2.3.1 Syntax en uitleg...49 2.3.2 Andere notatie...51 2.4 Het If-statement...51 2.4.1 Syntax...51 2.4.2 Voorbeeld 1...51 2.4.3 Voorbeeld 2 (Geneste If-structuren)...52 2.5 De methode Print...52 2.5.1 Syntax...52 2.5.2 Voorbeelden...53 2.6 De meervoudige selectie...53 2.6.1 Probleemstelling...53 2.6.2 Uitwerking...54 2.7 Het Select Case-statement...55 2.7.1 Syntax...55 2.7.2 Het voorbeeld anders uitgewerkt...55 2.7.3 Nog een voorbeeld...55 2.8 De functie InputBox...56 2.8.1 Syntax...56 2.8.2 Twips...56 2.9 De iteratie met teller...57 2.9.1 Probleemstelling...57 2.9.2 Uitwerking...57 2.10 For... Next...58 4 Access 2002 gevorderden (Jet)

2.11 De functies Asc() en Chr()... 59 2.11.1 Van ASCII tot ANSI naar UNICODE...59 2.11.2 De functie Asc()... 59 2.11.3 De functie Chr()... 60 2.12 De (gewone) iteratie... 60 2.12.1 Probleemstelling... 60 2.12.2 Uitwerking... 60 2.13 Do While... Loop en andere lussen... 61 2.14 Enkele datumfuncties... 62 2.14.1 De functie Weekday()... 62 2.14.2 De functie CDate ()... 62 2.14.3 De functie IsDate()... 63 2.15 De functie Format... 63 2.15.1 Weergave van getallen... 63 2.15.2 Weergave van tijd en datum... 66 2.15.3 Opletten met datums in programmacode... 67 2.15.4 Strings... 67 2.16 Eéndimensionale matrices... 68 2.16.1 Probleemstelling... 68 2.16.2 Uittesten... 69 2.16.3 Declaratie van een matrix... 69 2.16.4 Uitbreiding syntax statements Public, Private, Dim en Static... 70 2.16.5 Eéndimensionaal?... 70 2.17 Tweedimensionale matrices... 70 2.17.1 Voorbeeld... 70 2.17.2 Uitbreiding syntax statements Public, Private, Dim en Static... 71 2.17.3 Meerdimensionaal?... 71 2.18 Dynamische matrices... 71 2.19 Oefeningen... 72 3 MEER OVER PROCEDURES EN DEBUGGEN... 75 3.1 Inleiding... 75 3.2 Modules en procedures... 75 3.2.1 Modules... 75 3.2.2 Procedures... 75 3.3 Subprocedures... 75 3.4 Functieprocedures... 77 3.5 Benoemde argumenten... 77 3.6 ByVal of ByRef... 78 3.7 Optionele parameters... 79 3.8 De functie IsMissing... 80 3.9 Een array van parameters... 80 3.10 Het statement For / Each... 81 3.11 Faculteit berekenen... 82 3.11.1 Het begrip faculteit... 82 3.11.2 Probleemdefinitie... 83 3.11.3 Ontwerp van het formulier... 83 3.11.4 Programmacode... 83 3.12 On Error GoTo... 85 3.12.1 Trappable errors... 85 3.12.2 Het statement On Error GoTo... 85 3.12.3 De foutafhandelingsroutine... 86 3.12.4 Het statement Resume... 86 3.12.5 Het object Err... 87 3.13 Recursie... 87 3.14 Een bug?... 88 3.15 Een onderbrekingspunt, Stap en Stap over... 90 Inhoudstafel - 5

3.15.1 Een onderbrekingspunt...90 3.15.2 De waarde van een variabele...90 3.15.3 Het venster Lokale variabelen...90 3.15.4 Het venster Direct...91 3.15.5 Stap en Stap over...91 3.15.6 Doorgaan of stoppen...92 3.15.7 Verwijderen van een breakpoint...92 3.15.8 Stop...92 3.16 Een controle (watch)...92 3.16.1 Een controle toevoegen...92 3.16.2 Een controle bewerken...93 3.17 Snelcontrole...93 3.18 Opgeroepen procedures...94 3.19 Oefeningen...94 4 GEKOPPELDE TABELLEN... 99 4.1 Inleiding...99 4.2 Een nieuwe toepassing...99 4.2.1 Inleiding...99 4.2.2 Probleemomschrijving...99 4.2.3 Concretisering...99 4.2.4 Vragen naar voorbeelden...100 4.3 Een datamodel...100 4.4 Een nieuwe toepassing aanmaken...102 4.4.1 Tabellen scheiden van de andere objecten...102 4.4.2 Aanmaken gegevensdatabase...103 4.4.3 Aanmaken van de relaties...104 4.4.4 De toepassingsdatabase...105 4.4.5 Koppelen tabellen...105 4.4.6 Een tweede werkwijze om tabellen te koppelen...106 4.4.7 De koppelingen vernieuwen...106 4.5 Tabellen toevoegen...107 4.5.1 Inleiding...107 4.5.2 Een tabel tbleenheden toevoegen...107 4.5.3 Tabel tblpostcodes toevoegen...108 4.6 Structuur wijzigen...110 4.6.1 Primaire sleutel instellen...110 4.6.2 Opzoekveld...111 4.6.3 Relaties aanpassen...111 4.6.4 De tabel koppelen...112 4.7 Wizard Database Splitsen...112 4.8 Oefeningen...113 5 AFHANKELIJKE FORMULIEREN... 115 5.1 Inleiding...115 5.2 Een formulier creëren met een wizard...115 5.2.1 Het formulier frmdienst...115 5.2.2 Het formulier frmgebruiker...115 5.3 Formulieren importeren...116 5.4 Een formulier maken zonder wizard...116 5.5 Een eenheid toevoegen vanuit het formulier Artikel...118 5.5.1 Een knop toevoegen...118 5.5.2 De programmacode bekijken...120 5.5.3 De methode Requery...121 5.5.4 Andere vorm van de knop Eenheden...121 5.6 Waarde van keuzelijsten op mekaar afstemmen...122 5.6.1 Een tekstvak wijzigen in een keuzelijst met invoervak...122 5.6.2 Eigenschappen van een keuzelijst met invoervak...122 5.6.3 Na het bijwerken van de keuzelijst...124 6 Access 2002 gevorderden (Jet)

5.6.4 De keuzelijst Woonplaats... 124 5.6.5 Op elkaar afstemmen van de twee keuzelijsten... 125 5.6.6 Naamgeving overige velden... 125 5.7 Synchroniseren van formulieren... 125 5.7.1 Formulier frmverkoopoverzicht... 125 5.7.2 Het formulier frmverkopenoverzicht oproepen... 128 5.7.3 Programmacode... 130 5.7.4 De formulieren synchroniseren... 131 5.7.5 Pop up-formulier maken... 132 5.7.6 Sluiten van het formulier... 133 5.8 De gebeurtenis Bij niet in lijst... 133 5.8.1 Vorig ontwerp bewaren... 133 5.8.2 Alleen in lijst... 133 5.8.3 De gebeurtenis Bij niet in lijst... 134 5.8.4 De eigenschap Bij dubbelklikken... 134 5.9 Het objectmodel van Access... 135 5.9.1 Vereenvoudigd model... 135 5.9.2 Uitgebreid model... 136 5.9.3 Naamgeving... 137 5.9.4 Werken met collecties - een voorbeeld... 138 5.9.5 Het huidige project... 138 5.10 Het object DoCmd... 139 5.10.1 Algemeen... 139 5.10.2 OpenForm... 140 5.11 Eigen navigatieknoppen... 141 5.12 De methode Requery... 145 5.13 De functie Nz()... 146 5.14 SendKeys... 146 5.15 Gebeurtenissen bij formulieren... 147 5.15.1 Activeren en uitschakelen van formulieren... 148 5.15.2 Openen en sluiten van formulieren... 148 5.15.3 Verplaatsen van formulieren en formaat wijzigen... 148 5.15.4 Scrollen... 148 5.16 Volgorde van de gebeurtenissen... 148 5.16.1 Openen (Open)... 148 5.16.2 Laden (Load)... 148 5.16.3 FormaatWijzigen (Resize)... 148 5.16.4 Activeren (Activate)... 149 5.16.5 Aanwijzen (Current)... 149 5.16.6 UitGeheugen (Unload)... 149 5.16.7 Uitschakelen (Deactivate)... 149 5.16.8 Sluiten (Close)... 149 5.17 Oefeningen... 149 6 EEN MEER COMPLEX FORMULIER... 153 6.1 Inleiding... 153 6.2 Het hoofdformulier frmverkoop... 154 6.2.1 Een hoofdformulier aanmaken zonder wizard... 154 6.2.2 Aanmaken van een groepsvak... 154 6.2.3 Aanmaken van het groepsvak frastudentpersdienst... 157 6.2.4 Aanmaken van de keuzelijst met invoervak cbogebruikerid... 157 6.2.5 De keuzelijst met invoervak cbonaam... 160 6.2.6 De keuzelijst met invoervak cbodienst... 161 6.3 Het subformulier sfrmverkoop... 161 6.3.1 Aanmaken van de query... 161 6.3.2 Formulier aanmaken... 162 6.3.3 Het subformulier integreren in het hoofdformulier... 163 6.3.4 Totaal per verkoop... 164 Inhoudstafel - 7

6.4 Het formulier laten werken...166 6.4.1 Extra besturingselementen toevoegen...166 6.4.2 Standaardwaarde voor de datum...166 6.4.3 Het declaratiegedeelte...167 6.4.4 De gebeurtenis Aanwijzen (Current)...167 6.4.5 De gebeurtenis Na bijwerken bij fracashrekening...169 6.4.6 De gebeurtenis Na bijwerken bij frastudentpersdienst...169 6.4.7 Een besturingselement vergrendelen...169 6.4.8 Uittesten van het hoofdformulier...170 6.5 Het subformulier laten werken...171 6.5.1 Na het bijwerken van cboartikelnr...171 6.5.2 Na het bijwerken van cboartikeloms...172 6.5.3 Standaardwaarde...172 6.6 Gegevenscontrole...173 6.6.1 Gegevenscontrole in het hoofdformulier...173 6.6.2 Gegevenscontrole in het subformulier...174 6.7 Nog even de functie IsNull...174 6.8 Knopinfo (ControlTipText)...174 6.9 De database starten vanuit het formulier Mutatie...175 6.10 Gebeurtenissen bij besturingselementen...176 6.11 Een tip bij het editeren...177 6.12 Oefeningen...178 7 ACTIVEX DATA OBJECTS... 181 7.1 Inleiding...181 7.2 De object library's van ADO...182 7.3 Objectmodellen...183 7.4 Het objectmodel ADODB...183 7.5 Het voorbeeld...184 7.5.1 De tabellen...184 7.5.2 Formulier...185 7.6 Een record selecteren...186 7.6.1 Openen van het formulier...186 7.6.2 Rijbron bij de lijst...187 7.6.3 Na het bijwerken van de lijst...188 7.6.4 De query toevoegen...189 7.7 Een connectie openen...190 7.7.1 Syntax...190 7.7.2 Huidige database...191 7.7.3 Sluiten van het object en geheugen vrijgeven...191 7.7.4 Eén opdracht...192 7.8 Het object Command...192 7.9 Een recordset...193 7.10 Een record toevoegen...194 7.10.1 De programmacode achter de knop Toevoegen...194 7.10.2 Bewaren van de gegevens...196 7.11 Een record bewerken...197 7.11.1 De programmacode achter de knop Bewerken...197 7.12 Een record verwijderen...198 7.13 De knop Annuleren...199 7.14 De knop Sluiten...199 7.15 Declaratie op moduleniveau...199 7.16 Objectenoverzicht en Help...200 7.17 Oefeningen...201 8 ONAFHANKELIJKE FORMULIEREN EN SUBFORMULIEREN... 205 8.1 Inleiding...205 8 Access 2002 gevorderden (Jet)

8.2 Het hoofd- en subformulier... 205 8.3 Uitwerking... 207 8.3.1 Het formulier openen... 207 8.3.2 Selecteren van een bedrijf... 209 8.3.3 Een contactpersoon selecteren... 211 8.3.4 Contactpersoon bewerken... 212 8.3.5 Een contactpersoon (voorlopig) opslaan... 213 8.3.6 Gegevens annuleren... 215 8.3.7 Een contactpersoon verwijderen... 215 8.3.8 Definitief bewaren van de gegevens... 216 8.4 Nabeschouwingen... 218 8.5 Oefeningen... 219 9 WERKEN MET RECORDSETS... 221 9.1 Inleiding... 221 9.2 Het voorbeeld... 221 9.3 Overlopen van een tabel... 222 9.3.1 Voorbeeld... 222 9.3.2 Openen van een recordset op basis van een tabel... 223 9.3.3 De methode Open... 224 9.3.4 Move... 224 9.3.5 CacheSize en Resync... 225 9.3.6 Bof(), Eof()... 225 9.4 GetString... 225 9.5 Bijwerken van een tabel... 226 9.6 Toevoegen van records... 227 9.6.1 Het rapport en de tabel tblrapport... 227 9.6.2 Het programma... 228 9.6.3 De methoden AddNew en Update... 230 9.7 De methode OpenReport (Rapport openen)... 230 9.8 De methoden Maximize en Restore... 231 9.9 Verwijderen van records... 231 9.10 Zoeken... 232 9.10.1 Het voorbeeld... 232 9.10.2 De methode Find... 233 9.10.3 Werken met de collectie Fields... 233 9.10.4 Zoeken met Seek... 233 9.11 Filteren... 234 9.12 Sorteren... 235 9.13 Een recordset op basis van een query... 236 9.14 De ADOX library... 237 9.14.1 Het objectmodel ADOX... 237 9.14.2 Verwijzen naar het objectmodel... 237 9.14.3 Het Catalog-object... 237 9.14.4 Het voorbeeld... 238 9.15 Een eenvoudige query... 238 9.16 Een parameterquery... 239 9.17 Recordset op basis van een query... 239 9.18 Actiequery... 240 9.19 Een query aanpassen... 241 9.20 Verwijderen van een query... 241 9.21 Collectie Views en Procedures... 241 9.22 Tonen van tabellen... 242 9.23 Creëren van een tabel... 244 9.24 Oefeningen... 245 10 UITGEWERKTE VOORBEELDEN... 249 Inhoudstafel - 9

10.1 Inleiding...249 10.2 Een zoekscherm...249 10.3 Het formulier frmbedrijf aanpassen...250 10.3.1 Opdrachtknop...250 10.3.2 Programmacode...250 10.4 Ontwikkelen van frmbedrijfzoeken...251 10.4.1 Programmacode bij Nu zoeken...251 10.4.2 Programmacode bij Selecteren...253 10.4.3 Programma bij dubbelklikken op een item...253 10.4.4 Programmacode bij Annuleren...253 10.4.5 Bij het activeren...253 10.5 Een meervoudige keuzelijst...254 10.5.1 Doelstelling...254 10.5.2 Het formulier frmbedrijvenwoonplaats...254 10.5.3 De programmacode Afdrukken...255 10.5.4 De eigenschap ItemDate...256 10.5.5 De eigenschap Selected...256 10.6 Het rapport...256 10.6.1 Aanmaken van het rapport...256 10.6.2 Het afdrukvoorbeeld tonen in een maximumvenster...257 10.7 Gebeurtenissen bij rapporten...258 10.7.1 Openen (Open)...258 10.7.2 Sluiten (Close)...258 10.7.3 GeenGegevens (NoData)...258 10.7.4 Pagina (Page)...258 10.8 Indien er geen gegevens zijn...258 10.8.1 Probleemstelling...258 10.8.2 De gebeurtenis NoData...259 10.9 Een extra keuzemogelijkheid...260 10.9.1 Inleiding...260 10.9.2 Het scherm aanmaken...260 10.10 Een item toevoegen aan een keuzelijst...261 10.11 Automatisch koppelen van tabellen...263 10.11.1 Een tabel met de gekoppelde tabellen...263 10.11.2 Bij het laden...263 10.11.3 ActiveX control...266 10.11.4 Opmerking...268 10.12 Oefeningen...268 11 EEN EIGEN MENUSTRUCTUUR EN WERKBALK... 271 11.1 Inleiding...271 11.2 Een menubalk maken...271 11.2.1 Per venster of globaal...271 11.2.2 Een menubalk maken...271 11.3 Menukeuzen toevoegen aan een menu...273 11.3.1 Nieuwe menukeuze...273 11.3.2 Een formulier openen...274 11.3.3 Een menu-item uit een bestaand menu selecteren...275 11.3.4 Groep...275 11.3.5 Een vervolgmenu toevoegen...275 11.3.6 Een functieprocedure...276 11.4 Globale menubalk...276 11.5 De menubalk koppelen aan een formulier...277 11.6 Werkbalken...277 11.7 Een ingebouwde werkbalk aanpassen...277 11.7.1 Een knop toevoegen aan een werkbalk...277 11.7.2 Een knop verwijderen...278 11.7.3 Een knop verplaatsen...278 10 Access 2002 gevorderden (Jet)

11.7.4 Herstellen van de beginwaarden van een werkbalk... 278 11.8 Een aangepaste werkbalk maken... 278 11.8.1 Een aangepaste werkbalk maken... 278 11.8.2 Groepen... 279 11.8.3 De naam wijzigen van een aangepaste werkbalk... 279 11.8.4 Een aangepaste werkbalk verwijderen... 279 11.9 Een werkbalk gebruiken... 279 11.9.1 De aangepaste werkbalk in gebruik nemen... 279 11.9.2 Een werkbalk gebruiken in een formulier... 280 11.10 Zelf knoppen maken... 280 11.10.1 Een functieprocedure aanmaken... 280 11.10.2 De knop toevoegen... 280 11.10.3 Uittesten... 281 11.11 Het uiterlijk van een knop wijzigen... 281 11.12 CommandBar object model... 283 11.13 Spelen met de opdrachtbalken... 283 11.13.1 Werkwijze... 283 11.13.2 Tellen... 284 11.13.3 CommandBarControls... 285 11.13.4 Menu-items... 286 11.14 Verbergen en zichtbaar maken... 286 11.14.1 Verbergen en zichtbaar maken van opdrachtbalken... 286 11.14.2 Verbergen en zichtbaar maken van menukeuzen of knoppen... 286 11.15 Een menu-item inschakelen en uitschakelen... 287 11.16 Er is meer... 287 11.17 Oefeningen... 287 APPENDIX A AFSPRAKEN M.B.T. NAAMGEVING... 291 TREFWOORDENREGISTER... 295 Inhoudstafel - 11