vba access 2013 - m.editions-eni.fr · editions eni vba access 2013 programmer sous access...
TRANSCRIPT
![Page 1: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/1.jpg)
Editions ENI
VBA Access 2013 Programmer sous Access
CollectionRessources Informatiques
Table des matières
![Page 2: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/2.jpg)
1Table des matières
Avant-propos1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2. Objectifs du livre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Chapitre 1Généralités
1. Rappels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2. Principes fondamentaux de VBA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3. Passage des macros à VBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213.1 Conversion de macros dans un formulaire ou un état . . . . . . . . 223.2 Conversion de macros globales . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4. Sécurité des bases de données Access . . . . . . . . . . . . . . . . . . . . . . . . . 234.1 Modification des paramètres de sécurité d'une base Access . . . 234.2 Modification des paramètres de sécurité par défaut . . . . . . . . . 254.3 Description des différentes options de sécurité . . . . . . . . . . . . . 254.4 Documents approuvés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264.5 Emplacements approuvés. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274.6 Éditeurs approuvés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
5. Diffuser une base de données Access au moyen d'un package signé. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295.1 Obtenir un certificat numérique . . . . . . . . . . . . . . . . . . . . . . . . . 305.2 Créer et signer un package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Les éléments à télécharger sont disponibles à l'adresse suivante :http://www.editions-eni.fr
Saisissez la référence ENI de l'ouvrage RI13ACCV dans la zone de recherche et validez. Cliquez sur le titre du livre puis sur le bouton de téléchargement.
![Page 3: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/3.jpg)
2Programmer sous Access
VBA Access 2013
6. L'environnement de développement IDE . . . . . . . . . . . . . . . . . . . . . . 316.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316.2 Fenêtres de l'environnement IDE . . . . . . . . . . . . . . . . . . . . . . . . 32
7. Configuration de l'éditeur VBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357.1 Paramétrage des couleurs de l'éditeur . . . . . . . . . . . . . . . . . . . . . 357.2 Paramétrage de la présentation du code . . . . . . . . . . . . . . . . . . . 36
8. Référence aux objets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
9. Création d'une procédure en VBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
10. Recommandations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Chapitre 2Le langage Visual Basic
1. Les modules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2. Les procédures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442.1 Les procédures Sub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452.2 Les procédures Function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472.3 Déclaration des procédures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472.4 Portée des procédures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482.5 Arguments des procédures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492.6 Les arguments nommés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502.7 Appel d'une procédure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512.8 Exemples de procédures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512.9 La fonction MsgBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3. Les variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563.1 Les types de variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563.2 Les déclarations de variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593.3 La portée des variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613.4 Les tableaux. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613.5 Les constantes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
![Page 4: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/4.jpg)
3Table des matières
4. Les structures de décision. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674.1 L'instruction IF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674.2 L'instruction Select Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 694.3 La fonction Iif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5. Les structures en boucles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 715.1 L'instruction Do...Loop. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 715.2 L'instruction While...Wend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725.3 L'instruction For...Next . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735.4 L'instruction For Each...Next . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
6. Les opérateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 756.1 Les opérateurs arithmétiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 766.2 Les opérateurs de comparaison . . . . . . . . . . . . . . . . . . . . . . . . . . 766.3 Les opérateurs logiques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 776.4 L'opérateur de concaténation. . . . . . . . . . . . . . . . . . . . . . . . . . . . 786.5 Priorité des opérateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
7. Les règles d'écriture du code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 797.1 Les commentaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 797.2 Le caractère de continuation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 807.3 L'indentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 807.4 Les noms des procédures, variables et constantes . . . . . . . . . . . 81
8. Les conventions d'appellation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 818.1 Convention d'appellation des variables. . . . . . . . . . . . . . . . . . . . 818.2 Convention d'appellation des contrôles . . . . . . . . . . . . . . . . . . . 828.3 Convention d'appellation des objets . . . . . . . . . . . . . . . . . . . . . . 83
![Page 5: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/5.jpg)
4Programmer sous Access
VBA Access 2013
Chapitre 3Objets et collections
1. Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
2. Le modèle objet d'Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 872.1 Principales collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 882.2 Objets du Modèle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
3. Principes d'utilisation des objets et des collections . . . . . . . . . . . . . . 903.1 Les propriétés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 903.2 Propriétés représentant des objets . . . . . . . . . . . . . . . . . . . . . . . . 903.3 Les méthodes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 923.4 Les événements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 933.5 Les collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 943.6 Affichage automatique d'instructions. . . . . . . . . . . . . . . . . . . . . 96
4. Instructions utilisées avec les objets . . . . . . . . . . . . . . . . . . . . . . . . . . 994.1 L'instruction With . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 994.2 L'instruction For each...Next . . . . . . . . . . . . . . . . . . . . . . . . . . . 1004.3 L'instruction If TypeOf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1014.4 L'instruction Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
5. Les classes d'objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1075.1 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1075.2 Les modules de classe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1075.3 Exemple de modules de classe . . . . . . . . . . . . . . . . . . . . . . . . . . 108
6. L'explorateur d'objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1126.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1126.2 Recherche dans l'explorateur d'objets . . . . . . . . . . . . . . . . . . . . 114
7. Propriétés et méthodes d'objets Access . . . . . . . . . . . . . . . . . . . . . . . 1157.1 L'objet Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1157.2 L'objet DoCmd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1247.3 L'objet Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1317.4 La collection References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1327.5 La collection Printers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
![Page 6: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/6.jpg)
5Table des matières
Chapitre 4Objets d'accès aux données
1. Objets d'accès aux données DAO et ADO . . . . . . . . . . . . . . . . . . . . 137
2. Le modèle d'accès aux données DAO . . . . . . . . . . . . . . . . . . . . . . . . 1382.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1382.2 Hiérarchie des objets DAO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1392.3 Description des collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1402.4 L'objet DBEngine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1422.5 Les objets Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1432.6 Les objets Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1452.7 Les objets Recordset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1472.8 Les objets Tabledef . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1542.9 Les objets Field et Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
2.9.1 Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1552.9.2 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
2.10 Les objets QueryDef et Parameter . . . . . . . . . . . . . . . . . . . . . . . 1592.10.1QueryDef . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1592.10.2Parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
2.11 Les objets Relation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1612.12 Les objets Container et Document . . . . . . . . . . . . . . . . . . . . . . 163
2.12.1Container . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1632.12.2Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
2.13 Les objets Group et User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1662.13.1User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1662.13.2Group. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
2.14 L'objet Error. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1682.15 Les objets Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
3. Le modèle d'accès aux données ADO . . . . . . . . . . . . . . . . . . . . . . . . 1703.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1703.2 ADO et OLE DB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1713.3 Hiérarchie des objets ADO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1723.4 Modèle de base de programmation ADO . . . . . . . . . . . . . . . . . 173
![Page 7: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/7.jpg)
6Programmer sous Access
VBA Access 2013
3.5 Description des objets ADO . . . . . . . . . . . . . . . . . . . . . . . . . . . 1743.6 Les collections ADO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1753.7 Les objets Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1753.8 Les objets Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1783.9 Les objets Recordset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1793.10 La collection Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1853.11 Les objets Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1853.12 La collection Parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1863.13 Les objets Parameter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1873.14 La collection Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1883.15 Les objets Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1883.16 La collection Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1883.17 Les objets Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
Chapitre 5Le langage SQL
1. Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
2. Langage SQL et VBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
3. Description du langage SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1943.1 L'instruction SELECT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1943.2 La clause FROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1953.3 La clause WHERE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1973.4 La clause GROUP BY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1973.5 La clause HAVING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1983.6 La clause ORDER BY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1993.7 L'instruction UPDATE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1993.8 L'instruction DELETE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2003.9 L'instruction INSERT INTO . . . . . . . . . . . . . . . . . . . . . . . . . . . 2013.10 Autres instructions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
![Page 8: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/8.jpg)
7Table des matières
4. Exemples d'utilisation de requêtes SQL . . . . . . . . . . . . . . . . . . . . . . 2034.1 Mise à jour d'enregistrements . . . . . . . . . . . . . . . . . . . . . . . . . . 2034.2 Chargement d'une liste déroulante . . . . . . . . . . . . . . . . . . . . . . 204
Chapitre 6Gestion des événements
1. Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2071.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2071.2 Association de code VBA à un événement . . . . . . . . . . . . . . . . 208
2. Catégories d'événements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2092.1 Événements de type Fenêtre . . . . . . . . . . . . . . . . . . . . . . . . . . . 2102.2 Événements de type Focus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2102.3 Événements de type Données . . . . . . . . . . . . . . . . . . . . . . . . . . 2122.4 Événements de type Souris . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2142.5 Événements de type Clavier. . . . . . . . . . . . . . . . . . . . . . . . . . . . 2152.6 Événements de type Impression . . . . . . . . . . . . . . . . . . . . . . . . 2162.7 Événements de type Filtre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2172.8 Événements de type Erreur et Minuterie . . . . . . . . . . . . . . . . . 217
3. Annulation d'un événement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
4. Séquences types d'événements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
5. Les événements de mise à jour. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
Chapitre 7Débogage et gestion des erreurs
1. Les différents types d'erreur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2211.1 Les erreurs de syntaxe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2211.2 Les erreurs de compilation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2221.3 Les erreurs d'exécution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2231.4 Les erreurs de logique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
![Page 9: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/9.jpg)
8Programmer sous Access
VBA Access 2013
2. Débogage avec VBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2252.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2252.2 La barre d'outils Débogage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2252.3 L'objet Debug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
3. Gestion des erreurs par VBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2273.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2273.2 La procédure événementielle Error . . . . . . . . . . . . . . . . . . . . . . 2283.3 L'instruction On Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2293.4 L'objet Err . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
Chapitre 8Personnalisation des formulaires et états
1. Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
2. Personnalisation des formulaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2342.1 Syntaxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2342.2 Propriétés disponibles en mode Création . . . . . . . . . . . . . . . . . 235
2.2.1 Propriétés de l'onglet Format . . . . . . . . . . . . . . . . . . . . . . 2362.2.2 Propriétés de l'onglet Données. . . . . . . . . . . . . . . . . . . . . 2392.2.3 Propriétés de l'onglet Événement. . . . . . . . . . . . . . . . . . . 2412.2.4 Propriétés de l'onglet Autres . . . . . . . . . . . . . . . . . . . . . . 245
2.3 Propriétés non disponibles en mode Création . . . . . . . . . . . . . 2462.3.1 Propriétés se rapportant au mode d'affichage
du formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2462.3.2 Propriétés se rapportant aux enregistrements
et à leur mise à jour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2462.3.3 Propriétés se rapportant à la présentation
du formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2472.3.4 Propriétés renvoyant un objet . . . . . . . . . . . . . . . . . . . . . 2492.3.5 Propriétés relatives à l'impression du formulaire . . . . . . 249
2.4 Méthodes des objets Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
![Page 10: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/10.jpg)
9Table des matières
3. Personnalisation des états . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2513.1 Syntaxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2513.2 Propriétés disponibles en mode Création . . . . . . . . . . . . . . . . . 252
3.2.1 Propriétés de l'onglet Format . . . . . . . . . . . . . . . . . . . . . . 2523.2.2 Propriétés de l'onglet Données. . . . . . . . . . . . . . . . . . . . . 2553.2.3 Propriétés de l'onglet Événement. . . . . . . . . . . . . . . . . . . 2563.2.4 Propriétés de l'onglet Autres . . . . . . . . . . . . . . . . . . . . . . 258
3.3 Propriétés non disponibles en mode création . . . . . . . . . . . . . . 2593.3.1 Propriétés se rapportant au mode d'affichage de l'état. . 2593.3.2 Propriétés se rapportant aux enregistrements
et à leur mise à jour. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2593.3.3 Propriétés se rapportant à la présentation de l'état . . . . 2603.3.4 Propriétés renvoyant un objet . . . . . . . . . . . . . . . . . . . . . 2613.3.5 Propriétés relatives à l'impression de l'état . . . . . . . . . . . 2623.3.6 Autres propriétés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
3.4 Méthodes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
4. Les objets Control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2644.1 Syntaxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2644.2 Propriétés communes à la plupart des contrôles . . . . . . . . . . . 265
4.2.1 Propriétés renvoyant des objets . . . . . . . . . . . . . . . . . . . . 2654.2.2 Autres propriétés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
4.3 Méthodes communes à la plupart des contrôles . . . . . . . . . . . 2654.4 La méthode Move . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
5. Les contrôles d'Access. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2665.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2665.2 Liste des contrôles Access. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
![Page 11: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/11.jpg)
10Programmer sous Access
VBA Access 2013
Chapitre 9Amélioration de l'interface utilisateur
1. Les options de démarrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
2. Personnalisation du ruban . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2722.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2722.2 Configuration d'Access pour la personnalisation du ruban . . . 272
2.2.1 Affichage des tables systèmes dans le volet de navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
2.2.2 Affichage des messages d'erreurs contenus dans le code XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
2.3 Création d'une table système USysRibbons . . . . . . . . . . . . . . . 2742.4 Ajout du code XML de personnalisation
à la table USysRibbons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2742.5 Association du ruban à l'application active . . . . . . . . . . . . . . . 2752.6 Association du ruban à un formulaire ou un état . . . . . . . . . . 276
3. Présentation du langage XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2773.1 Le langage XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2773.2 Éléments XML utilisés pour personnaliser le ruban. . . . . . . . . 278
3.2.1 Les principales balises XML utilisées dans le code XML d'un ruban . . . . . . . . . . . . . . . . . . . . . 278
3.2.2 Les propriétés associées aux objets du ruban . . . . . . . . . 278
4. Exemple de ruban personnalisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2804.1 Code XML du ruban personnalisé . . . . . . . . . . . . . . . . . . . . . . . 2804.2 Code VBA appelé par les commandes du ruban personnalisé . 284
5. Images de la galerie des icônes Microsoft Office . . . . . . . . . . . . . . . 285
![Page 12: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/12.jpg)
11Table des matières
Chapitre 10Communication avec les applications Office 2013
1. La technologie Automation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2871.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2871.2 Utilisation de la technologie Automation. . . . . . . . . . . . . . . . . 289
2. Piloter Word depuis Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2902.1 Le modèle objet Word . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2902.2 Principales collections du modèle objet Word . . . . . . . . . . . . . 2912.3 Principaux objets du modèle objet de Word . . . . . . . . . . . . . . . 2922.4 La collection Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2932.5 Les objets Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
3. Piloter Excel depuis Access. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2983.1 Le modèle Objet Excel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2983.2 Principales collections de l'application Excel. . . . . . . . . . . . . . . 2993.3 La collection Workbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3003.4 Les objets Workbook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
3.4.1 Principales méthodes de l'objet Workbook . . . . . . . . . . . 3003.4.2 Principales collections associées à l'objet Workbook . . . 301
3.5 Écriture de données dans des cellules Excel . . . . . . . . . . . . . . . 302
4. Piloter Outlook depuis Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3044.1 Le modèle Objet Outlook. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3044.2 Exemple : affichage des contacts Outlook . . . . . . . . . . . . . . . . 305
Chapitre 11Programmation Internet
1. Import et export de données au format XML . . . . . . . . . . . . . . . . . 3071.1 La méthode ExportXML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3081.2 La méthode ImportXML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3101.3 Exemple d'import/export XML . . . . . . . . . . . . . . . . . . . . . . . . . 310
2. Exemple de création d'un fichier HTML . . . . . . . . . . . . . . . . . . . . . . 314
![Page 13: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/13.jpg)
12Programmer sous Access
VBA Access 2013
Chapitre 12Programmation Windows
1. Présentation des API. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
2. Appel d'une fonction de l'API Windows . . . . . . . . . . . . . . . . . . . . . . 3182.1 Syntaxe de l'instruction Declare . . . . . . . . . . . . . . . . . . . . . . . . 3182.2 Passage des arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
3. Liste de fonctions API Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
4. Exemples d'utilisation de fonctions API Windows . . . . . . . . . . . . . 3224.1 Récupération du répertoire Windows . . . . . . . . . . . . . . . . . . . . 3224.2 Lancement de l'application Excel si non active. . . . . . . . . . . . . 3234.3 Récupération d'une valeur dans un fichier .ini . . . . . . . . . . . . . 324
5. L'objet FileSystemObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3265.1 Méthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3265.2 Propriétés. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3275.3 Exemple. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Chapitre 13Code d'une mini-application
1. Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3291.1 Énoncé du problème . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3291.2 Base de données Formations . . . . . . . . . . . . . . . . . . . . . . . . . . . 3301.3 Modèle relationnel de la base. . . . . . . . . . . . . . . . . . . . . . . . . . . 330
2. Formulaire "Formations" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3312.1 Liste des contrôles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3322.2 Code VBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3332.3 Sous-formulaire "SF Participants" . . . . . . . . . . . . . . . . . . . . . . . 3372.4 Code VBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
![Page 14: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/14.jpg)
13Table des matières
3. Formulaire "Recherche" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3393.1 Liste des contrôles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3403.2 Code VBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3403.3 Sous-formulaire "SF Formations". . . . . . . . . . . . . . . . . . . . . . . . 3433.4 Etat "Formations" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
Annexes1. Fonctions et instructions VBA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
1.1 Manipulation de chaînes de caractères . . . . . . . . . . . . . . . . . . . 3471.2 Contrôle du déroulement du programme . . . . . . . . . . . . . . . . . 3481.3 Conversion de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3491.4 Date et heure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3511.5 Déclaration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3521.6 Domaine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3531.7 Échange dynamique de données . . . . . . . . . . . . . . . . . . . . . . . . 3531.8 Entrées/sorties fichiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3541.9 Finance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3561.10 Gestion d'erreurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3571.11 Graphiques dans les états imprimés . . . . . . . . . . . . . . . . . . . . . 3571.12 Liaisons et incorporation d'objets . . . . . . . . . . . . . . . . . . . . . . . 3581.13 Manipulation d'objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3581.14 Mathématiques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3581.15 SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3591.16 Tableaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3601.17 Vérification de variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3611.18 Fonctions et instructions diverses . . . . . . . . . . . . . . . . . . . . . . . 3611.19 Codes erreurs récupérables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
![Page 15: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/15.jpg)
14Programmer sous Access
VBA Access 2013
2. Constantes VBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3682.1 Constantes de couleur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3682.2 Constantes de date . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3682.3 Constantes des touches clavier lettres et chiffres. . . . . . . . . . . 3692.4 Constantes de touches de fonction . . . . . . . . . . . . . . . . . . . . . . 3692.5 Constantes de touches diverses . . . . . . . . . . . . . . . . . . . . . . . . . 370
3. Raccourcis-clavier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
![Page 16: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/16.jpg)
Editions ENI
VBA Access 2013 Apprenez à créer
des applications professionnelles Exercices et corrigés
CollectionLes TP Informatiques
Table des matières
![Page 17: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/17.jpg)
IntroductionPublic du livre. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13Objectif du livre. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13Utilisation du livre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13Aide à la réalisation des travaux pratiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
ÉnoncésChapitre 1 : Créer des procédures et des fonctionsÉnoncé 1.1 Créer et lancer une procédure publique. . . . . . . . . . . . . . . . . . . . . . . . . . 43Énoncé 1.2 Créer et lancer une procédure privée . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Énoncé 1.3 Appeler une procédure à partir d’une autre procédure. . . . . . . . . . . . . . . . 44Énoncé 1.4 Modifier la portée d’une procédure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45Énoncé 1.5 Dialoguer avec l’utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46Énoncé 1.6 Utiliser une fonction dans une procédure . . . . . . . . . . . . . . . . . . . . . . . . 46Énoncé 1.7 Utiliser des procédures événementielles . . . . . . . . . . . . . . . . . . . . . . . . . 47
Chapitre 2 : Créer des variables et des constantesPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51Énoncé 2.1 Déclarer et utiliser des variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55Énoncé 2.2 Déclarer et utiliser des constantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56Énoncé 2.3 Utiliser un type défini par l'utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . 58Énoncé 2.4 Manipuler les données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59Énoncé 2.5 Utiliser un tableau à une dimension . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Chapitre 3 : Utiliser des opérateursPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61Énoncé 3.1 Diviser deux nombres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63Énoncé 3.2 Obtenir le reste d'une division entière . . . . . . . . . . . . . . . . . . . . . . . . . . . 64Énoncé 3.3 Trouver le plus petit entre deux nombres . . . . . . . . . . . . . . . . . . . . . . . . 65Énoncé 3.4 Donner le résultat d'un nombre élevé à la puissance N . . . . . . . . . . . . . . . 66Énoncé 3.5 Générer des nombres aléatoires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66Énoncé 3.6 Calculer le pourcentage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67Énoncé 3.7 Calculer la commission. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68Énoncé 3.8 Calculer l’annuité constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69Énoncé 3.9 Compter le nombre de caractères. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
![Page 18: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/18.jpg)
2
Énoncé 3.10 Comparer deux chaînes de caractères . . . . . . . . . . . . . . . . . . . . . . . . . . 70Énoncé 3.11 Formater un mot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70Énoncé 3.12 Rechercher un mot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71Énoncé 3.13 Extraire une information d’une chaîne de caractères . . . . . . . . . . . . . . . . 72
Chapitre 4 : Structures de contrôlePré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73Énoncé 4.1 Contrôler la saisie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75Énoncé 4.2 Dire au revoir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76Énoncé 4.3 Identifier une consonne ou une voyelle . . . . . . . . . . . . . . . . . . . . . . . . . 78Énoncé 4.4 Répondre en fonction de l’âge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79Énoncé 4.5 Dire bonjour N fois . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80Énoncé 4.6 Compter de N en N jusqu'à M . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81Énoncé 4.7 Rendre obligatoire une saisie et contrôler la sortie. . . . . . . . . . . . . . . . . . 83Énoncé 4.8 Écrire des mots à l’envers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84Énoncé 4.9 Trouver les nombres premiers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85Énoncé 4.10 Compter le nombre d’occurrences d’un nombre . . . . . . . . . . . . . . . . . . . 85
Chapitre 5 : Les tableauxPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87Énoncé 5.1 Déclarer et utiliser un tableau accessible
par toutes les procédures du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89Énoncé 5.2 Déclarer et utiliser un tableau accessible
seulement par les procédures du module . . . . . . . . . . . . . . . . . . . . . . . . 89Énoncé 5.3 Afficher les limites d'un tableau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90Énoncé 5.4 Utiliser un tableau de niveau module. . . . . . . . . . . . . . . . . . . . . . . . . . . 90Énoncé 5.5 Initialiser un tableau avec des valeurs aléatoires . . . . . . . . . . . . . . . . . . . 91Énoncé 5.6 Déclarer et utiliser un tableau à deux dimensions . . . . . . . . . . . . . . . . . . 92Énoncé 5.7 Utiliser un tableau à plus de deux dimensions . . . . . . . . . . . . . . . . . . . . 92Énoncé 5.8 Déclarer et utiliser un tableau dynamique . . . . . . . . . . . . . . . . . . . . . . . 93Énoncé 5.9 Agrandir un tableau dynamique en préservant les valeurs initiales. . . . . . . 93Énoncé 5.10 Afficher les tables de multiplication . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95Énoncé 5.11 Afficher un tableau dans des zones de liste . . . . . . . . . . . . . . . . . . . . . . 95
![Page 19: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/19.jpg)
3
Chapitre 6 : Langage ObjetPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97Énoncé 6.1 Accéder à un objet et modifier ses propriétés . . . . . . . . . . . . . . . . . . . . 100Énoncé 6.2 Gérer des collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103Énoncé 6.3 Créer une classe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105Énoncé 6.4 Utiliser la classe créée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106Énoncé 6.5 Créer et utiliser ses collections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106Énoncé 6.6 Utiliser une méthode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Chapitre 7 : Les boîtes de dialoguePré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109Énoncé 7.1 Afficher un message simple. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111Énoncé 7.2 Demander une saisie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112Énoncé 7.3 Contrôler la saisie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113Énoncé 7.4 Choisir les boutons pour les boîtes de dialogue . . . . . . . . . . . . . . . . . . . 113Énoncé 7.5 Effectuer une action selon le choix de l'utilisateur. . . . . . . . . . . . . . . . . . 114Énoncé 7.6 Effectuer un traitement tant que l'utilisateur a réalisé la saisie demandée . 115
Chapitre 8 : Les formulaires de donnéesPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117Énoncé 8.1 Ouvrir et fermer un formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119Énoncé 8.2 Afficher un formulaire en mode lecture seule . . . . . . . . . . . . . . . . . . . . . 122Énoncé 8.3 Identifier le contenu d'un formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . 122Énoncé 8.4 Agir sur un sous-formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123Énoncé 8.5 Afficher une image de fond . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123Énoncé 8.6 Dupliquer un formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124Énoncé 8.7 Gérer le déplacement de la souris sur le formulaire . . . . . . . . . . . . . . . . 125Énoncé 8.8 Gérer le double clic de la souris sur le formulaire . . . . . . . . . . . . . . . . . . 126
![Page 20: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/20.jpg)
4
Chapitre 9 : Les contrôlesPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127Énoncé 9.1 Sélectionner un contrôle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130Énoncé 9.2 Masquer puis réafficher des contrôles . . . . . . . . . . . . . . . . . . . . . . . . . 131Énoncé 9.3 Rendre un contrôle dépendant d'un autre. . . . . . . . . . . . . . . . . . . . . . . 131Énoncé 9.4 Faire réagir les contrôles à la souris. . . . . . . . . . . . . . . . . . . . . . . . . . . 132Énoncé 9.5 Faire réagir les contrôles à la frappe clavier . . . . . . . . . . . . . . . . . . . . . 132Énoncé 9.6 Changer l’image des boutons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133Énoncé 9.7 Calculer une commission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133Énoncé 9.8 Gérer une zone de liste simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135Énoncé 9.9 Ajouter une valeur dans une zone de liste modifiable. . . . . . . . . . . . . . . 141Énoncé 9.10 Relier les zones de liste aux tables . . . . . . . . . . . . . . . . . . . . . . . . . . . 142Énoncé 9.11 Utiliser des boutons d'option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144Énoncé 9.12 Utiliser des cases à cocher associées à des images . . . . . . . . . . . . . . . . 144Énoncé 9.13 Gérer des images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Chapitre 10 : Les requêtesPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147Énoncé 10.1 Afficher tous les enregistrements d’une table . . . . . . . . . . . . . . . . . . . . 150Énoncé 10.2 Afficher certains champs d’une table . . . . . . . . . . . . . . . . . . . . . . . . . . 150Énoncé 10.3 Sélectionner et imprimer des enregistrements . . . . . . . . . . . . . . . . . . . . 151Énoncé 10.4 Effectuer une recherche paramétrée . . . . . . . . . . . . . . . . . . . . . . . . . . 152Énoncé 10.5 Effectuer une recherche à partir d’une zone
de liste déroulante. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153Énoncé 10.6 Affiner les valeurs d'une zone de liste . . . . . . . . . . . . . . . . . . . . . . . . . 153Énoncé 10.7 Effectuer une recherche multicritère . . . . . . . . . . . . . . . . . . . . . . . . . . 154Énoncé 10.8 Mettre à jour des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155Énoncé 10.9 Supprimer un enregistrement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156Énoncé 10.10 Utiliser une requête Union . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157Énoncé 10.11 Créer un top des ventes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
![Page 21: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/21.jpg)
5
Chapitre 11 : Les objets de donnéesPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159Énoncé 11.1 Créer une référence sur la base de données courante . . . . . . . . . . . . . . . 163Énoncé 11.2 Réaliser une requête action sur la base courante . . . . . . . . . . . . . . . . . . 163Énoncé 11.3 Interroger la base courante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164Énoncé 11.4 Remplir une table temporaire liée . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164Énoncé 11.5 Rechercher un enregistrement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165Énoncé 11.6 Créer une référence sur une base de données externe Access . . . . . . . . . 165Énoncé 11.7 Agir sur une base de données externe Access . . . . . . . . . . . . . . . . . . . . 166Énoncé 11.8 Configurer une passerelle ODBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167Énoncé 11.9 Créer une référence sur une base de données
externe via une passerelle ODBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169Énoncé 11.10 Agir sur une base de données externe via une passerelle ODBC . . . . . . . . 169Énoncé 11.11 Créer un tableau de bord . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
Chapitre 12 : Les étatsPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173Énoncé 12.1 Ouvrir un état en mode aperçu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175Énoncé 12.2 Imprimer directement un état . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175Énoncé 12.3 Lister tous les produits en fonction d'une saisie utilisateur. . . . . . . . . . . . 176Énoncé 12.4 Éditer tous les produits en rupture de stock. . . . . . . . . . . . . . . . . . . . . . 177Énoncé 12.5 Effectuer une mise en forme conditionnelle dynamique. . . . . . . . . . . . . . 178Énoncé 12.6 Imprimer un état paramétré . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179Énoncé 12.7 Extraire les données d'un état . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179Énoncé 12.8 Choisir les options d'imprimante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
Chapitre 13 : Interactions avec le Pack Office/API WindowsPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183Énoncé 13.1 Lancer une application Microsoft . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186Énoncé 13.2 Ouvrir un classeur Excel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188Énoncé 13.3 Copier des données Access vers des applications Microsoft . . . . . . . . . . . 188Énoncé 13.4 Effectuer un publipostage avec Word . . . . . . . . . . . . . . . . . . . . . . . . . . 189Énoncé 13.5 Exporter une requête vers Excel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190Énoncé 13.6 Générer une présentation PowerPoint . . . . . . . . . . . . . . . . . . . . . . . . . . 191Énoncé 13.7 Envoyer un mail avec Outlook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192Énoncé 13.8 Lancer la calculatrice sous Windows Vista/Windows 7 . . . . . . . . . . . . . . 194Énoncé 13.9 Utiliser des fonctions Excel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
![Page 22: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/22.jpg)
6
Énoncé 13.10 Importer dans une table. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Chapitre 14 : Optimiser l'application VBA AccessPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199Énoncé 14.1 Modifier les options de démarrage. . . . . . . . . . . . . . . . . . . . . . . . . . . . 201Énoncé 14.2 Compacter une base de données Access . . . . . . . . . . . . . . . . . . . . . . . 202Énoncé 14.3 Personnaliser les barres d'outils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203Énoncé 14.4 Accélérer l’utilisation des formulaires et des listes . . . . . . . . . . . . . . . . . 205Énoncé 14.5 Générer le matricule des employés . . . . . . . . . . . . . . . . . . . . . . . . . . . 205Énoncé 14.6 Exécuter des instructions VBA simultanément . . . . . . . . . . . . . . . . . . . 206
Chapitre 15 : Sécuriser l'application VBA AccessPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207Énoncé 15.1 Suivre les actions de l’utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210Énoncé 15.2 Créer une messagerie interne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211Énoncé 15.3 Utiliser les droits d’accès de l’utilisateur. . . . . . . . . . . . . . . . . . . . . . . . 212Énoncé 15.4 Créer une base de données de sauvegarde . . . . . . . . . . . . . . . . . . . . . . 214
![Page 23: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/23.jpg)
7
CorrigésChapitre 1 : Créer des procédures et des fonctionsPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217Corrigé 1.1 Créer et lancer une procédure publique. . . . . . . . . . . . . . . . . . . . . . . . . 218Corrigé 1.2 Créer et lancer une procédure privée . . . . . . . . . . . . . . . . . . . . . . . . . . 219Corrigé 1.3 Appeler une procédure à partir d’une autre procédure. . . . . . . . . . . . . . . 219Corrigé 1.4 Modifier la portée d’une procédure . . . . . . . . . . . . . . . . . . . . . . . . . . . 220Corrigé 1.5 Dialoguer avec l’utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221Corrigé 1.6 Utiliser une fonction dans une procédure . . . . . . . . . . . . . . . . . . . . . . . 221Corrigé 1.7 Utiliser des procédures événementielles . . . . . . . . . . . . . . . . . . . . . . . . 222
Chapitre 2 : Créer des variables et des constantesPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225Corrigé 2.1 Déclarer et utiliser une variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227Corrigé 2.2 Déclarer et utiliser des constantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228Corrigé 2.3 Utiliser un type défini par l'utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . 229Corrigé 2.4 Manipuler les données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230Corrigé 2.5 Utiliser un tableau à 1 dimension . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Chapitre 3 : Utiliser des opérateursPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233Corrigé 3.1 Diviser deux nombres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234Corrigé 3.2 Obtenir le reste d'une division entière . . . . . . . . . . . . . . . . . . . . . . . . . . 234Corrigé 3.3 Trouver le plus petit entre deux nombres . . . . . . . . . . . . . . . . . . . . . . . 235Corrigé 3.4 Donner le résultat d'un nombre élevé à la puissance N . . . . . . . . . . . . . . 235Corrigé 3.5 Générer des nombres aléatoires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236Corrigé 3.6 Calculer le pourcentage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236Corrigé 3.7 Calculer la commission. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237Corrigé 3.8 Calculer l’annuité constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237Corrigé 3.9 Compter le nombre de caractères. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238Corrigé 3.10 Comparer deux chaînes de caractères. . . . . . . . . . . . . . . . . . . . . . . . . . 239Corrigé 3.11 Formater un mot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239Corrigé 3.12 Rechercher un mot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240Corrigé 3.13 Extraire une information d’une chaîne de caractères . . . . . . . . . . . . . . . . 240
![Page 24: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/24.jpg)
8
Chapitre 4 : Structures de contrôlePré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241Corrigé 4.1 Contrôler la saisie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242Corrigé 4.2 Dire au revoir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244Corrigé 4.3 Identifier une consonne ou une voyelle . . . . . . . . . . . . . . . . . . . . . . . . 244Corrigé 4.4 Répondre en fonction de l’âge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245Corrigé 4.5 Dire bonjour N fois . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246Corrigé 4.6 Compter de N en N jusqu'à M . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248Corrigé 4.7 Rendre obligatoire une saisie et contrôler la sortie. . . . . . . . . . . . . . . . . 249Corrigé 4.8 Écrire des mots à l’envers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250Corrigé 4.9 Trouver les nombres premiers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251Corrigé 4.10 Compter le nombre d’occurrences d’un nombre . . . . . . . . . . . . . . . . . . 252
Chapitre 5 : Les tableauxPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253Corrigé 5.1 Déclarer et utiliser un tableau accessible
par toutes les procédures du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . 254Corrigé 5.2 Déclarer et utiliser un tableau accessible seulement
par les procédures du module. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255Corrigé 5.3 Afficher les limites d'un tableau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255Corrigé 5.4 Utiliser un tableau de niveau module. . . . . . . . . . . . . . . . . . . . . . . . . . 256Corrigé 5.5 Initialiser un tableau avec des valeurs aléatoires . . . . . . . . . . . . . . . . . . 257Corrigé 5.6 Déclarer et utiliser un tableau à deux dimensions . . . . . . . . . . . . . . . . . 257Corrigé 5.7 Utiliser un tableau à plus de deux dimensions . . . . . . . . . . . . . . . . . . . 258Corrigé 5.8 Déclarer et utiliser un tableau dynamique . . . . . . . . . . . . . . . . . . . . . . 259Corrigé 5.9 Agrandir un tableau dynamique en préservant les valeurs initiales. . . . . . 260Corrigé 5.10 Afficher des tables de multiplication . . . . . . . . . . . . . . . . . . . . . . . . . . 261Corrigé 5.11 Afficher un tableau dans des zones de liste . . . . . . . . . . . . . . . . . . . . . 261
Chapitre 6 : Langage ObjetPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263Corrigé 6.1 Accéder à un objet et modifier ses propriétés . . . . . . . . . . . . . . . . . . . . 264Corrigé 6.2 Gérer des collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268Corrigé 6.3 Créer une classe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269Corrigé 6.4 Utiliser la classe créée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271Corrigé 6.5 Créer et utiliser ses collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271Corrigé 6.6 Utiliser une méthode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
![Page 25: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/25.jpg)
9
Chapitre 7 : Les boîtes de dialoguePré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273Corrigé 7.1 Afficher un message simple. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274Corrigé 7.2 Demander une saisie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274Corrigé 7.3 Contrôler la saisie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275Corrigé 7.4 Choisir les boutons pour les boîtes de dialogue . . . . . . . . . . . . . . . . . . . 275Corrigé 7.5 Effectuer une action selon le choix de l'utilisateur. . . . . . . . . . . . . . . . . . 276Corrigé 7.6 Effectuer un traitement tant que l'utilisateur a réalisé la saisie demandée . 277
Chapitre 8 : Les formulaires de donnéesPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279Corrigé 8.1 Ouvrir un formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281Corrigé 8.2 Afficher un formulaire en mode lecture seule . . . . . . . . . . . . . . . . . . . . . 283Corrigé 8.3 Identifier le contenu d'un formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . 283Corrigé 8.4 Agir sur un sous-formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284Corrigé 8.5 Afficher une image de fond . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284Corrigé 8.6 Dupliquer un formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285Corrigé 8.7 Gérer le déplacement de la souris sur le formulaire . . . . . . . . . . . . . . . . 286Corrigé 8.8 Gérer le double clic de la souris sur le formulaire . . . . . . . . . . . . . . . . . . 286
Chapitre 9 : Les contrôlesPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287Corrigé 9.1 Sélectionner un contrôle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288Corrigé 9.2 Masquer puis réafficher des contrôles. . . . . . . . . . . . . . . . . . . . . . . . . . 289Corrigé 9.3 Rendre un contrôle dépendant d'un autre . . . . . . . . . . . . . . . . . . . . . . . 289Corrigé 9.4 Faire réagir les contrôles à la souris . . . . . . . . . . . . . . . . . . . . . . . . . . . 290Corrigé 9.5 Faire réagir les contrôles à la frappe clavier. . . . . . . . . . . . . . . . . . . . . . 290Corrigé 9.6 Changer l’image des boutons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291Corrigé 9.7 Calculer une commission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291Corrigé 9.8 Gérer une zone de liste simple. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293Corrigé 9.9 Ajouter une valeur dans une zone de liste modifiable . . . . . . . . . . . . . . . 297Corrigé 9.10 Relier les zones de liste aux tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297Corrigé 9.11 Utiliser des boutons d'option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298Corrigé 9.12 Utiliser des cases à cocher associées à des images . . . . . . . . . . . . . . . . 299Corrigé 9.13 Gérer des images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
![Page 26: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/26.jpg)
10
Chapitre 10 : Les requêtesPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301Corrigé 10.1 Afficher tous les enregistrements d’une table . . . . . . . . . . . . . . . . . . . . 302Corrigé 10.2 Afficher certains champs d’une table . . . . . . . . . . . . . . . . . . . . . . . . . . 302Corrigé 10.3 Sélectionner et imprimer des enregistrements . . . . . . . . . . . . . . . . . . . . 302Corrigé 10.4 Effectuer une recherche paramétrée . . . . . . . . . . . . . . . . . . . . . . . . . . 303Corrigé 10.5 Effectuer une recherche à partir d’une zone de liste déroulante . . . . . . . . 303Corrigé 10.6 Affiner les valeurs d'une zone de liste . . . . . . . . . . . . . . . . . . . . . . . . . 304Corrigé 10.7 Effectuer une recherche multicritère . . . . . . . . . . . . . . . . . . . . . . . . . . 305Corrigé 10.8 Mettre à jour des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307Corrigé 10.9 Supprimer un enregistrement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309Corrigé 10.10 Utiliser une requête Union . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310Corrigé 10.11 Créer un top des ventes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
Chapitre 11 : Les objets de donnéesPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313Corrigé 11.1 Créer une référence sur la base de données courante. . . . . . . . . . . . . . . 314Corrigé 11.2 Réaliser une requête action sur la base courante. . . . . . . . . . . . . . . . . . 314Corrigé 11.3 Interroger la base courante. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315Corrigé 11.4 Remplir une table temporaire liée . . . . . . . . . . . . . . . . . . . . . . . . . . . 315Corrigé 11.5 Rechercher un enregistrement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317Corrigé 11.6 Créer une référence sur une base de données Access . . . . . . . . . . . . . . 319Corrigé 11.7 Agir sur une base de données externe Access . . . . . . . . . . . . . . . . . . . . 319Corrigé 11.8 Configurer une passerelle ODBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321Corrigé 11.9 Créer une référence sur une base de données
externe via une passerelle ODBC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322Corrigé 11.10 Gérer une base de données externe via une passerelle ODBC . . . . . . . . . 322Corrigé 11.11 Créer un tableau de bord . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
Chapitre 12 : Les étatsPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327Corrigé 12.1 Ouvrir un état en mode aperçu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328Corrigé 12.2 Imprimer directement un état . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328Corrigé 12.3 Lister tous les produits en fonction d'une saisie utilisateur . . . . . . . . . . . 328Corrigé 12.4 Éditer tous les produits en rupture de stock . . . . . . . . . . . . . . . . . . . . . 329Corrigé 12.5 Effectuer une mise en forme conditionnelle dynamique . . . . . . . . . . . . . 329Corrigé 12.6 Imprimer un état paramétré . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
![Page 27: VBA Access 2013 - m.editions-eni.fr · Editions ENI VBA Access 2013 Programmer sous Access Collection Ressources Informatiques Table des matières](https://reader034.vdocuments.fr/reader034/viewer/2022042500/5b96981e09d3f2501c8b69d7/html5/thumbnails/27.jpg)
11
Corrigé 12.7 Extraire les données d'un état . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330Corrigé 12.8 Choisir les options d'imprimante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
Chapitre 13 : Interactions avec le Pack Office/API WindowsPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333Corrigé 13.1 Lancer une application Microsoft . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335Corrigé 13.2 Ouvrir un classeur Excel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336Corrigé 13.3 Copier des données Access vers des applications Microsoft . . . . . . . . . . . 336Corrigé 13.4 Effectuer un publipostage avec Word . . . . . . . . . . . . . . . . . . . . . . . . . . 337Corrigé 13.5 Exporter une requête vers Excel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338Corrigé 13.6 Générer une présentation PowerPoint . . . . . . . . . . . . . . . . . . . . . . . . . . 338Corrigé 13.7 Envoyer un mail avec Outlook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339Corrigé 13.8 Lancer la calculatrice sous Windows Vista/Windows 7 . . . . . . . . . . . . . . 340Corrigé 13.9 Utiliser des fonctions Excel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341Corrigé 13.10 Importer dans une table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
Chapitre 14 : Optimiser l'application VBA AccessPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343Corrigé 14.1 Modifier les options de démarrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344Corrigé 14.2 Compacter une base de données Access. . . . . . . . . . . . . . . . . . . . . . . . 345Corrigé 14.3 Personnaliser les barres d'outils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346Corrigé 14.4 Accélérer l’utilisation des formulaires et des listes . . . . . . . . . . . . . . . . . 347Corrigé 14.5 Générer le matricule des employés. . . . . . . . . . . . . . . . . . . . . . . . . . . . 348Corrigé 14.6 Exécuter des instructions VBA simultanément . . . . . . . . . . . . . . . . . . . . 349
Chapitre 15 : Sécuriser l'application VBA AccessPré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351Corrigé 15.1 Suivre les actions de l’utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352Corrigé 15.2 Créer une messagerie interne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354Corrigé 15.3 Utiliser les droits d’accès de l’utilisateur . . . . . . . . . . . . . . . . . . . . . . . . 355Corrigé 15.4 Créer une base de données de sauvegarde . . . . . . . . . . . . . . . . . . . . . . 356