Vous êtes sur la page 1sur 563

ACCESS

2010
Copyright 2010 Micro Application
20-22, rue des Petits-Htels
75010 Paris
1
re
dition - Mai 2010
Auteur MOSAIQUE Informatique, SARL
Toute reprsentation ou reproduction, intgrale ou partielle, faite sans le
consentement de MICROAPPLICATIONest illicite (article L122-4 du code
de la proprit intellectuelle).
Cette reprsentation ou reproduction illicite, par quelque procd que ce
soit, constituerait une contrefaon sanctionne par les articles L335-2 et
suivants du code de la proprit intellectuelle.
Le code de la proprit intellectuelle nautorise aux termes de larticle
L122-5 que les reproductions strictement destines lusage priv et
non destines lutilisation collective dune part, et dautre part, que les
analyses et courtes citations dans un but dexemple et dillustration.
Avertissement Les informations contenues dans cet ouvrage sont donnes titre indicatif
aux utilisateurs et nont aucun caractre exhaustif voire certain. A titre dexemple non
limitatif, cet ouvrage peut vous proposer une ou plusieurs adresses de
sites Web qui ne seront plus dactualit ou dont le contenu aura chang
au moment o vous en prendrez connaissance.
Aussi, ces informations ne sauraient engager la responsabilit de lEdi-
teur. La socit MICRO APPLICATION ne pourra tre tenue responsable
de toute omission, erreur ou lacune qui aurait pu se glisser dans ce
produit ainsi que des consquences, quelles quelles soient, qui rsul-
teraient des informations et indications fournies ainsi que de leur utili-
sation.
Tous les produits cits dans cet ouvrage sont protgs, et les marques
dposes par leurs titulaires de droits respectifs. Cet ouvrage nest ni
dit, ni produit par le(s) propritaire(s) de(s) programme(s) sur le(s)
quel(s) il porte et les marques ne sont utilises qu seule n de dsi-
gnation des produits en tant que noms de ces derniers.
ISBN : 978-2-300-029264
ISSN : 1950-0289
MICRO APPLICATION Support technique :
20-22, rue des Petits-Htels galement disponible sur
75010 PARIS www.microapp.com
Tl. : 01 53 34 20 20
Fax : 01 53 34 20 00
http://www.microapp.com
Retrouvez des informations sur cet ouvrage !
Rendez-vous sur le site Internet de Micro Application
www.microapp.com. Dans le module de recherche,
sur la page daccueil du site, entrez la rfrence
4 chiffres indique sur le prsent livre.
Vous accdez directement sa che produit.
2926
Avant-propos
Destine aussi bien aux dbutants quaux utilisateurs initis, la col-
lection Guide Complet repose sur une mthode essentiellement pra-
tique. Les explications, donnes dans un langage clair et prcis,
sappuient sur de courts exemples. En n de chaque chapitre, dcou-
vrez, en fonction du sujet, des exercices, une check-list ou une srie
de FAQ pour rpondre vos questions.
Vous trouverez dans cette collection les principaux thmes de luni-
vers informatique : matriel, bureautique, programmation, nouvel-
les technologies...
Conventions typographiques
An de faciliter la comprhension des techniques dcrites, nous
avons adopt les conventions typographiques suivantes :
j gras : menu, commande, bote de dialogue, bouton, onglet.
j italique : zone de texte, liste droulante, case cocher, bouton
radio.
j Police bton : Instruction, listing, adresse internet, texte saisir.
j : indique un retour la ligne volontaire d aux contraintes de la
mise en page.
Il sagit dinformations supplmentaires relatives au sujet trait.
Met laccent sur un point important, souvent dordre technique quil ne
faut ngliger aucun prix.
Propose conseils et trucs pratiques.
Donne en quelques lignes la dnition dun terme technique ou dune
abrviation.
Chapitre 1 Concepts et manipulations de base 9
1.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.2. Base de donnes, dnition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Lorganisation des donnes en sujets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Lidentiant unique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Les relations permanentes et lintgrit rfrentielle . . . . . . . . . . . . . . 20
De nombreux objets hirarchiss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.3. Analyser le problme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
1.4. Crer une base de donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Crer une base de donnes vide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Crer une base de donnes partir dun modle . . . . . . . . . . . . . . . . . . 35
1.5. Fermer une base de donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
1.6. Ouvrir une base de donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Choisir un mode douverture de la base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
1.7. Dcouvrir linterface dAccess 2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Connatre les composants essentiels de linterface . . . . . . . . . . . . . . . . 40
Connatre les actions proposes dans la barre doutils Accs
rapide et dans le Ruban . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Changer lemplacement de la barre doutils Accs rapide . . . . . . . . 42
Modier le contenu de la barre doutils Accs rapide . . . . . . . . . . . . . . 43
Dcouvrir le Volet de navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Masquer ou afficher le Volet de navigation . . . . . . . . . . . . . . . . . . . . . . . . . . 45
La Barre dtat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Manipuler les objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Utiliser laide dAccess 2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
1.8. Crer une table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Crer une table en mode Cration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Fermer et enregistrer une table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
1.9. Autres mthodes pour crer des tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Crer une table en entrant des donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Crer une table en important des donnes . . . . . . . . . . . . . . . . . . . . . . . . . . 70
1.10. Cas pratiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Analyser rapidement les donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Crer la base de donnes initiale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Crer la table Auteurs en entrant des donnes . . . . . . . . . . . . . . . . . . . . . 77
Crer les tables Contacts et Livres en mode Cration . . . . . . . . . . . . . . 79
Chapitre 2 Manipuler les donnes 85
2.1. Le mode Feuille de donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Ouvrir une table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Ajouter un enregistrement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Modier des donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Raliser des slections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Se dplacer dans les enregistrements au moyen des boutons
de dplacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Supprimer un enregistrement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Dnir la largeur des colonnes et la hauteur des lignes . . . . . . . . . . . 99
Ajouter un champ la structure dune table . . . . . . . . . . . . . . . . . . . . . . . 100
4
Dplacer un champ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Renommer un champ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Supprimer un champ dans une table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Modier la mise en forme des caractres . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Masquer des colonnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Afficher des colonnes masques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Imprimer des donnes dune table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
2.2. Rechercher des donnes dans une table . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
2.3. Remplacer des donnes dans une table . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
2.4. Trier et ltrer les donnes dune table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Effectuer un tri simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Effectuer un tri avanc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Appliquer des ltres courants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Filtrer par slection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Filtrer par formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
Appliquer un ltre avanc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
2.5. Cas pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Saisir des donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Rechercher et remplacer un type de livre . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Trier des livres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Filtrer des livres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Chapitre 3 Construire une structure de table optimale 155
3.1. Manipuler les champs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Afficher la structure dune table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Ajouter un champ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Slectionner des champs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Dplacer un champ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
Supprimer un champ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
3.2. Exploiter les proprits des champs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
La proprit Taille du champ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
La proprit Nouvelles valeurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
La proprit Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
La proprit Dcimales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
La proprit Lgende . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
La proprit Valeur par dfaut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
La proprit Null interdit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
3.3. Appliquer des masques de saisie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Utiliser lAssistant Masque de saisie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
Crer un masque de saisie personnalis . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
3.4. Utiliser les listes de choix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Faciliter la saisie avec des listes de valeurs constantes . . . . . . . . . . 186
Faciliter la saisie avec des listes de valeurs provenant
dune table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
3.5. Appliquer des rgles de validation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Appliquer une rgle de validation sur un champ . . . . . . . . . . . . . . . . . . 197
Appliquer une rgle de validation sur une table . . . . . . . . . . . . . . . . . . 202
3.6. Indexer les donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
Crer un index sur un champ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
S
O
M
M
A
I
R
E
5
Crer un index sur plusieurs champs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
Supprimer un index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
3.7. Cas pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
Optimiser la table Contacts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Optimiser la table Livres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
Chapitre 4 Contrler la cohrence des donnes 229
4.1. Comprendre lutilit des relations et de lintgrit rfrentielle . 231
4.2. Dnir une cl primaire dans une table . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
Dnir une cl primaire sur un champ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
Dnir une cl primaire sur plusieurs champs . . . . . . . . . . . . . . . . . . . . 235
Supprimer une cl primaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
4.3. Dnir les relations entre les tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
Construire des relations un plusieurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
Construire des relations plusieurs plusieurs . . . . . . . . . . . . . . . . . . . . 244
Construire des relations un un . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Modier une relation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
Supprimer une relation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
4.4. Appliquer des rgles dintgrit rfrentielle . . . . . . . . . . . . . . . . . . . . . . 256
Comprendre lutilit des rgles dintgrit rfrentielle . . . . . . . . . 256
Appliquer lintgrit rfrentielle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
Appliquer lintgrit rfrentielle en cascade . . . . . . . . . . . . . . . . . . . . . 260
4.5. Imprimer les relations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
4.6. Cas pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
Dnir des relations un plusieurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
Dnir des relations plusieurs plusieurs . . . . . . . . . . . . . . . . . . . . . . . . . 274
Dnir des relations un un . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Quelques oprations annexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
Chapitre 5 Extraire des donnes 291
5.1. Comprendre le rle des requtes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
5.2. Les requtes de slection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
Quelques rudiments de SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
Travailler en mode Cration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
Crer une requte trie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
Crer une requte sur plusieurs tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
Crer une requte utilisant des critres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
Crer une requte utilisant des oprations . . . . . . . . . . . . . . . . . . . . . . . . 326
Dnir des formats dans une requte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
Utiliser les jointures dune requte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
5.3. Utiliser lAssistant Requte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
Crer une requte simple avec lAssistant . . . . . . . . . . . . . . . . . . . . . . . . . 333
Crer une requte sur les doublons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
Crer une requte sur la non-correspondance entre des tables . 340
5.4. Crer des requtes action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
Crer une requte action de type cration de table . . . . . . . . . . . . . . . 342
Crer une requte action de type ajout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
Crer une requte action de type suppression . . . . . . . . . . . . . . . . . . . . 347
Crer une requte action de type mise jour . . . . . . . . . . . . . . . . . . . . . . 348
6
5.5. Ajouter des paramtres dans les requtes . . . . . . . . . . . . . . . . . . . . . . . . . 350
5.6. Cas pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
Crer des requtes de slection en mode SQL . . . . . . . . . . . . . . . . . . . . 353
Crer des requtes en mode Cration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
Crer une requte action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
Utiliser un paramtre dans la requte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
Crer une liste de choix avec requte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
Chapitre 6 Amliorer la saisie 379
6.1. Comprendre le rle des formulaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
6.2. Le modle conceptuel des objets des formulaires . . . . . . . . . . . . . . . . 382
6.3. Crer des formulaires simples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
Utiliser lAssistant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
Crer un formulaire sans lAssistant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
Manipuler des donnes dans un formulaire . . . . . . . . . . . . . . . . . . . . . . . 395
Modier les objets du formulaire en mode Cration . . . . . . . . . . . . . 403
6.4. Crer des formulaires imbriqus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
Crer un formulaire et un sous-formulaire simultanment
laide de lAssistant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
Crer un sous-formulaire dans un formulaire existant . . . . . . . . . . . 427
6.5. Cas pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
Raliser un carnet dadresses avec lAssistant Formulaire . . . . . . 430
Modier des objets du formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
Raliser le formulaire de saisie dune facture . . . . . . . . . . . . . . . . . . . . . 436
Insrer un calcul dans un formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
Chapitre 7 Restituer les donnes 449
7.1. Crer des tats simples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
Utiliser les Assistants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
Crer un tat sans lAssistant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
Visualiser les donnes de ltat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
Modier un tat en mode Cration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
7.2. Crer des tats avancs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
7.3. Cas pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
Raliser un tat du carnet dadresses avec lAssistant . . . . . . . . . . . 486
Raliser ltat des factures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487
Chapitre 8 Automatiser les traitements 501
8.1. Crer une macrocommande . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503
Modier une macro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506
Excuter une macro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 508
Utiliser une macro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509
8.2. Crer des modules en Visual Basic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509
8.3. Crer des graphiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
8.4. Crer des tableaux croiss dynamiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
8.5. Consulter les donnes dans un navigateur Internet . . . . . . . . . . . . . . 522
8.6. Dmarrer automatiquement lapplication . . . . . . . . . . . . . . . . . . . . . . . . . 526
7
8.7. Cas pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
Crer une macro affichant un message de bienvenue . . . . . . . . . . . 529
Crer une macro excutant plusieurs actions . . . . . . . . . . . . . . . . . . . . . 530
Utiliser une macro lance par un vnement
dans un formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530
Utiliser une macro dans un bouton de commande . . . . . . . . . . . . . . . 533
Chapitre 9 Glossaire 537
B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .539
C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .539
D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .540
E . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .540
F . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .540
G . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .541
I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .541
L . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .542
M . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .542
N . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .543
O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .543
P . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .543
R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .543
S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .544
T . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .544
U . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .544
V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .545
Chapitre 10 Index 547
8
C
H
A
P
I
T
R
E
1
CONCEPTS
ET MANIPULATIONS
DE BASE
Introduction .................................................................................................................... 11
Base de donnes, dnition ................................................................................... 15
Analyser le problme ................................................................................................ 26
Crer une base de donnes .................................................................................... 30
Fermer une base de donnes ................................................................................ 37
Ouvrir une base de donnes .................................................................................. 37
Dcouvrir linterface dAccess 2010 .................................................................... 40
Crer une table ............................................................................................................. 57
Autres mthodes pour crer des tables ............................................................ 65
Cas pratiques ................................................................................................................. 74
9
Dans ce premier chapitre, vous allez dcouvrir les concepts fdra-
teurs dAccess 2010.
1.1. Introduction
"Je gre ma base de donnes sur Excel"
Il est encore frquent dentendre cette phrase, un non-sens puisque
Excel nest pas un systme de gestion de bases de donnes mais un
tableur. Cette confusion trouve son origine dans le fait que les inter-
faces des deux logiciels sont similaires, lorsque les donnes sont
prsentes en tableau.
Figure 1.1 : La prsentation de
donnes dans une feuille de calcul
Excel
Figure 1.2 : La prsentation des donnes en mode Feuille de donnes sur Access nest pas sans
rappeler celle dExcel
11 1.1. Introduction
La ressemblance sarrte l. Le tableur se caractrise par sa sou-
plesse et sa rapidit de mise en uvre, alors que le systme de
gestion de bases de donnes permet avant tout dassurer la coh-
rence dune grande quantit dinformations, indpendamment de
leur prsentation : tables, relations, intgrit rfrentielle sont autant
de puissants outils spciques aux bases de donnes que vous
dcouvrirez bientt dans cet ouvrage permettant dassurer un
contrle permanent de la cohrence des informations quelles ren-
ferment.
Bien sr, comme Excel, Access vous permet de saisir des informa-
tions, de les consulter lcran et de les imprimer. De plus, le logiciel
est capable deffectuer des traitements, des synthses de donnes et
il est interfaable avec le Web. Toutefois, comme tout systme de
gestion de base de donnes, la caractristique majeure dAccess, qui
le diffrencie des autres familles dapplications, est son aptitude
optimiser lorganisation des donnes quil renferme. Lutilisation
dun SGBDR est donc envisager lorsque la quantit de donnes
enregistrer est importante et que les traitements de ces donnes
sont nombreux et sophistiqus.
SGBDR
Sigle signiant "systme de gestion de bases de donnes relationnelles".
Access entre dans cette catgorie de logiciels.
Figure 1.3 : Les relations entre tables reprsentent un outil puissant doptimisation de la cohrence
des donnes
12 1. Concepts et manipulations de base
Si vous souhaitez, par exemple, dvelopper rapidement et facile-
ment le systme de facturation de votre entreprise, grer les albums
de votre discothque ou les livres de votre bibliothque ou encore
administrer les comptes et les mots de passe des abonns en ligne
de votre site web, Access est fait pour vous.
RAD
Sigle signiant Rapid Application Development et dsignant les logiciels
permettant les dveloppements rapides dapplications. Access 2010 entre
dans cette catgorie de programmes.
Access et Excel
Chaque logiciel dispose de spcicits propres ; vous devez avoir recours
lun ou lautre en fonction de la situation traiter. Ainsi le manque de
scurit dExcel, en ce qui concerne la cohrence des donnes, est-il large-
ment compens par une grande souplesse en matire de calculs complexes
ou de ralisation de graphiques. linverse, Access demande au dveloppeur
une grande rigueur, du temps et des connaissances, tribu quil devra payer
comme prix du contrle de cohrence permanent quexerce Access sur les
donnes. Choisissez donc le tableur si vous travaillez seul sur des donnes
non optimises ou encore si vous avez besoin dobtenir rapidement des
Figure 1.4 : Access dispose de nombreux outils de synthse et de prsentation des donnes (ici, un
formulaire avanc faisant appel aux donnes de plusieurs tables)
13 1.1. Introduction
rsultats lors de simulations, par exemple. En revanche, prfrez Access
si votre travail est de type collaboratif, si la quantit dinformations est
grande et si les traitements sont nombreux, rptitifs et normaliss.
Les autres SGBDR
Access est certainement le SGBDR le plus rpandu, mais il trouve ses
limites lorsque les applications deviennent trs importantes ou ncessitent
lcriture dune grande quantit de code de programmation. Des SGBDR tels
quOracle ou SQL Server lui sont alors prfrs, mme sils ncessitent un
temps de mise en uvre beaucoup plus important.
Les diffrentes versions dAccess
Depuis 1992, anne de son lancement, Microsoft a mis sur le march de
nombreuses versions du logiciel : Access 2, Access 95, Access 97, Ac-
cess 2000, Access XP, Access 2003, Access 2007 et enn Access 2010, la mou-
ture de loin la plus sophistique et la plus puissante du programme.
Produit ayant pleinement atteint sa maturit, la version 2010 dAc-
cess est donc la dernire en date avoir t commercialise par
Microsoft. Access est le SGBDR le plus utilis ce jour ; statut mrit
si lon dresse la liste impressionnante et non exhaustive des traite-
ments que le logiciel sait effectuer. Rcupration de donnes issues
de sources htrognes, exportations vers la majorit des autres
applications, utilisations nombreuses sur Internet et en intranet,
interfaage natif avec SQL Server, langage de programmation
lattention des dveloppeurs ou encore bibliothque de commandes
macros pour les novices : ce ne sont que quelques exemples signi-
catifs.
Configuration matrielle ncessaire
Access est un logiciel assez gourmand en ressources matrielles. Pour
utiliser le programme dans des conditions de confort ralistes, la conguration
matrielle ncessaire pourra tre un ordinateur compatible PC, avec 2 Go Mo
de mmoire vive et quelques gigaoctets despace libre sur le disque dur.
14 1. Concepts et manipulations de base
1.2. Base de donnes, dnition
Pour tre raliste, il convient de prciser que la mise en uvre dun
SGBD requiert un investissement de temps non ngligeable (le d-
veloppement de la structure dune base de donnes et des objets qui
lentourent comme les formulaires, les requtes, ou les tats de-
mande de nombreux jours de travail). Dans quel cas doit-on utiliser
un SGBDR et quelles sont les caractristiques dune base de donnes
relationnelle ?
Lorganisation des donnes en sujets
Un SGBDR optimise la manire dont les informations sont stockes
en vitant les redondances. En effet, plutt que denregistrer toutes
les donnes dans un seul chier, comme ce serait le cas dans un
classeur dExcel, Access 2010 fractionne linformation et regroupe
les donnes appartenant un mme centre dintrt (ou sujet) dans
des chiers virtuels : les tables.
Redondance
Ce terme, couramment utilis par les informaticiens, est synonyme de
rptition.
Les tables, fichiers de donnes virtuels dAccess
Access utilise un chier unique et indissociable, portant lextension .accdb,
et regroupant lensemble des objets de la base de donnes, dont les tables. Il
nest donc pas possible den isoler une et de la copier individuellement dans
un dossier du disque dur. Il nest donc pas faux de parler de "chiers virtuels"
pour dsigner les tables, dans la mesure o, si une table ne peut tre
manipule indpendamment de lapplication qui la renferme en tant que
chier, il est en revanche parfaitement possible de la modier depuis Access,
aprs avoir ouvert la base de donnes qui la contient.
Certains SGDBR nont pas recours un chier unique mais des chiers
spars. Il est alors possible disoler une table et de la copier indpendam-
ment.
Lexemple qui suit permet dillustrer ces propos quelque peu thori-
ques. Imaginez que votre travail consiste constituer un chier de
personnes, des tudiants inscrits en universit, par exemple. La
quantit de donnes rpertorier est importante et les rubriques
15 1.2. Base de donnes, dfinition
telles que le nom, le prnom ou encore ladresse de chacun dentre
eux sont nombreuses.
Chaque tudiant est inscrit un cours optionnel, dispens par des
enseignants spciques (bien sr, lnonc du problme est rduit ici
au minimum). Le tableau suivant vous montre comment les informa-
tions seraient stockes dans un chier Excel :
Tableau 1.1 : Prsentation des donnes dans un fichier unique
Nom Prnom Adresse Code
postal
Ville Matire
optionnelle
Nom de
lensei-
gnant
TACQUE Rachel 65 ter, rue de
lglise
54000 NANCY Allemand Solange
THOUVENT Franois 1, rue Gambetta 67890 HIRSHEIM conomie Npal
COSSELIN Jol 240, rue du Chne 29000 BREST Histoire de
lart
Gentil
ACHONE Lucie 135, rue Victor-
Hugo
36018 CHTEAU-
ROUX
Espagnol Mullerio
CZARD Valrie 120, rue de Villers 33100 BORDEAUX conomie Npal
MULLER Pierre 16, rue de la Cte 44800 SAINT-
HERBLAIN
Commerce
internatio-
nal
Bernardo
THOUVENIN Graldine 22, rue Georges-
Clemenceau
69006 LYON Histoire de
lart
Gentil
DUPONT Denise 9, rue des rables 75010 PARIS Espagnol Muller
MULLER Maryse 98, rue Pasteur 62300 LENS Histoire de
lArt
Gentil
MARCHAND Jean 5 bis, rue Blondot 56330 RENNES conomie Npal
SCHLESSER Tom 17, rue Hortensia 75015 PARIS Commerce
internatio-
nal
Bernardo
DUPONT Julie 292 bis, rue du
Moulin
54140 JARVILLE Espagnol Mullerio
COSSELIN Pascale 1, alle des Lilas 57000 METZ Allemand Solange
(voir Figure 1.5)
En fait, le tableur napporte ici aucun avantage signicatif la gestion
de linformation, par rapport un chier manuel. Voyez maintenant
comment Access traite le problme. Vous allez voir les failles de cette
premire solution ou, plus exactement, les redondances dinforma-
tions
16 1. Concepts et manipulations de base
Rien dire en ce qui concerne les donnes personnelles des tu-
diants : nom, prnom, adresse, code postal ou encore la ville. Ces
informations sont uniques et spciques chaque individu. Elles
doivent donc tre saisies dans leur intgralit. Il nexiste aucun
moyen de droger cette saisie (sous peine de perdre des informa-
tions). Il nen va pas de mme pour les rubriques Matire optionnelle
et Nom de lenseignant qui, comme vous pouvez le constater dans le
tableau, sont rptes autant de fois quil existe dtudiants inscrits
au cours dispens par lenseignant. Ces rptitions dune mme
information napportent rien. Puisquune matire et le nom de len-
seignant qui la dispense sont uniques, il ne sert rien de les rpter.
Bien au contraire, cette redondance des informations est caractris-
tique dun manque doptimisation de la manire dont les donnes
sont enregistres et gnre des alas : perte de temps, risques de
fautes dorthographe, place gche inutilement sont les principaux.
Lun des concepts majeurs, que doit garder lesprit tout dve-
loppeur dune base de donnes, est de ncrire quune fois une
information donne, mme si celle-ci est utilise par plusieurs "-
ches" (une ligne dinformation dans cet exemple). Pour cela, il se doit
de regrouper les donnes en "sujets". Cette mthode, applique
lexemple qui prcde, donne le rsultat suivant :
Figure 1.5 : Les donnes enregistres dans une feuille de calcul dExcel
17 1.2. Base de donnes, dfinition
Tableau 1.2 : Le premier sujet est celui de lidentit de ltudiant
Nom Prnom Adresse Code postal Ville
TACQUE Rachel 65 ter, rue de lglise 54000 NANCY
THOUVENT Franois 1, rue Gambetta 67890 HIRSHEIM
COSSELIN Jol 240, rue du Chne 29000 BREST
ACHONE Lucie 135, rue Victor-Hugo 36018 CHTEAUROUX
CZARD Valrie 120, rue de Villers 33100 BORDEAUX
MULLER Pierre 16, rue de la Cte 44800 SAINT-HERBLAIN
THOUVENIN Graldine 22, rue Georges-Clemenceau 69006 LYON
DUPONT Denise 9, rue des rables 75010 PARIS
MULLER Maryse 98, rue Pasteur 62300 LENS
MARCHAND Jean 5 bis, rue Blondot 56330 RENNES
SCHLESSER Tom 17, rue Hortensia 75015 PARIS
DUPONT Julie 292 bis, rue du Moulin 54140 JARVILLE
COSSELIN Pascale 1, alle des Lilas 57000 METZ
Tableau 1.3 : Le deuxime sujet est celui de la matire et de son enseignant
Matire optionnelle Nom de lenseignant
Allemand Solange
Commerce international Bernardo
conomie Npal
Espagnol Mullerio
Histoire de lart Gentil
Il nexiste plus maintenant de rptition. La mthodologie employe
pour le stockage de linformation est optimale et les inconvnients
de la premire mthode disparaissent : temps de saisie limit au
minimum, orthographe unique pour une ligne, optimisation de les-
pace de stockage.
Lidentiant unique
Il nest pas possible darrter ici le modle conceptuel prsent
prcdemment car il est encore imparfait. Certes, les redondances
dinformations sont vites mais quel prix. Les cours optionnels (et
les noms des enseignants correspondants) ne sont plus rattachs
18 1. Concepts et manipulations de base
aux tudiants, si bien quil devient impossible de savoir quelle
matire ceux-ci sont inscrits. La base de donnes est inutilisable en
ltat.
Il faut donc trouver un moyen, able, de relier les deux sujets. La
solution consiste recourir un identiant unique, appel "cl pri-
maire", affect chaque matire et report sur la liste des tudiants.
Voyez cette mthode applique notre exemple :
Tableau 1.4 : La rubrique ajoute permet de rpertorier lidentifiant de la matire optionnelle
Nom Prnom Adresse Code
postal
Ville Numro de la ma-
tire optionnelle
TACQUE Rachel 65 ter, rue de lglise 54000 NANCY 1
THOUVENT Franois 1, rue Gambetta 67890 HIRSHEIM 3
COSSELIN Jol 240, rue du Chne 29000 BREST 5
ACHONE Lucie 135, rue Victor-Hugo 36018 CHTEAUROUX 4
CZARD Valrie 120, rue de Villers 33100 BORDEAUX 3
MULLER Pierre 16, rue de la Cte 44800 SAINT HERBLAIN 2
THOUVENIN Graldine 22, rue Georges-
Clemenceau
69006 LYON 5
DUPONT Denise 9, rue des rables 75010 PARIS 4
MULLER Maryse 98, rue Pasteur 62300 LENS 5
MARCHAND Jean 5 bis, rue Blondot 56330 RENNES 3
SCHLESSER Tom 17, rue Hortensia 75015 PARIS 2
DUPONT Julie 292 bis, rue du Moulin 54140 JARVILLE 4
COSSELIN Pascale 1, alle des Lilas 57000 METZ 1
Tableau 1.5 : Un identifiant unique est affect chaque matire optionnelle
Numro Matire optionnelle Nom de lenseignant
1 Allemand Solange
2 Commerce international Bernardo
3 conomie Npal
4 Espagnol Mullerio
5 Histoire de lArt Gentil
Cette modication est suffisante pour redonner leur cohrence aux
donnes : il est maintenant possible de connatre la matire option-
nelle et lenseignant attachs un tudiant. La quantit dinforma-
19 1.2. Base de donnes, dfinition
tions enregistres a, certes, un peu augment (il faut enregistrer les
identiants uniques dans chaque table), mais le volume de stockage
utilis reste infrieur celui quil tait initialement. Il le serait encore
plus si la table des matires optionnelles renfermait beaucoup plus
de rubriques : on parle alors de "champs".
Terminologie des bases de donnes relationnelles
Il existe une terminologie consacre au dveloppement de bases de donnes.
Ainsi, pour dsigner des sujets (les tudiants par exemple), des ches (le troi-
sime tudiant par exemple) et des rubriques (le prnom par exemple), il est
dusage dutiliser respectivement les termes "tables, enregistrements" ou
"lignes" et "champs" ou "colonnes".
Le gain de place nest pas le seul avantage de cette organisation des
donnes : une modication du nom de lenseignant affect une
matire ne sera effectue quune fois (alors quelle aurait d tre
ritre autant de fois que le nom tait utilis si les informations
taient stockes dans une table unique, comme ctait le cas initia-
lement).
Les relations permanentes et lintgrit
rfrentielle
Imaginez maintenant que lune des matires optionnelles ensei-
gne dans la facult soit supprime et que les tudiants inscrits
ces cours doivent tre rays des listes car ils sont automatique-
ment inscrits dans un autre tablissement universitaire dispen-
sant ces cours.
Pour loprateur ou lopratrice de saisie missionn pour raliser
la mise jour des chiers, la tche est considrable puisquil lui
faut, dune part, supprimer lenregistrement correspondant la
matire de la table des matires optionnelles, mais aussi et sur-
tout supprimer de la table des tudiants ceux dentre eux qui
taient inscrits au cours dans lesquels la matire supprime tait
dispense.
Access permet dtablir une relation permanente entre les deux
tables et dy associer une trs puissante fonctionnalit, nomme
"intgrit rfrentielle", dont le rle est dassurer une mise jour
en cascade des enregistrements dune table en fonction des mo-
dications effectues dans une autre. Dans cet exemple, tous les
20 1. Concepts et manipulations de base
enregistrements faisant rfrence la matire optionnelle suppri-
me seraient automatiquement effacs dans la table des tu-
diants.
De nombreux objets hirarchiss
Une base de donnes Access est un objet conteneur de toute lappli-
cation.
Il convient de dnir les notions dobjets conteneurs et dobjets
contenus car il est fait rfrence en permanence ces notions dans
Access (de mme que dans la plupart des langages de programma-
tion actuels qui sont dits orients objets). La plupart des lments
utiliss se nomment des "objets" et fonctionnent selon le principe
des poupes russes : un objet conteneur contient des sous-objets
conteneurs qui contiennent eux-mmes encore des sous-objets
conteneurs ou des objets contenus. Ce schma permet de dsigner
nimporte quel lment dune application en "traversant" les objets
qui lui sont hirarchiquement infrieurs ; le terme consacr est
DOM (Data Object Model).
Le DOM est une mthode trs efficace pour dsigner sans ambi-
gut un objet, une de ses caractristiques ou proprits, ou
encore une action associe un vnement (on parle alors de
"mthode").
Cette description du modle objet peu paratre quelque peu abs-
conse, voici donc une transposition de ce que pourrait tre le
DOM sur des tres humains Lanalogie permettra de mieux
xer les ides. Imaginez que la langue DOM soit parle dans le
langage usuel. Vous ne direz plus alors : "Jai mal loreille
Figure 1.6 : Lapplication de
lintgrit rfrentielle sous
Access est une
fonctionnalit trs puissante
21 1.2. Base de donnes, dfinition
gauche", mais : "Jai Corps.Tte.Oreille.Douleur = Vrai". Droutante,
cette syntaxe a le mrite dtre claire puisque, dans lobjet conteneur
Corps, vous trouvez le sous-objet conteneur Tte, qui lui-mme
contient lobjet Oreille dont la proprit Douleur est gale la valeur
boolenne Vrai.
Objet
Le concept dobjet est omniprsent dans Access. Chaque bote de dialo-
gue, chaque liste ou chaque bouton est un objet. Certains dentre eux sont
des objets conteneurs, dautres des objets contenus. Lobjet conteneur le plus
vaste est lobjet Base de donnes qui contient toute lapplication.
Lobjet conteneur Base de donnes contient plusieurs grandes fa-
milles dobjets sous-conteneurs. Les principaux sont cits dans ce
qui suit.
Les tables
Les tables, qui ont dj t prsentes, sont les objets conteneurs
principaux dAccess. Elles renferment linformation structure en
enregistrements, eux-mmes diviss en champs.
Les requtes
Ces puissants objets permettent dextraire et de modier des infor-
mations contenues dans les tables.
Figure 1.7 : Une table visualise depuis linterface dAccess 2010
22 1. Concepts et manipulations de base
Les formulaires
Les formulaires autorisent la prsentation lcran des informations
contenues dans les tables ou dans les requtes des ns de consul-
tation ou de modication. Sans eux, les donnes peuvent toutefois
tre obtenues dans un mode brut par le mode Feuille de donnes,
mais ce dernier est peu convivial et ne peut tre utilis comme
interface de saisie des informations dans une application nalise (le
mode Feuille de donnes nest utilis que pour tester lapplication
pendant le dveloppement).
Figure 1.8 : Une requte dAccess
Figure 1.9 : Un formulaire dAccess
23 1.2. Base de donnes, dfinition
Les tats
Les tats sont utiliss pour restituer un rsultat nal, synthse de
linformation renferme dans les tables (une facture imprime ou
consulte lcran par exemple).
Les macros
Les macros (ou macrocommandes) permettent, sans connaissance
particulire en matire de programmation, dautomatiser des tches
simples.
Figure 1.10 : Un tat
dAccess 2010
Figure 1.11 : Une macrocommande
dAccess
24 1. Concepts et manipulations de base
Les modules
Plus puissants que les macrocommandes, ces objets sont des pro-
grammes crits en langage Visual Basic. Ils permettent deffectuer
tous les traitements. Il est cependant ncessaire, pour y avoir re-
cours, de disposer dune connaissance approfondie en matire de
programmation.
Rsum des termes utiliss sur Access
Une base de donnes contient les familles dobjets suivantes : les tables,
les requtes, les formulaires, les tats, les macros et les modules.
Une table contient des enregistrements (ou lignes) qui contiennent des
champs (ou colonnes) qui contiennent des donnes.
Figure 1.12 : Le code dun module, en Visual Basic
Figure 1.13 : Les principales familles dobjets dune base de donnes Access
25 1.2. Base de donnes, dfinition
1.3. Analyser le problme
Bien entendu, vous tes probablement impatient de crer votre
premire table sur Access 2010. Les sections suivantes de ce chapi-
tre vont satisfaire vos attentes. Mais protons encore de cette intro-
duction pour rpter quune table suffit rarement, pour ne pas dire
jamais, comme conteneur dune application, mme primitive. En fait,
le seul cas de gure qui se satisfasse dune table unique est celui
dune simple liste (un carnet dadresses par exemple), ce qui,
avouons-le, constitue un pitre exercice de style pour un SGBDR
aussi sophistiqu que celui qui est le sujet de ce livre.
Lexemple simple dcrit dans la section prcdente a dj mis en
vidence laspect nfaste des redondances dinformations dans une
table. Ce constat doit tre lev au niveau de dogme pour tout
dveloppeur dune base de donnes qui se respecte.
Cette affirmation est certes plus facile noncer qu mettre en
pratique car chaque dveloppement est guid par une problmati-
que spcique quil convient danalyser. Aussi, avant de se lancer
dans le dveloppement dune base de donnes, qui dbute forc-
ment par la cration des tables puisque celles-ci constituent le noyau
du systme mis en uvre, il est conseill de prendre le temps
ncessaire la rexion. Vos deux outils sont le papier et le crayon,
tout simplement. Pensez que les quelques heures investies initiale-
ment et pendant lesquelles vous questionnerez les utilisateurs, ob-
serverez leurs habitudes et anticiperez leurs besoins vous seront
restitues au centuple lorsque vos formulaires et vos tats sappuie-
ront sur une structure saine et optimale constitue de tables bien
construites. Pensez, linverse, que des tables mal structures repr-
senteront un boulet quil vous faudra traner tout au long du temps
de vie de lapplication et qui vous imposera un assemblage de
"rustines", sources derreurs et gnratrices de temps perdu.
Le premier principe, quil vous faut appliquer, car il vous guidera
dans votre analyse, est le "regroupement par sujets". Pour le
comprendre et le matriser, vous allez tudier un nouvel exemple
thorique. Vous dcouvrirez ensuite comment mettre en pratique
votre analyse. Voici votre objectif : grer une collection de dis-
ques.
26 1. Concepts et manipulations de base
Regroupement par sujets
Pendant lanalyse du problme, les informations doivent tre runies par
sujets. Les sujets dtermins permettent ensuite de crer facilement les
tables qui en dcoulent.
Sujet
Un sujet est un type dinformation, fractionn en plusieurs parties distinc-
tes (les champs) et dcrivant intgralement et uniquement le type concern (il
ne doit manquer aucun champ ncessaire la description et, linverse, le
sujet ne doit pas renfermer de champ extrieur au type dinformation quil
dcrit).
Si vous agissez dans la prcipitation, vous risquez de commettre une
erreur frquente, la mme que celle qui a t constate dans lexemple
prcdent, cest--dire crer une table unique dans laquelle chaque
champ correspond lune des informations stocker. Inutile de prci-
ser que la mthode est mauvaise car elle est synonyme, une fois
encore, de redondances dinformations, de perte de temps, de risques
derreurs et de place gaspille, pour ne citer que les maux les plus
agrants. En outre, les "dgts" seront plus importants que prcdem-
ment car lapplication ncessite de stocker plus dinformations.
Pas de prcipitation, donc. ce stade, un simple papier et un crayon
sont les seuls instruments ncessaires. Commencez par dresser la liste
(volontairement simplie) de toutes les informations enregistrer :
j le titre du disque ;
j le nom de lartiste ;
j le prnom de lartiste ;
j le nom de lditeur ;
j ladresse de lditeur ;
j le code postal de lditeur ;
j la ville de lditeur ;
j le pays de lditeur ;
j la date de sortie du disque ;
j le type de disque (CD-ROM, DVD, vinyle) ;
j le thme musical (blues, classique, jazz, mtal, pop, rap, rock,
rythm and blues, varit, soul) ;
j le prix du disque.
27 1.3. Analyser le problme
Indpendance des champs
Lors de la construction dune table, veillez crer un champ pour chaque
donne enregistrer. Ainsi, le nom et le prnom tant des informations
distinctes, il est indispensable de leur affecter chacun un champ dans la table
qui les enregistrera. Si vous nappliquez pas cette rgle lmentaire, les
traitements ultrieurs des donnes sen trouveront alourdis, voire impossi-
bles. Imaginez, par exemple, que vous nayez rserv quun seul champ pour
stocker la fois le code postal et la ville. Il vous serait alors trs difficile
deffectuer un classement des enregistrements selon cette dernire.
Imaginons que vous vous lanciez prcipitamment dans la cration
dune table unique, qui contiendrait autant de champs quil existe
dlments sur cette liste. Ds le dbut de la saisie, vous serez
confront au problme de redondance de certaines informations. En
effet, il est rare quun auteur compose un seul disque et, si plusieurs
uvres dun mme auteur doivent tre enregistres, il deviendra
ncessaire de rpter autant de fois la saisie de son nom et de son
prnom que le chier contiendra de disques de cet artiste. Cette
erreur sera alors sanctionne par :
j une perte de temps non ngligeable lors de la saisie ;
j une occupation inutile de lespace libre de votre disque dur ;
j une baisse des performances lors des traitements (le parcours
dun chier volumineux est plus long que celui dun petit chier) ;
j une augmentation des risques derreurs (les informations tant
enregistres plusieurs fois, une erreur de saisie est probable) ;
j limpossibilit de corriger une information relative un artiste (un
changement de nom la suite dun mariage par exemple) sans
devoir rpter la correction sur tous les enregistrements des dis-
ques de cet artiste.
Une fois encore, la ncessit de regrouper les informations par
sujets simpose. Une information donne ne doit tre enregistre
quune fois dans son sujet. Linformation nale (les renseignements
relatifs un disque donn dans cet exemple) sera reconstitue en
liant les sujets entre eux au moyen de relations, dont le principe et
les mcanismes seront dcrits plus loin.
Dans cet exemple, la liste des informations peut tre fractionne en
trois sujets :
j les informations relatives au disque ;
j les informations relatives lartiste ;
28 1. Concepts et manipulations de base
j les informations relatives lditeur.
Chacun de ces sujets ncessite la cration dune table.
Dterminer les sujets
Cette opration devient naturelle avec lexprience car les mmes sch-
mas reviennent toujours, indpendamment du domaine dapplication. Une
bonne mthode consiste lister, sur papier, toutes les informations stocker
(comme cela a t fait prcdemment). Inutile de chercher ce stade tablir
un ordre. Il est par contre important de ne rien oublier. Dterminez ensuite le
premier sujet, affectez-lui une marque dindex (le chiffre 1 ou la lettre A par
exemple) et indexez tous les lments de la liste qui lui correspondent (ces
lments deviendront des champs lorsque la table correspondante sera
cre). Faites de mme pour les autres sujets. Une fois chaque sujet prcis-
ment dcrit, il ne vous restera qu ordonner les informations (mettre le code
postal avant la ville par exemple). Cet ordonnancement a pour seul but de
vous permettre une meilleure apprhension du contenu de la table. Une
erreur ce stade nest toutefois pas gravissime car il vous est toujours
possible de prsenter les donnes dans lordre de votre choix dans les
formulaires ou les tats rcapitulatifs.
Le rsultat obtenu est le suivant :
Tableau 1.6 : La liste des sujets
Sujet Numro dindex du sujet
Disques 1
Artistes 2
Maisons ddition de disques 3
Tableau 1.7 : Les informations enregistrer et leurs sujets
Donnes stocker Sujet auquel la donne est affecte
Titre du disque 1
Nom de lartiste 2
Prnom de lartiste 2
Nom de lditeur 3
Adresse de lditeur 3
Code postal de lditeur 3
Ville de lditeur 3
Pays de lditeur 3
Date de sortie du disque 1
Type de disque 1
29 1.3. Analyser le problme
Tableau 1.7 : Les informations enregistrer et leurs sujets
Donnes stocker Sujet auquel la donne est affecte
Thme musical 1
Prix 1
Cl primaire
Le numro dindex du sujet est nomm "cl primaire". Il sagit dun iden-
tiant unique, affect chacun des enregistrements du sujet et permettant de
lidentier.
Dsormais, en cas derreur sur le nom dun artiste, son orthographe
ne sera corrige quune fois au sein du sujet Artistes mis en relation
avec le sujet Disques.
Une telle analyse initiale du problme vous permettra de construire
un "conteneur" optimal des donnes. Mettons n pendant quelques
pages la thorie pour dcouvrir comment construire sur Ac-
cess 2010 les tables correspondant aux sujets que vous venez de
dnir. Mais avant cela, il vous faut crer la base de donnes, conte-
neur de toute lapplication.
1.4. Crer une base de donnes
La procdure de cration dune base de donnes est trs simple. Elle
sapparente celle utilise sur la plupart des logiciels bureautiques
tels que Word ou Excel. Gardez toutefois lesprit quune base de
donnes, mme si Access lenregistre sous la forme dun chier
unique (portant lextension .accdb), renferme de nombreux objets de
types diffrents, dont les tables constituent le pivot central.
Commencez par lancer Access 2010 en cliquant sur le bouton dmar-
rer, puis sur le menu Tous les programmes/Microsoft Office/Microsoft
Office Access 2010.
Lcran louverture dAccess 2010
Lorsque Access 2010 est dmarr, un premier cran est affich. Il propose
les principales fonctionnalits de cration dune base de donnes (une base
vide ou constitue partir dun modle) ou douverture dune base existante
(cre prcdemment sous Access). Ct cran nest pas affich si le chier
dune base de donnes existante est directement ouvert (par un double-clic
30 1. Concepts et manipulations de base
depuis lExplorateur de chiers de Windows, par exemple) : la base est
dans ce cas automatiquement ouverte dans Access.
Il existe plusieurs mthodes pour crer une base de donnes, la
premire consistant gnrer une base de donnes vide.
Crer une base de donnes vide
1 Cliquez sur longlet Fichier situ en haut et gauche de la
fentre dAccess 2010.
2 Dans le menu affich, cliquez sur Nouveau.
3 A la rubrique Modles disponibles, choisissez Base de donnes vide.
Dans la zone Nom de chier, saisissez le nom de la base de don-
nes crer puis cliquez sur le bouton Crer.
Figure 1.14 : Lcran affich au
dmarrage dAccess 2010
Figure 1.15 : Le menu affich par longlet Fichier
31 1.4. Crer une base de donnes
4 Access 2010 vous propose par dfaut denregistrer le chier
dans le dossier Documents. Pour modier cet emplacement, cli-
quez sur licne Cherchez un emplacement pour votre base de don-
nes, symbolis par un dossier ouvert, droite de la zone Nom de
chier.
5 Dans la bote de dialogue Fichier Nouvelle base de donnes, choi-
sissez le dossier denregistrement de la base de donnes et cliquez
sur le bouton OK.
Figure 1.16 : La cration dune base de donnes vide
Figure 1.17 : Lenregistrement de la base de donnes dans le dossier choisi
32 1. Concepts et manipulations de base
Cration dun nouveau dossier lors de lenregistrement dun fichier
Pour crer rapidement un dossier lors de lenregistre-
ment du chier, utilisez le bouton Nouveau dossier.
Les noms de fichiers
Comme les autres logiciels Microsoft, Access 2010 propose le dossier
Documents par dfaut comme espace denregistrement. Il est prfrable de
ne pas enregistrer tous vos chiers dans ce dossier car leur nombre va trs
vite augmenter. Utilisez plutt la mthode consistant crer un dossier par
type dapplication.
Choisissez des noms de chiers signicatifs : vitez les noms du type Base de
donnes1.accdb car ils ne donnent pas dindication sur le contenu du chier
et prfrez des noms comme Facturation.accdb ou Disques.accdb.
Extensions des fichiers Access 2010
Conservez lextension .accdb pour vos chiers de bases de donnes
Access 2010, sinon les chiers ne seront plus reconnus par lapplication
(accdb est labrviation de Access Data Base).
Lextension .accdb se substitue, depuis la version 2007 dAccess, lancienne
extension .mdb, employe par Microsoft pour les chiers de bases de don-
nes Access, jusqu la version 2003.
Il existe deux autres extensions caractristiques dAccess 2010 : lexten-
sion .accde, qui remplace lancienne extension .mde et caractrise les -
chiers qui peuvent uniquement tre excuts (sans possibilit de modica-
tion) ainsi que lextension .accdt, utilise pour les modles de bases de
donnes Access.
6 De retour dans le volet Base de donnes vide, cliquez sur le bouton
Crer.
Dans la fentre dAccess apparat celle de la base de donnes. Access
propose lutilisateur de crer immdiatement une table pour y
saisir des donnes, en mode Feuille de donnes.
33 1.4. Crer une base de donnes
Modifier le dossier denregistrement par dfaut
Pour rednir le dossier denregistrement
par dfaut de vos bases de donnes, cliquez
sur longlet Fichier puis sur le bouton Options.
Cliquez ensuite sur longlet Gnral dans la bote de dialogue Options
Access. Saisissez le chemin du nouveau dossier dans la zone Dossier de base
de donnes par dfaut de la rubrique Cration de bases de donnes.
Format denregistrement de la base de donnes
Le format denregistrement Access 2007 est propos par dfaut (format de
la version prcdente dAccess). Il vous permet de bncier de toutes les
fonctionnalits offertes par cette nouvelle version du logiciel. Il vous est
toutefois possible, pour des raisons de compatibilit, dutiliser des formats
denregistrement antrieurs des bases de donnes. Cliquez pour ce faire sur
Figure 1.18 : la cration dune nouvelle base de donnes, la cration immdiate dune premire
table est propose
Figure 1.19 : Le choix du dossier denregistrement par dfaut
34 1. Concepts et manipulations de base
la che de la liste Format de chier par dfaut pour la base de donnes
vierge de longlet Gnral de la bote de dialogue Options Access.
Crer une base de donnes partir dun modle
Access 2010 offre de nombreux modles de bases prconstruites,
copis lors de linstallation du logiciel sur le disque dur de lordina-
teur ou disponibles en ligne, sur le site Internet de Microsoft, et dont
les objets peuvent tre utiliss en ltat ou modis. Cest un gain de
temps apprciable pour le dveloppeur qui y trouve un thme pro-
che de celui de sa future application ; cette fonction reprsente
galement un outil pdagogique non ngligeable puisque les objets
gnrs peuvent y tre tudis.
Access 2010 offre plusieurs catgories de modles.
1 Cliquez sur longlet Fichier.
Le mode Backstage
Ce nouveau terme dsigne, sous Office 2010, les fonctionnalits accessibles
depuis longlet Fichier (ouvertures et enregistrements de bases de donnes,
raccourcis vers les chiers rcemment utiliss, impressions, options, ).
2 Dans la partie gauche de la fentre, cliquez sur Nouveau.
3 la rubrique Modles disponibles, cliquez sur Exemples de modles.
Utiliser les modles en ligne
La rubrique Modles Office.com propose, dans sa partie infrieure, des
liens permettant daccder des catgories de modles, depuis le site Inter-
net de Microsoft.
4 Cliquez sur le nom du modle utiliser (Base de donnes Contacts
sur le Web, par exemple), symbolis par une icne dans le volet.
Figure 1.20 : Le choix du format denregistrement de la base de donnes
35 1.4. Crer une base de donnes
5 Dans la zone Nom de chier, en bas et droite de la fentre,
saisissez le nom affecter la nouvelle base de donnes puis
cliquez sur le bouton Crer.
Modles tlchargs partir dOffice Online
Si le modle utilis est tlcharg depuis Office Online, il nest pas prsent
sur lordinateur et doit tre tlcharg avant de pouvoir tre utilis. Le bouton
Tlcharger se substitue alors au bouton Crer.
Figure 1.21 : Le choix dun modle
Figure 1.22 : La saisie du nomde la nouvelle base de donnes
Figure 1.23 : La nouvelle base de donnes, cre selon le modle choisi, est ouverte dans la fentre
dAccess 2010
36 1. Concepts et manipulations de base
1.5. Fermer une base de donnes
Comme tout chier, une base de donnes doit tre ferme la n de
son utilisation. Lopration comprend videmment une phase den-
registrement automatique des donnes dans un chier sur le disque
dur an de permettre leur rutilisation ultrieure.
Pour fermer la base de donnes en cours dutilisation, cliquez sur
longlet Fichier puis sur Fermer la base de donnes, dans le volet
affich.
1.6. Ouvrir une base de donnes
Il existe plusieurs mthodes pour ouvrir une base de donnes. La
plus conviviale, si la base a t rcemment utilise, est la suivante :
1 Depuis le mode Backstage, accessible par longlet Fichier, cliquez
sur lun des liens pointant vers lune des dernires bases de
donnes utilises.
2 Ces liens, pointant vers les bases de donnes rcemment ouver-
tes, sont galement proposs depuis longlet Fichier, lorsque le
bouton Rcent est cliqu.
Figure 1.24 : La fermeture de la base de donnes
Figure 1.25 : Louverture dune base de donnes rcemment
utilise
37 1.6. Ouvrir une base de donnes
3 Si le nom de la base de donnes ouvrir nest pas affich dans la
liste des dernires bases utilises, cliquez sur le bouton Ouvrir,
aprs avoir cliqu longlet Fichier (ou utilisez la combinaison de
touches [Ctrl]+[O]).
La bote de dialogue Ouvrir apparat.
4 Dans la bote de dialogue, cliquez sur le lecteur ou sur le dossier
qui contient la base de donnes ouvrir. Slectionnez la base de
donnes, puis cliquez sur le bouton Ouvrir ou double-cliquez di-
rectement sur le nom de la base de donnes ouvrir.
Figure 1.26 : Les liens proposs
lorsque le bouton Rcent est
cliqu
Figure 1.27 : Louverture de la
base de donnes
38 1. Concepts et manipulations de base
La recherche dune base de donnes
Pour retrouver rapidement une base de donnes, alors que la bote de
dialogue Ouvrir est affiche, cliquez sur le dossier ou sur le lecteur de lordi-
nateur susceptible de renfermer la base de donnes (un disque dur ou un
lecteur de CD, par exemple). Dans la zone Rechercher, saisissez tout ou partie
du nom de la base de donnes recherche.
Choisir un mode douverture de la base
Access 2010 dispose de plusieurs modes douverture dune base de
donnes. Par dfaut, lorsque le bouton Ouvrir de la bote de dialogue
Ouvrir est activ, la base est ouverte en mode daccs partag. Cela
signie que tous les utilisateurs peuvent lire et crire simultanment
dans la base.
Pour ouvrir la base de donnes en lecture seule an de la consulter
sans la modier, cliquez sur la che du bouton Ouvrir et choisissez
Ouvrir en lecture seule.
Si vous souhaitez ouvrir la base de donnes en mode Exclusif,
choisissez Ouvrir en exclusif parmi les options proposes sur la liste
du bouton Ouvrir (les autres utilisateurs ne pourront pas, dans ce cas,
ouvrir la base pendant votre utilisation de celle-ci).
Si vous choisissez la dernire option propose dans la liste du
bouton Ouvrir, intitule Ouvrir en mode lecture seule exclusif, vous
disposerez des mmes fonctionnalits que dans loption prcdente,
mais, de plus, seule la consultation vous sera permise (vous ne
pourrez pas modier la base).
Compatibilit avec dautres formats de bases de donnes
Le bouton Microsoft Access de la bote de dialogue Ouvrir autorise louver-
ture de chiers enregistrs dans des formats diffrents du format ACCDB
(mdb, dBASE, Excel, Exchange, Paradox, Sharepoint, etc.). Un Assistant
construit alors les tables Access correspondantes et cre un lien dynamique
avec le chier source.
Figure 1.28 : Louverture dune base de donnes en
lecture seule
39 1.6. Ouvrir une base de donnes
1.7. Dcouvrir linterface dAccess 2010
Avant daller plus loin dans lutilisation du logiciel, dcouvrez son
interface.
Connatre les composants essentiels de linterface
Les principaux composants de linterface dAccess 2010 sont les
suivants :
j la Barre de titre, en haut de la fentre dAccess 2010, et dans
laquelle le nom de la base de donnes ouverte est indiqu ;
j le Ruban. Cette zone, affiche en haut de la fentre dAccess,
renferme plusieurs catgories dlments de contrle du pro-
gramme. Parmi ceux-ci, citons les onglets de commandes, per-
mettant dinteragir sur le logiciel. Certains de ces onglets sont dits
contextuels car leurs contenus varient en fonction de laction en
cours de ralisation. Le Ruban affiche galement des galeries
(zones daperus permettant dapprcier le futur rsultat, aprs
application dun traitement) ;
Figure 1.29 : De nombreux
formats de bases de donnes
peuvent tre ouverts
Figure 1.30 : Le Ruban dAccess 2010
40 1. Concepts et manipulations de base
La personnalisation du Ruban, une nouveaut dAccess 2010
Il vous est dsormais possible de personnaliser laspect du Ruban de
linterface dAccess (ajouter ou supprimer des onglets et les boutons quils
renferment).
Pour ce faire, cliquez sur Fichier/Options ou oprez un clic droit dans le
Ruban et choisissez Personnaliser le Ruban dans le menu contextuel qui
apparat. La bote de dialogue Options Access, qui est alors affiche, vous
permet de choisir les lments affichs dans le Ruban ainsi que leurs
emplacements.
j la barre doutils Accs rapide,
qui regroupe les commandes les
plus frquemment utilises, ac-
cessibles par de simples clics sur des boutons ;
j le volet Tous les objets Access, qui permet daccder aux objets
constituant la base de donnes.
Figure 1.31 : La personnalisation du Ruban depuis la bote de dialogue Options Access
Figure 1.32 : La barre
doutils Accs rapide
Figure 1.33 : Le volet Tous les objets Access
41 1.7. Dcouvrir linterface dAccess 2010
Connatre les actions proposes dans la barre
doutils Accs rapide et dans le Ruban
Pour connatre la signication des boutons proposs dans la barre
doutils Accs rapide et dans le Ruban, survolez-les avec le pointeur
de la souris sans cliquer. Aprs une seconde environ dimmobilit du
pointeur sur un bouton, une petite zone de texte, nomme "info-
bulle", est affiche et donne une description succincte de laction
offerte par le bouton survol.
Changer lemplacement de la barre doutils Accs
rapide
La barre doutils Accs rapide renferme un bouton, nomm
Personnaliser la barre doutils Accs rapide, permettant de modier
lemplacement de la barre doutils et son contenu.
Pour modier la position de la barre doutils dans linterface, cliquez
sur le bouton Personnaliser la barre doutils Accs rapide et choisissez
Afficher en dessous du ruban ou Afficher au-dessus du ruban dans le
menu qui est alors dvelopp, en fonction de la position que vous
souhaitez affecter la barre doutils.
Figure 1.34 : Une infobulle est affiche lors du survol dun
bouton du Ruban
Figure 1.35 : Le bouton Personnaliser la barre doutils
Accs rapide
42 1. Concepts et manipulations de base
Modier le contenu de la barre doutils Accs
rapide
Pour modier le contenu de la barre doutils (cest--dire les boutons
quelle contient) :
1 Cliquez sur le bouton Personnaliser la barre doutils Accs rapide
et choisissez Autres commandes.
La bote de dialogue Options Access apparat alors et la rubrique
Barre doutils Accs rapide y est affiche.
2 Choisissez la catgorie de commandes (Onglet Fichier, Onglet
Aperu avant impression, Onglet Accueil, etc.) dans la liste drou-
lante de la zone Choisir les commandes dans les catgories suivantes
puis cliquez sur la commande devant tre ajoute la barre
doutils, dans la liste prsente sous cette zone.
3 Cliquez sur le bouton Ajouter pour placer la commande slection-
ne dans la barre doutils (la commande est alors affiche dans la
colonne de droite).
linverse, le bouton Supprimer permet de retirer une commande de
la barre doutils, aprs que celle-ci a t slectionne dans la colonne
de droite.
4 Cliquez sur le bouton OK de la bote de dialogue Options Access.
Figure 1.36 : La rubrique
Personnaliser la barre doutils
Accs rapide de la bote de
dialogue Options Access
43 1.7. Dcouvrir linterface dAccess 2010
Autre mthode daccs la personnalisation de la barre doutils Accs rapide
La rubrique Personnaliser la barre doutils Accs rapide de la bote de
dialogue Options Access est galement accessible par un clic sur longlet
Fichier puis sur le bouton Options dans le menu affich. Dans la bote de
dialogue Options Access, cliquez sur Barre doutils Accs rapide.
Dcouvrir le Volet de navigation
Le Volet de navigation affich sur la gauche de la fentre dAc-
cess 2010 lorsquune base de donnes a t ouverte, les objets qui
composent la base de donnes, rangs selon certaines catgories.
Modifier la taille du Volet de navigation
Pour modier la largeur du Volet de navigation, il vous suffit de cliquer sur
son bord droit, nomm Barre de redimensionnement, de maintenir le bouton
de la souris enfonc et de glisser la double che qui apparat vers la droite
ou vers la gauche.
Si la taille du volet a t rduite son maximum, il naffiche plus les catgo-
ries dobjets (seule la mention Volet de navigation est affiche verticalement
gauche de la fentre dAccess).
Pour redonner au volet sa taille initiale, cliquez sur le bouton Ouvrir/Fermer la
barre de redimensionnement prsent en haut du Volet de navigation.
Figure 1.37 : Le redimensionnement du
Volet de navigation
44 1. Concepts et manipulations de base
Autre mthode de modification de la taille du Volet de navigation
Pour modier la taille du Volet de navigation, il vous est galement possi-
ble dutiliser la touche [F11] ou de double-cliquer sur la Barre de redimension-
nement place droite du volet.
Masquer ou afficher le Volet de navigation
Vous pouvez choisir de rendre visible ou non le Volet de navigation
en cliquant sur longlet Fichier puis sur le bouton Options qui est alors
affich et enn en choisissant Base de donnes active dans la bote de
dialogue Options Access. Dcochez ou cochez alors la case Afficher le
volet de navigation la rubrique Navigation. Cette option sera dans ce
cas active au prochain dmarrage du logiciel.
Figure 1.38 : Le bouton Ouvrir/Fermer la
barre de redimensionnement
45 1.7. Dcouvrir linterface dAccess 2010
La Barre dtat
La Barre dtat est situe en bas de la fentre dAccess 2010. Son rle
est dafficher des informations spciques laction en cours. Elle
renferme galement diffrents boutons utiles pour passer dun mode
daffichage un autre.
Masquer ou afficher la Barre dtat
Vous pouvez choisir de rendre visible ou non la Barre dtat en cliquant sur
longlet Fichier puis sur le bouton Options qui est alors affich. Cliquez
ensuite sur Base de donnes active puis dcochez ou cochez la case Afficher
la barre dtat la rubrique Options de lapplication.
Figure 1.39 : Loption daffichage du volet de navigation
Figure 1.40 : Loption daffichage de la Barre dtat
46 1. Concepts et manipulations de base
Manipuler les objets
Duplication, suppression, changement de nomou encore de descrip-
tion sont des oprations qui seffectuent de faon identique sur
chacune des familles dobjets dAccess 2010.
Les diffrents classements dobjets proposs dans
le Volet de navigation
Le Volet de navigation propose, dans sa partie suprieure droite, un
bouton permettant de modier les critres daffichage des objets de
la base de donnes (tous les objets, tables, formulaires, requtes,
etc.) sous forme de catgories ou de groupes.
Dvelopper ou rduire un groupe dobjets
Pour faire apparatre la liste des objets dun groupe dans le Volet de
navigation, cliquez sur la double che dirige vers le bas, droite
du nom du groupe. linverse, cliquez sur la double che dirige
vers le haut, droite du nom du groupe, pour masquer la liste des
objets quil renferme.
Figure 1.41 : Les critres daffichage des objets de la base
de donnes, dans le Volet de navigation
Figure 1.42 : Les groupes contenus dans le Volet de
navigation peuvent tre dvelopps ou rduits volont
47 1.7. Dcouvrir linterface dAccess 2010
Autre mthode de rduction ou de dveloppement dun groupe
Dans le Volet de navigation, un groupe peut galement tre dvelopp ou
rduit par un double-clic sur son nom ou par un clic droit sur le groupe.
Choisissez ensuite Rduire le groupe ou Dvelopper le groupe dans le menu
contextuel qui apparat. Les actions de rduction ou de dveloppement peu-
vent galement tre appliques lensemble des groupes par les menus
Dvelopper tout et Rduire tout prsents dans le menu contextuel.
Afficher les objets
La prsentation des objets de la base de donnes est modiable
selon votre convenance. Vous pouvez ainsi personnaliser cet l-
ment de linterface en ayant recours des icnes ou des listes plus
ou moins dtailles. Des options daffichage vous sont proposes.
j Laffichage utilisant des icnes. Cliquez du bouton droit sous la
liste des objets prsents dans le Volet de navigation ou sur un
groupe dobjets. Dans le menu contextuel qui apparat, choisissez
Afficher par/Icne.
Figure 1.43 : Le menu contextuel offre une
autre mthode pour rduire ou dvelopper
les groupes
Figure 1.44 : Le choix dun
affichage utilisant de grandes
icnes
48 1. Concepts et manipulations de base
j Laffichage en liste. Cliquez du bouton droit sous la liste des objets
prsents dans le Volet de navigation ou sur un groupe dobjets.
Dans le menu contextuel qui apparat, choisissez Afficher par/Liste.
j Laffichage dtaill. Cliquez du bouton droit sous la liste des objets
prsents dans le Volet de navigation ou sur un groupe dobjets.
Dans le menu contextuel qui apparat, choisissez Afficher par/D-
tails.
Figure 1.45 : Le choix dun affichage utilisant des listes
Figure 1.46 : Le choix dun affichage dtaill
49 1.7. Dcouvrir linterface dAccess 2010
Trier les objets
Pour chacun des affichages dcrits prcdemment, lordre de prsentation
des objets de chaque groupe peut tre modi par un clic droit sous la liste
des objets prsents dans le Volet de navigation ou sur un groupe dobjets.
Dans le menu contextuel qui apparat, choisissez Ordre de tri puis un critre
de tri des objets (tri croissant, tri dcroissant, nom, type, date de cration,
date de modication).
Renommer un objet
Pour renommer un objet de la base de donnes :
1 Dans le Volet de navigation, cliquez du bouton droit sur lun des
objets appartenant un groupe (une table, par exemple).
2 Dans le menu contextuel qui apparat, choisissez Renommer.
Figure 1.47 : Le choix
de lordre de prsentation
des objets
Figure 1.48 : Le menu contextuel permet
de renommer lobjet
50 1. Concepts et manipulations de base
Utilisation de la touche F2
Cette touche, lorsquelle est active, permet galement de renommer
lobjet slectionn.
Le nom de lobjet apparat en surbrillance.
3 Saisissez un nouveau nom. Validez en utilisant la touche [].
Annuler le changement du nomde lobjet
Pour annuler une modication du nom dun objet, utilisez la combinaison
des touches [Ctrl]+[Z].
Dupliquer un objet
La copie est une opration trs utile lorsque, par exemple, vous
souhaitez raliser une sauvegarde dun objet avant une modication
dlicate ou si vous dsirez crer un objet proche de celui qui est
copi (en modiant uniquement les caractristiques spciques du
nouvel objet an de le personnaliser).
Voici, titre dexemple, le mode opratoire permettant de dupliquer
une table dans une base de donnes :
1 Aprs avoir vri que la table est ferme et dvelopp le groupe
dobjets Tables, dans le Volet de navigation, cliquez du bouton
droit sur lune des tables de la base de donnes ouverte.
2 Dans le menu contextuel qui apparat, choisissez Copier.
3 Cliquez du bouton droit dans le Volet de navigation et choisissez
Coller dans le menu contextuel qui apparat.
Oprer la duplication au moyen des touches du clavier
Lopration de Copier/Coller peut galement tre effectue en utilisant les
touches [Ctrl]+[C] (pour effectuer le Copier) sur lobjet qui doit tre dupliqu
puis les touches [Ctrl]+[V] (pour raliser le Coller).
La bote de dialogue Coller la table sous est affiche.
4 Dans la bote de dialogue, saisissez le nom de la nouvelle table
dans la zone Nom de la table.
51 1.7. Dcouvrir linterface dAccess 2010
5 Si lobjet en cours de duplication est une table, la bote de dialogue
Coller la table sous affiche des options spciques. Cochez lune de
celles-ci, en fonction de laction souhaite :
Pour utiliser uniquement la structure de la table copier, cliquez
sur loption Structure seulement sous la rubrique Options.
Pour rcuprer la structure et les donnes de la table copier,
cliquez sur loption Structure et donnes sous la rubrique Op-
tions.
Cochez la troisime option, Ajouter les donnes une table, pour
effectuer une copie des donnes dans la table mentionne dans
la zone Nom de la table. La table de destination doit exister et
possder la mme structure que la table copie.
Supprimer un objet
Voyez maintenant comment supprimer un objet dans une base de
donnes. Voici, titre dexemple, le mode opratoire permettant de
supprimer une table dans une base de donnes :
1 Aprs avoir vri que la table est ferme et dvelopp le groupe
dobjets Tables, dans le Volet de navigation, cliquez du bouton
droit sur lune des tables de la base de donnes ouverte.
2 Dans le menu contextuel qui apparat, choisissez Supprimer.
Autres mthodes de suppression dun objet
Pour supprimer lobjet slectionn dans le Volet de navigation, il vous est
galement possible dutiliser la touche [Suppr].
Vous pouvez galement utiliser le bouton Supprimer, propos dans le groupe
Enregistrements de longlet Accueil du Ruban. Si le bouton napparat pas
dans le Ruban, vous devrez le rendre visible en cliquant sur le groupe
Enregistrements de celui-ci.
Figure 1.49 : Les options de duplication dune table
Figure 1.50 : Le bouton Supprimer propos dans le Ruban
52 1. Concepts et manipulations de base
La bote de dialogue Microsoft Office Access est affiche.
3 Conrmez la suppression en cliquant sur le bouton Oui.
Annuler la suppression dun objet
Si un objet a t supprim malencontreusement, utilisez la combinaison
des touches [Ctrl]+[Z] ou encore le bouton Annuler de la barre doutils Accs
rapide.
Saisir la description dun objet
La description, qui peut tre fort utile quand la quantit dobjets
contenus dans la base augmente, est visible uniquement si laffi-
chage dtaill des objets est activ (par un clic droit sous la liste des
objets prsents dans le Volet de navigation ou sur un groupe dob-
jets puis en choisissant Afficher par/Dtails dans le menu contextuel
qui apparat).
1 Dans le Volet de navigation, cliquez du bouton droit sur lobjet puis
choisissez Proprits dans le menu contextuel qui apparat.
La bote de dialogue Proprits de lobjet saffiche.
2 Dans la bote de dialogue Proprits, saisissez le texte de la des-
cription dans la zone Description. Cliquez sur le bouton OK.
Figure 1.51 : La conrmation de la suppression de lobjet
Figure 1.52 : La saisie de la description,
dans la bote de dialogue des proprits
de lobjet
53 1.7. Dcouvrir linterface dAccess 2010
Le texte saisi dans la description saffiche dans le Volet de navigation,
sous le nom de lobjet, aprs les zones Cr le et Modi le.
Masquer un objet de la base de donnes
La case cocher Masqu dans ce groupe de la bote de dialogue
Proprits de lobjet slectionn permet de masquer ce dernier (il
napparat plus alors parmi les autres objets de la fentre de la base
de donnes).
Deux modes daffichage des objets masqus soffrent vous. Lors-
que le premier est activ, les objets concerns ne gurent plus dans
le Volet de navigation. Le second mode affiche les objets dsactivs
sous la forme dicnes transparentes.
Pour activer lun ou lautre de ces modes :
1 Cliquez du bouton droit sur la barre de titre du Volet de navigation.
2 Choisissez le menu Options de navigation dans le menu contextuel
qui apparat.
3 Dcochez ou cochez la case Afficher les objets masqus de la rubri-
que Afficher les options dans la bote de dialogue Options daffi-
chage.
Figure 1.53 : Laccs aux Options de navigation
Figure 1.54 : Le paramtrage du
mode daffichage des objets
masqus
54 1. Concepts et manipulations de base
Utiliser laide dAccess 2010
Comme tous les logiciels Microsoft, Access 2010 dispose dune aide
intgre qui peut se rvler fort utile. Procdez ainsi :
Cliquez sur le bouton Aide sur Microsoft Office Access, symbolis par
un point dinterrogation plac en haut et droite de la fentre
dAccess 2010 (ou appuyez sur la touche [F1] du clavier).
La fentre Access Aide est affiche.
La fentre daide prsente diffrentes parties, permettant daccder
de plusieurs manires aux sources de documentation proposes par
le logiciel.
Figure 1.55 : Le bouton Aide sur Microsoft Office Access
Figure 1.56 : La fentre dAide
55 1.7. Dcouvrir linterface dAccess 2010
j Le volet Table des matires, plac dans la partie gauche de la
fentre, prsente de nombreux chapitres ordonns selon une pro-
gression pdagogique correspondant celle dun utilisateur d-
couvrant le logiciel. Lorsquon clique sur le titre de lun de ces
chapitres, les sous-chapitres qui le composent sont dvelopps en
dessous. Lorsquon clique sur les sous-chapitres, les informations
leur correspondant sont affiches dans la partie droite de la fen-
tre daide.
Afficher et masquer la table des matires
Lors de la lecture dune page daide, il peut tre utile de masquer
temporairement la table des matires, an de disposer dune surface
plus importante lcran. Utilisez pour ce faire le bouton Masquer la table
des matires, plac dans la barre doutils de la fentre daide (ce bouton se
nomme Afficher la table des matires lorsque la table des matires est
masque).
j Une zone de recherche, place en haut et gauche de la fentre
daide, permet lutilisateur de saisir un ou plusieurs mots cls
caractristiques de sa recherche. Lorsquon clique ensuite sur le
bouton Rechercher, les rsultats de la recherche sont affichs dans
la partie droite de la fentre, sous la forme de liens.
j Initialement, la barre doutils de la fentre daide renferme les
boutons Prcdent, Avant, Arrter, Actualiser, Accueil, Imprimer,
Modier la taille de la police, Masquer/Afficher la table des matires,
Ne pas placer sur le dessus/Maintenir sur le dessus, qui facilitent la
navigation et lutilisation de laide.
Figure 1.57 : Une recherche de documentation, lance depuis la zone de recherche
56 1. Concepts et manipulations de base
1.8. Crer une table
Une base de donnes Access contient toujours au moins une table
dont le rle est, rappelons-le, de permettre lenregistrement struc-
tur des informations (une table correspond un sujet de lanalyse).
Rappelons encore le schma structurel de toutes les tables : une
table contient des enregistrements (ou lignes) qui contiennent des
champs (ou colonnes) dans lesquels sont stockes les donnes.
Il existe plusieurs types de champs permettant denregistrer des
donnes de types diffrents. Ainsi, un champ utilis pour enregistrer
le prnom dune personne nest pas de mme type que celui dans
lequel un prix est stock, et une date fait appel un troisime type de
champ.
Les caractristiques de la table ne se limitent pas aux types affects
aux champs. Il est en effet possible daller beaucoup plus loin en
appliquant des rgles de validation qui empchent la saisie de don-
nes aberrantes (une date de naissance postrieure la date du jour,
par exemple).
Crer une table en mode Cration
Comme sont nom lindique, le mode Cration permet de "crer",
cest--dire de dnir un objet. Il ne sapplique pas seulement aux
tables : il est employ pour la construction des formulaires, des tats
et des requtes par exemple. Une fois lobjet cr, il peut tre ex-
cut (le terme gnralement usit sur Access est "ouvrir").
Vous allez donc maintenant crer votre premire table. Elle sera
modlise sur le sujet des disques.
La cration de la structure dune table est une tape obligatoire avant
la saisie des donnes. La table tant un "rceptacle" dinformations,
vous allez dnir les champs qui collecteront les renseignements de
manire structure.
Bien quAccess dispose dun mode permettant de crer une table en
entrant des donnes qui permet de se dispenser de ltape de cra-
tion de la structure de la table, il est conseill de ne pas y avoir
recours, dans un premier temps du moins, pour deux raisons :
Figure 1.58 : La barre doutils de la fentre daide
57 1.8. Crer une table
j la premire est dordre pdagogique. Ce mode donne lillusion
que la cration de la structure de la table est facultative car une
grille de saisie est affiche et quelle sapparente fort une feuille
de calcul Excel. Le risque dune confusion entre les deux familles
de logiciels (bases de donnes et tableurs) est alors important ;
j la seconde raison est que le travail qui na pas t ralis au dbut
doit ltre la n. Des noms de champs sont crs arbitrairement
par Access (Champ1, Champ2, etc.). Il en va de mme pour les
types des champs (texte, numrique, etc.). Il est donc, dans ce cas,
ncessaire de reprendre la dnition de ces paramtres par la
suite.
Le mode Cration est le mode le plus frquemment employ car il est
le plus polyvalent. Cest lui que vous aurez recours dans la majorit
des cas. Il vous permet de dnir lintgralit de la structure de la
table, dajouter, de supprimer ou de personnaliser les champs quelle
renferme.
Le tableau ci-aprs montre la structure de la table crer :
Tableau 1.8 : Structure de la table Disques
Champ Type de donnes Description
nodisque NumroAuto Numro du disque
titre Texte Titre du disque
datesortie Date/Heure Date de sortie du disque
theme Texte Thme musical du disque (blues, classique, jazz, mtal, pop,
rap, rock, rythm and blues, varit, soul)
type Texte Type du disque (CD-ROM, DVD, vinyle)
prix Montaire Prix du disque
Procdez ainsi :
1 Crez une nouvelle base de donnes vide, par longlet Fichier puis
Nouveau/Base de donnes vide/Crer. Enregistrez-la sous le nom
Gestion des disques.accdb par Fichier/Enregistrer la base de donnes
sous, aprs avoir accept la fermeture des objets de la base,
propose dans la bote de dialogue Microsoft Access qui apparat.
Figure 1.59 : La conrmation de la fermeture des objets de la base
58 1. Concepts et manipulations de base
Avertissement de scurit
Access peut afficher un message davertissement de scurit, indiquant
que du contenu actif a t dsactiv, an de prvenir dventuels risques
potentiels lis aux virus, lorsque la base de donnes renferme du code VBA
notamment. Si un tel message est affich, cliquez sur le bouton Activer le
contenu, propos droite du message de scurit.
2 Cliquez sur longlet Crer puis sur le bouton Cration de table du
groupe Tables, prsent dans le Ruban.
Longlet Table1 apparat en mode Cration.
Vous allez utiliser autant de lignes que vous devez crer de champs.
La dnition dun champ est effectue par :
j la saisie de son nom dans la premire colonne ;
j la dnition de son type de donnes dans la deuxime colonne ;
Figure 1.60 : Lavertissement de scurit
Figure 1.61 : Le groupe Tables
Figure 1.62 : Longlet de cration de la structure de la table
59 1.8. Crer une table
j la saisie dune description, facultative mais utile lorsque de nom-
breux champs sont manipuls, dans la troisime colonne ;
j la personnalisation ventuelle de ses proprits dans la partie
infrieure de la fentre.
La premire ligne du tableau prcdent, qui dcrit le numro unique
utilis pour identier un disque dans la table des disques, vous
servira dexemple dillustration de la cration dun champ.
3 Saisissez le nom du premier champ dans la premire cellule de la
colonne Nom du champ, par exemple nodisque.
Rgles respecter pour les noms des champs
Chaque nom doit tre unique dans une table (deux champs ne peuvent
porter le mme nom).
Bien que les espaces et les accents soient autoriss, il est recommand de
ne pas y avoir recours. Les noms de champs seront en effet peut-tre
utiliss ultrieurement dans du code, crit dans un langage de program-
mation, voire avec dautres tables de caractres, dans dautres langues. Il
sera alors beaucoup plus facile dutiliser des noms de champs nemployant
ni caractres spciques la langue franaise, ni espaces. Si la consonance
et lorthographe des noms vous paraissent inadquates pour une prsen-
tation des utilisateurs de la base, nayez aucune inquitude : les noms des
champs ne seront pas vus par les utilisateurs dans vos applications car
vous pouvez les remplacer par les libells de votre choix dans les formu-
laires et dans les tats.
Dans cet exemple, vous devez disposer dun identiant unique pour
chaque disque. An dviter les risques de saisies de doublons, vous
utiliserez un type de donnes gr automatiquement par Access et
ddi cet emploi : le type NumroAuto.
Par dfaut, le type de donnes propos est Texte.
4 Choisissez le type de donnes du champ dans la deuxime co-
lonne en droulant la liste Type de donnes et en slectionnant
NumroAuto.
Figure 1.63 : Longlet de cration de la structure de la table
60 1. Concepts et manipulations de base
Le type de donnes NumroAuto
Vous aurez recours ce type de donnes trs frquemment pour gnrer
automatiquement un numro unique dans un champ (le numro est incr-
ment chaque fois quun nouvel enregistrement est ajout dans la table).
Lunicit des numros gnrs et lincrmentation automatique du numro
font du type de donnes NumroAuto une solution idale pour la cration des
cls primaires dans une table (lutilisation des cls primaires est dcrite plus
loin dans cet ouvrage).
Les types de donnes
Le choix du type de donnes est important car Access ne ralisera pas les
mmes traitements dun type de donnes un autre. Un champ de type texte
pourra, par exemple, tre converti en majuscules alors quun champ de type
numrique pourra tre additionn un autre.
La liste Type de donnes propose un nombre important dlments,
correspondant des types de donnes diffrents auxquels vous
pouvez avoir recours, en fonction des donnes que vous souhaitez
enregistrer dans le champ. Le tableau ci-aprs dcrit ces types de
donnes :
Tableau 1.9 : Les types de donnes dun champ
Type de donnes Dfinition
Texte Ce type de champ est utilis pour stocker des chanes de caractres
ou des combinaisons de caractres et de chiffres. Il sagit du type de
champ le plus couramment employ, pour enregistrer des informations
telles que des noms ou des prnoms de personnes. Les champs de
type Texte ne permettent pas les calculs (si un montant hors taxe y est
saisi, il ne sera pas possible dutiliser sa valeur pour dterminer le
montant toutes taxes comprises par exemple). Ce type de champ auto-
rise jusqu 255 caractres (cette valeur maximale peut tre rduite).
Figure 1.64 : Le choix du type de donnes du champ
61 1.8. Crer une table
Tableau 1.9 : Les types de donnes dun champ
Type de donnes Dfinition
Mmo Ce type de champ, qui autorise la saisie dun nombre de caractres
allant jusqu 65 535, est idal pour lenregistrement de grandes cha-
nes de caractres. Les champs Mmo se prsentent comme de peti-
tes zones de texte dans lesquelles les retours la ligne sont possibles.
Ils sont parfaitement adapts lenregistrement de commentaires li-
bres.
Numrique Ce type de champ est utilis pour lenregistrement des donnes num-
riques, sur lesquelles des calculs peuvent tre effectus (pour les cal-
culs montaires, prfrez-leur le type Montaire, ddi cet usage).
Date/Heure Ce type de champ est adapt la saisie des dates et des heures.
Montaire Ce type de champ doit tre employ pour stocker des valeurs montai-
res. Il empche larrondissement au chiffre suprieur qui peut avoir
lieu lorsque des calculs sont effectus.
NumroAuto Ce type de champ gnre un numro unique, incrment automatique-
ment. Les champs de type NumroAuto sont trs souvent employs
pour constituer des champs renfermant des cls primaires dans les
tables.
Oui/Non Ce type de champ est utilis pour stocker des valeurs boolennes
comme oui/non ou encore vrai/faux.
Objet OLE Ce type de champ est utilis pour stocker des objets OLE tels que des
documents Word ou des feuilles de calcul Excel, des images, ou en-
core des sons.
Lien hypertexte Ce type de champ est utilis pour stocker des liens hypertextes poin-
tant vers dautres applications ou des pages Internet.
Pice jointe Ce type de champ permet de stocker des chiers tels que des photos,
des chiers Office, ainsi que tous les chiers pouvant tre enregistrs
au format binaire.
Calcul Ce nouveau type de champ permet dafficher une valeur calcule
partir dautres donnes de la mme table.
Assistant Liste de
choix
Il ne sagit pas proprement parler dun type de champ. Cette option,
propose sur la liste Type de donnes, lance un Assistant permettant
la cration facile dune fonctionnalit qui propose une liste de valeurs
ou qui rcupre une valeur dans une autre table.
Fonctionnement de la numrotation automatique
Lors de la saisie, Access gre automatiquement lincrmentation des
champs de type NumroAuto, de faon irrversible. Si vous supprimez un
enregistrement dans la table ou si vous interrompez la saisie de lenregistre-
ment en cours avec la touche [chap], le numro qui avait t utilis dans cet
enregistrement ne le sera plus jamais.
Si une table contient dix enregistrements et que vous supprimiez le dernier, qui
porte le numro automatique 10, le nouvel enregistrement ajout portera le
numro 11. Vous passerez donc de lenregistrement 9 lenregistrement 11.
62 1. Concepts et manipulations de base
Le numro 10 ne sera plus jamais utilis par Access. Ce principe assure
lunicit du numro qui vous sera fort utile lorsque vous tablirez des rela-
tions entre les tables.
Bien que lutilisation de la zone Description soit facultative, il est
recommand de toujours la remplir. En effet, une table bien com-
mente est beaucoup plus facile utiliser, et le contenu de cette zone
apparat dans la barre dtat, lors de la saisie des informations dans
le champ.
5 Saisissez la description du champ dans la troisime colonne, par
exemple Numro du disque.
La taille maximale de la zone Description
La taille de la zone Description est limite 255 caractres.
6 Utilisez cette mme mthode pour dnir chaque champ de la
table.
Figure 1.65 : La saisie de la description du champ
Figure 1.66 : La structure de la table aprs dnition des champs
63 1.8. Crer une table
Les proprits des champs peuvent tre personnalises. Les opra-
tions qui sont effectues dans les zones contenues sous les deux
onglets apparaissant en bas de longlet de la table seront dcrites
plus loin dans cet ouvrage.
Fermer et enregistrer une table
La structure de la table a maintenant t dnie en mode Cration.
Pour que votre travail soit mmoris par Access, vous allez fermer et
enregistrer la table.
1 Pour fermer longlet Table1, cliquez sur le bouton Fermer, symbo-
lis par une croix et positionn en haut et droite de la zone
affichant longlet (ou utilisez la combinaison de touches [Ctrl]+[F4]).
La bote de dialogue Microsoft Office Access saffiche, vous invitant
enregistrer le chier de la base de donnes.
2 Cliquez sur le bouton Oui de la bote de dialogue.
3 Dans la bote de dialogue Enregistrer sous, dans la zone Nom de la
table, remplacez Table1 par votre propre nom, par exemple, ou
entrez le nom Disques, puis cliquez sur le bouton OK.
Si aucun champ de type cl primaire na t cr dans la structure de
la table, une bote de dialogue apparat, vous avertissant quaucune
cl primaire na t dnie et vous demandant si vous souhaitez en
crer une maintenant. Vous rpondrez par laffirmative cette ques-
tion dans la plupart des cas.
4 Dans cet exemple, choisissez de rpondre Non.
Limportance de la cl primaire
Cest un lment trs important. Sans elle, il devient impossible de dnir des
relations utilisant lintgrit rfrentielle entre les tables. Sauf cas exceptionnel,
vous devrez toujours crer une cl primaire (cest pourquoi Access affiche ce
message). Vous verrez plus loin quil existe plusieurs mthodes pour cela. Aucune
cl primaire nest cre dans cet exemple car le sujet trait ne limpose pas encore
(mais une cl primaire sera bientt ajoute la table).
Enregistrer nouveau la table
Les oprations dcrites dans ce qui prcde supposent que la table est
enregistre pour la premire fois. Dans le cas contraire, pour enregistrer la
nouvelle version de la table avec le mme nom, utilisez la combinaison de
touches [Ctrl]+[S] ou le bouton Enregistrer de la barre doutils Accs rapide ou
64 1. Concepts et manipulations de base
encore cliquez sur longlet Fichier puis sur Enregistrer dans le menu qui
apparat.
1.9. Autres mthodes pour crer
des tables
Bien que le mode Cration soit le plus frquemment utilis pour
crer la structure des tables, Access 2010 dispose dautres modes
assurant cette fonction. Ils sont dcrits dans ce qui suit.
Crer une table en entrant des donnes
Cette mthode permettant de crer une table est le mode Feuille de
donnes. Il nest ici pas ncessaire dexcuter ltape de cration de
la structure de la table. tonnant, puisque lon sait quil nest pas
possible de saisir des donnes dans une table dont la structure na
pas t dnie. En ralit, Access attribue des noms de champs par
dfaut aux colonnes de la table (Champ1, Champ2, etc.). Les types de
champs sont galement dcids par Access en fonction des premi-
res valeurs saisies (la saisie de la chane de caractres Durand, par
exemple, dclenche automatiquement lemploi du type Texte, alors
que la valeur 832 entrane, elle, la cration dun champ de type
Numrique). Ce mode offre lavantage de permettre la saisie imm-
diate dinformations dans une table qui na pas encore t cre,
mais il vous faudra de toute faon renommer vos champs ( moins
que vous ne souhaitiez travailler avec des noms de champs aussi peu
signicatifs que Champx). De plus, ce mode incite la saisie "tte
baisse" des informations, sans grande rexion sur la structure des
tables. Or, vous savez maintenant quil est prfrable de rchir
posment cette structure. Retenez que ce mode est utile lorsque
des informations appartenant toutes un mme sujet (donc faisant
lobjet dune seule table) doivent tre enregistres rapidement.
Le tableau ci-aprs montre les donnes du sujet qui pourra ici servir
dexemple : les informations relatives aux maisons dditions des
disques.
Tableau 1.10 : Exemple de donnes du sujet des maisons ddition de disques
noediteur nom adresse cp ville
1 BGB 35, boulevard Charlemagne 75019 Paris
65 1.9. Autres mthodes pour crer des tables
Tableau 1.10 : Exemple de donnes du sujet des maisons ddition de disques
noediteur nom adresse cp ville
2 Le papillon indomptable 137, rue des Ponts 69000 Lyon
3 La puce lectrique 1 ter, rue Marguerite 34000 Bordeaux
4 Dcibels 8, place de la Victoire 75010 Paris
La table correspondante aura donc la structure suivante :
Tableau 1.11 : Structure de la table Maisons ddition de disques correspondant au sujet
Nom de champ Type de donnes Description
noediteur NumroAuto Numro de lditeur
nom Texte Nom de lditeur
adresse Texte Adresse de lditeur
cp Texte Code postal de lditeur
ville Texte Ville de lditeur
Vous allez nouveau utiliser la base de donnes Gestion des disque-
s.accdb.
1 Assurez-vous que la base est ouverte.
2 Cliquez sur longlet Crer puis sur Table du groupe Tables,
prsent dans le Ruban.
La table Table1 est affiche en mode Feuille de donnes, initialement
compose des colonnes N et Ajouter un nouveau champ.
3 Saisissez dans la premire cellule de la colonne Ajouter un nou-
veau champ la donne BGB. Utilisez les touches [] ou [] pour
passer la colonne suivante.
La colonne prend le nom Champ1 aprs validation de la saisie de la
premire donne dans la colonne.
Figure 1.67 : La nouvelle table, sa cration,
en mode Feuille de donnes
Figure 1.68 : Access affecte un nom
gnrique au champ
66 1. Concepts et manipulations de base
Cration de la cl primaire
Vous serez peut-tre surpris de constater que le descriptif du mode op-
ratoire qui suit ne commence pas par la saisie dune premire colonne
(actuellement nomme N et qui sera renomme terme noediteur) corres-
pondant au premier champ qui constitue la cl primaire utilise dans la table.
En effet, celle-ci est gnre automatiquement par Access 2010 lors de la
saisie des donnes.
Les champs manquants vont maintenant tre crs, aprs chaque
validation des donnes ajoutes dans la colonne Ajouter un nouveau
champ, qui est dplace vers la droite chaque ajout dune nouvelle
colonne.
4 Comme vous lavez fait dans la colonne Champ1, saisissez dans la
troisime colonne la donne 35, boulevard Charlemagne. Saisissez
de mme dans la colonne suivante la donne 75019. Saisissez la
donne Paris dans la dernire colonne qui constituera la table.
Les champs Champ2, Champ3 et Champ4 ont t crs automatique-
ment aprs validation des donnes dans la colonne Ajouter un nou-
veau champ.
5 Vous pouvez de mme ajouter quelques enregistrements compl-
mentaires (correspondant aux lignes du tableau dcrivant les don-
nes du sujet).
Les noms des en-ttes de colonnes (Champ1, Champ2, Champ3,
Champ4) ne sont pas signicatifs. Il est prfrable de les renommer.
6 Cliquez du bouton droit sur le nom de la colonne, Champ1. Choi-
sissez Renommer le champ dans le menu contextuel qui apparat
(voir Figure 1.70).
Le nom de la colonne est affich en vido inverse et saligne
gauche dans sa zone.
7 Saisissez nom au lieu de Champ1. Renommez de la mme manire
les trois autres colonnes, avec les noms respectifs adresse, cp et
ville (voir Figure 1.71).
Figure 1.69 : La saisie des donnes de la premire ligne de la table Maisons ddition de disques en
mode Feuille de donnes
67 1.9. Autres mthodes pour crer des tables
Pour tudier la structure de la table, il est ncessaire de passer en
mode Cration.
8 Dans le Ruban, cliquez sur longlet Accueil, sur Affichage et sur
Mode Cration.
Access vous propose denregistrer la table au moyen de la bote de
dialogue Enregistrer sous.
9 Saisissez le nom Maisons ddition de disques dans la zone Nom de
la table de la bote de dialogue.
Figure 1.70 : La colonne Champ1 va tre
renomme
Figure 1.71 : Les nouveaux en-ttes de colonnes de la table des maisons de disques
Figure 1.72 : Lactivation du mode Cration
68 1. Concepts et manipulations de base
Access affiche maintenant la structure de la table. Les noms des
colonnes prcdemment renommes apparaissent dsormais
comme des noms de champs. Les types de donnes des champs ont
t dtermins automatiquement par Access selon les donnes sai-
sies. Remarquez la cl primaire sur la premire ligne. Elle est de type
NumroAuto et porte le nomN (vous pouvez ventuellement renom-
mer ce champ en noediteur, si vous souhaitez rester dle la
dnition exacte du sujet).
10 Vriez la structure de la table gnre automatiquement par
Access et corrigez ventuellement le type des champs, notam-
ment le champ cp qui doit tre de type Texte pour pouvoir recevoir
des donnes telles que 05000 sans que le premier caractre, non
signicatif dans un champ numrique, soit supprim. Fermez la
fentre du mode Cration en cliquant sur son bouton Fermer, situ
en haut et droite.
Figure 1.73 : La saisie du nomde la table, lors de son
enregistrement
Figure 1.74 : La structure de la table Maisons ddition de disques
69 1.9. Autres mthodes pour crer des tables
Crer une table en important des donnes
Cette mthode consiste crer la structure dune table en la mod-
lisant depuis une table existante et enregistre dans une autre base
de donnes. Lopration propose diffrentes options dimportation :
il vous est ainsi possible de choisir dimporter ou non les donnes de
la table modle (dans la ngative, seule la structure de la table est
copie).
Les diffrents formats dimportation
Access 2010 permet dimporter une grande quantit de formats de chiers
externes : Access, Excel, liste PowerPoint, chiers texte, XML, ODBC, HTML,
Outlook, dBase, Paradox et Lotus.
Le tableau ci-aprs montre la structure de la table crer, modlise
sur le sujet des artistes :
Tableau 1.12 : Structure de la table Artistes
Nom de champ Type de donnes Description
noartiste NumroAuto Numro de lartiste
nom Texte Nom de lartiste
prenom Texte Prnom de lartiste
datenaissance Date/Heure Date de naissance de lartiste
remarque Mmo Commentaire
Vous allez nouveau utiliser la base de donnes Gestion des disque-
s.accdb. Lopration qui va tre ralise ici consiste importer la
structure de la table artistes de la base de donnes Gestion des
vnements.mdb, cre dans une version antrieure dAccess.
1 Assurez-vous que la base de donnes Gestion des disques.accdb
est ouverte.
2 Dans le Ruban, cliquez sur longlet Donnes externes puis sur
Access, dans le groupe Importer et lier.
Figure 1.75 : Le choix du type de
chier import
70 1. Concepts et manipulations de base
La fentre Donnes externes Base de donnes Access souvre. Elle
affiche un Assistant dont le rle est de vous guider lors de limpor-
tation et dont les options varient en fonction du type de chier
import.
3 Dans la fentre, droite de la zone Nom chier, cliquez sur le
bouton Parcourir. Choisissez la base de donnes importer dans
larborescence de votre poste de travail qui apparat. Cliquez sur le
bouton Ouvrir.
4 De retour dans la fentre Donnes externes Base de donnes
Access, choisissez loption Importer des tables, des requtes, des
formulaires, des tats, des macros et des modules dans la base de
donnes active puis cliquez sur le bouton OK.
Source de donnes lie
La seconde option propose dans la fentre Donnes externes Base de
donnes Access se nomme Lier la source de donnes en crant une table
attache. Lorsque cette option est choisie, les modications apportes aux
donnes dans la table lie (ici en cours de cration) sont reportes dans la
source de donnes dorigine, et rciproquement.
La bote de dialogue Importer des objets apparat.
Figure 1.76 : La fentre Donnes externes Base de donnes Access
71 1.9. Autres mthodes pour crer des tables
5 Slectionnez longlet Table dans la bote de dialogue, puis la ou les
tables importer (ici la table Artistes). Cliquez sur le bouton OK.
Importer la structure seule
Par dfaut, Access 2010 importe simultanment la structure et les donnes
de la table modle. Si vous dsirez importer uniquement la structure de la table,
cliquez sur le bouton Options, prsent dans la bote de dialogue Importer des
objets. Cochez loption Dnition uniquement sous la rubrique Importer les
tables qui apparat dans la partie infrieure de la bote de dialogue.
Figure 1.77 : La bote de dialogue Importer des objets
Figure 1.78 : Loption dimportation de la structure de la table uniquement
72 1. Concepts et manipulations de base
La dernire tape de lAssistant dimportation vous propose denre-
gistrer les tapes dimportation an de vous permettre de rpter
ultrieurement limportation sans avoir rednir les paramtres
prcdemment dcrits.
6 Cochez dans ce cas la case Enregistrer les tapes dimportation.
Enregistrer les paramtres dimportation
Si vous cochez la case Enregistrer les tapes dimportation, lAssistant
ouvre une nouvelle page dans la fentre Donnes externes Base de
donnes Access. Il vous est alors possible de nommer la squence denregis-
trement de paramtres qui vient dtre effectue et de proposer une descrip-
tion de celle-ci. La tche pourra alors ventuellement vous tre rappele par
Outlook ou lance depuis le Ruban par le bouton Importations enregistres
du groupe Importer et lier de longlet Donnes externes.
7 Cliquez sur le bouton Fermer.
La table importe (Artistes) apparat maintenant dans la liste des
tables dans le Volet de navigation.
Figure 1.79 : Lenregistrement des paramtres de limportation
73 1.9. Autres mthodes pour crer des tables
1.10. Cas pratiques
Vous allez maintenant aborder la pratique. Dans cette dernire sec-
tion, vous mettrez en uvre les notions thoriques que vous venez
de dcouvrir.
Vous commencerez, dans cette premire tude de cas pratiques, par
btir quelques tables que vous continuerez utiliser au l des cha-
pitres de cet ouvrage, an de construire une application complte de
gestion et de facturation de livres. Plusieurs mthodes sont utilises
pour la cration des tables, an dillustrer la partie thorique qui
prcde.
Analyser rapidement les donnes
Vous voici promu au poste danalyste. Votre mission est de dtermi-
ner les besoins dune maison ddition en matire de gestion de
donnes.
An de conserver ce livre sa cohrence pdagogique, sans laquelle
le lecteur ne pourrait assimiler les notions exposes, certaines par-
ties de lanalyse sont pures. Ainsi, cest dlibrment que nous
avons choisi de ne pas dier toutes les tables, mais seulement
celles dont vous avez besoin ici. Les autres seront cres au l de ce
livre et en fonction des cas de gure.
Voici la liste simplie des informations enregistrer :
j le titre de luvre ;
j le nom de lauteur ;
j le prnom de lauteur ;
j ladresse de courriel de lauteur ;
j lanne du copyright de luvre ;
j le code ISBN du livre ;
j la collection du livre ;
j le type du livre ;
j la date de sortie du livre ;
j le prix du livre ;
j les remarques sur le livre ;
j le nom du contact (un contact est un client potentiel) ;
j le prnom du contact ;
j le titre du contact (Monsieur, Madame, Mademoiselle) ;
74 1. Concepts et manipulations de base
j la socit du contact ;
j ladresse du contact ;
j le code postal du contact ;
j la ville du contact ;
j le dpartement du contact ;
j le pays du contact ;
j le numro de tlphone du contact ;
j le numro de tlcopie du contact ;
j ladresse de courriel du contact ;
j le site Internet du contact ;
j les commentaires relatifs au contact.
La liste des sujets est la suivante :
Tableau 1.13 : La liste des sujets
Sujet Numro dindex du sujet
Livres 1
Auteurs 2
Contacts 3
Tableau 1.14 : Les informations enregistrer et leurs sujets correspondants
Donnes stocker Sujet auquel la donne est affecte
Titre de luvre 1
Nom de lauteur 2
Prnom de lauteur 2
Adresse de courriel de lauteur 2
Anne du copyright de luvre 1
Code ISBN du livre 1
Collection du livre 1
Type du livre 1
Date de sortie du livre 1
Prix du livre 1
Remarques sur le livre 1
Nom du contact 3
Prnom du contact 3
Titre du contact 3
Socit du contact 3
75 1.10. Cas pratiques
Tableau 1.14 : Les informations enregistrer et leurs sujets correspondants
Donnes stocker Sujet auquel la donne est affecte
Adresse du contact 3
Code postal du contact 3
Ville du contact 3
Dpartement du contact 3
Pays du contact 3
Numro de tlphone du contact 3
Numro de tlcopie du contact 3
Adresse de courriel du contact 3
Site Internet du contact 3
Commentaires relatifs au contact 3
Crer la base de donnes initiale
Noubliez pas quune table ne peut tre cre si elle nappartient pas
une base de donnes. Commencez donc par crer la base. Vous la
nommerez Livres.accdb.
1 Lancez Microsoft Access 2010 par le menu Dmarrer/Tous les
programmes/Microsoft Office/Microsoft Office Access 2010.
2 Cliquez sur longlet Fichier.
3 Dans le menu qui est affich, cliquez sur Nouveau.
4 Cliquez sur Base de donnes vide, saisissez le nom Livres.accdb
dans la zone Nom de chier (pensez choisir votre dossier de
travail au moyen du bouton Cherchez un emplacement pour votre
base de donnes, plac droite de la zone Nom de chier).
5 Cliquez sur le bouton Crer.
Figure 1.80 : La cration de la
nouvelle base de donnes
76 1. Concepts et manipulations de base
La base de donnes Livres saffiche dans la fentre dAccess avec une
table vide (nomme temporairement Table1) ouverte en mode Feuille
de donnes. Laissez cette table ouverte car elle va tre utilise dans
ce qui suit.
Crer la table Auteurs en entrant des donnes
Vous allez construire cette premire table du cas pratique de ce
chapitre en y entrant directement des donnes en mode Feuille de
donnes.
Voici la structure de la table crer (il sagit de la table des auteurs) :
Tableau 1.15 : Structure de la table Auteurs
Nom de champ Type de donnes Description
noauteur NumroAuto Numro de lauteur
nom Texte Nom de lauteur
prenom Texte Prnom de lauteur
courriel Lien hypertexte Adresse de courriel de lauteur
1 Assurez-vous que la table cre prcdemment est toujours affi-
che en mode Feuille de donnes.
Si la table a t ferme sans tre enregistre
Si la table vide, gnre automatiquement
par Access la cration de la base de donnes, a
t ferme, crez une nouvelle table en cliquant
sur longlet Crer puis sur longlet Table du
groupe Tables, prsent dans le Ruban.
2 Saisissez un nom de famille dans la premire cellule de la colonne
Ajouter un nouveau champ. Utilisez la touche [] pour passer la
colonne suivante. Saisissez-y un prnom. Utilisez nouveau la
touche [] et saisissez une adresse lectronique dans la quatrime
colonne qui prendra le nom Champ3 lorsque vous passerez la
ligne suivante pour y saisir les coordonnes du deuxime auteur.
Figure 1.81 : Crez la table
par le mode Feuille de
donnes
Figure 1.82 : Saisissez les donnes directement dans la feuille de donnes, sans avoir dni la
structure de la table
77 1.10. Cas pratiques
3 Pour renommer len-tte de la premire colonne N (cest--dire
changer le nom de ce champ), cliquez du bouton droit sur le nom
de la colonne. Choisissez Renommer le champ dans le menu
contextuel qui apparat.
Le nom de la colonne est affich en vido inverse et saligne
gauche dans sa zone.
4 Saisissez noauteur au lieu de N. Renommez de la mme manire
les trois autres colonnes, avec les noms nom en remplacement de
Champ1, prenom en remplacement de Champ2 et courriel en rem-
placement de Champ3.
5 Pour tudier la structure de la table, passez en mode Cration en
cliquant sur longlet Accueil dans le Ruban, puis sur Affichage et
enn sur Mode Cration. Lorsque Access vous demande denregis-
trer la table, saisissez Auteurs, puis cliquez sur le bouton OK de la
bote de dialogue Enregistrer sous.
La structure de la table est affiche en mode Cration.
6 Saisissez la description de chaque champ et remplacez galement
le type de donnes Texte du champ courriel par le type de donnes
Lien hypertexte. En effet, le type du champ gnr automatique-
ment par Access ne correspond pas celui qui vous est ncessaire
pour saisir des adresses lectroniques.
Figure 1.83 : Modiez les libells des en-ttes des autres colonnes
Figure 1.84 : La structure de la table Auteurs est modie
78 1. Concepts et manipulations de base
7 Fermez la fentre de cration de la structure de la table en cliquant
sur le bouton Fermer (symbolis par une croix droite du nom de
longlet de table) et acceptez lenregistrement des modications
en cliquant sur le bouton Oui de la bote de dialogue qui apparat.
La table Auteurs est le premier objet de la base affich sur la liste des
tables du Volet de Navigation.
Crer les tables Contacts et Livres en mode
Cration
Vous allez ici crer la table des contacts dans le mode Cration. Vous
trouverez le nom de chaque champ, son type de donnes et sa
description dans le tableau suivant :
Tableau 1.16 : Structure de la table Contacts
Nom de champ Type de donnes Description
nocontact NumroAuto Numro du contact
nom Texte Nom du contact
prenom Texte Prnom du contact
titre Texte Titre du contact
societe Texte Nom de la socit du contact
adresse Texte Adresse du contact
cp Texte Code postal du contact
ville Texte Ville du contact
departement Texte Dpartement du contact
pays Texte Pays du contact
telephone Texte Numro de tlphone du contact
telecopie Texte Numro de tlcopie du contact
courriel Lien hypertexte Adresse de courriel du contact
internet Lien hypertexte URL du site Internet du contact
commentaire Mmo Commentaires divers
La fentre de la base de donnes Livres est affiche.
Figure 1.85 : Le premier objet que vous venez
de crer apparat maintenant dans la liste
des tables
79 1.10. Cas pratiques
1 Cliquez sur longlet Crer puis sur Cration de table du groupe
Tables, prsent dans le Ruban.
Longlet Table1 apparat en mode Cration. Vous allez dnir le pre-
mier champ, nocontact, dans la premire ligne du tableau.
2 Dans la colonne Nom du champ, saisissez nocontact.
3 Dans la colonne Type de donnes, choisissez NumroAuto dans la
liste.
4 Dans la zone Description, saisissez Numro du contact.
5 De la mme faon, dnissez les autres champs correspondant au
sujet des contacts.
Figure 1.86 : Vous allez gnrer la structure de la table en mode Cration
Figure 1.87 : Choisissez le type de donnes
NumroAuto
Figure 1.88 : Vous venez de dnir
le premier champ, nocontact, dans
la structure de la table
Figure 1.89 : La structure complte de
la table, aprs que vous ayez dni
tous les champs
80 1. Concepts et manipulations de base
Le choix des types de donnes
Vous tes peut-tre surpris de voir que certains champs, comme celui qui
contient le code postal, sont de type texte et non de type numrique. Cest
une faon simple de traiter le problme du zro non signicatif : si vous
saisissez par exemple 05000 comme code postal dans un champ de type
texte, le premier zro sera conserv car il sera considr comme un caractre,
alors quil sera supprim par Access dans un champ de type numrique
puisque, se trouvant en dbut de la valeur, il ne sera pas considr comme
signicatif.
6 Fermez Table1 en cliquant sur le bouton Fermer du mode Cration.
Dans la bote de dialogue Microsoft Office Access qui saffiche,
cliquez sur Oui. Dans la bote de dialogue Enregistrer sous, dans la
zone Nom de la table, tapez Contacts.
Une bote de dialogue apparat, vous avertissant quaucune cl pri-
maire na t dnie et vous demandant si vous souhaitez en crer
une maintenant.
7 Cliquez sur le bouton Non.
La table Contacts est le deuxime objet affich dans le Volet de
navigation.
Vous allez galement utiliser le mode Cration pour crer la table des
livres.
Voici la liste des champs quil vous faut dnir :
Tableau 1.17 : Structure de la table Livres
Nom de champ Type de donnes Description
nolivre NumroAuto Numro du livre
titre Texte Titre de luvre
anneecopyright Numrique Anne du copyright
isbn Texte Code ISBN
collection Texte Collection (Poche, Superpoche, Titan, Je me lance, Tout
de suite)
Figure 1.90 : Vous refusez la cration de la cl primaire (elle sera effectue plus tard)
81 1.10. Cas pratiques
Tableau 1.17 : Structure de la table Livres
Nom de champ Type de donnes Description
type Texte Type (Bureautique, Programmation, Loisirs)
datesortie Date/Heure Date de parution du livre
prixHT Montaire Prix de vente hors taxes du livre
remarque Mmo Commentaire libre sur le livre
8 En utilisant le mme mode opratoire que celui employ pour la
table des contacts, crez la table des livres en mode Cration en
modlisant sa structure sur le tableau qui prcde.
Vous allez maintenant dnir une cl primaire sur nolivre, le premier
champ de la table, de type NumroAuto, la fermeture et lenregis-
trement de la table.
9 Lorsque vous cliquez sur le bouton Fermer du mode Cration, la
bote de dialogue Microsoft Office Access est affiche. Rpondez
par laffirmative la question vous demandant si vous souhaitez
enregistrer les modications apportes la structure de la table.
10 Dans la bote de dialogue Enregistrer sous, saisissez Livres dans la
zone Nom de la table puis cliquez sur le bouton OK.
11 Access affiche nouveau la bote de dialogue Microsoft Office
Access et vous demande si vous souhaitez dnir une cl primaire.
Acceptez en cliquant sur le bouton Oui (la cl est alors cre sur le
champ nolivre, de type NumroAuto).
La table Livres est le troisime objet affich dans le Volet de naviga-
tion.
Vous allez, pour nir, ajouter une description chacune des tables.
12 Dans le Volet de navigation, cliquez du bouton droit. Choisissez
Afficher par/Dtails dans le menu contextuel qui apparat.
Aucune description de table nest encore saisie.
Figure 1.91 : Vous crez la table Livres en mode Cration
82 1. Concepts et manipulations de base
13 Cliquez du bouton droit sur la table Auteurs dans le Volet de
navigation. Choisissez Proprits de la table dans le menu contex-
tuel qui apparat.
14 Saisissez la description Table des auteurs dans la zone Description
de la bote de dialogue Proprits de Auteurs qui apparat. Cliquez
sur le bouton OK de la bote de dialogue.
15 Rptez lopration an de saisir une description similaire pour
chacune des deux autres tables. Saisissez, par exemple, Table des
contacts (clients) comme description de la table des contacts et
Table des Livres comme description de la table des livres.
Les descriptions des tables apparaissent dsormais, lorsque laffi-
chage est en mode Dtails, dans la fentre de la base de donnes.
Tlchargement de la base de donnes
Vous retrouverez les bases de donnes Gestion des disques.accdb, Ges-
tion des vnements.mdb et Livres.accdb utilises dans ce chapitre sur le site
de Micro Application (www.microapp.com) dans le dossier Chapitre01.
Figure 1.92 : La saisie de la description
de la table
Figure 1.93 : Les descriptions sont dsormais affiches
ct de leurs tables respectives
83 1.10. Cas pratiques
C
H
A
P
I
T
R
E
2
MANIPULER
LESDONNES
Le mode Feuille de donnes .................................................................................. 87
Rechercher des donnes dans une table ....................................................... 114
Remplacer des donnes dans une table ......................................................... 118
Trier et ltrer les donnes dune table ............................................................. 120
Cas pratique ................................................................................................................. 139
85
La saisie des donnes et la recherche dinformations spciques
dans la base de donnes pourraient se rvler de fastidieuses op-
rations sans les nombreux outils ddis ces traitements proposs
par Access 2010.
Ajouts, suppressions, modications, dplacements, mais aussi re-
cherches, remplacements et tris sont quelques exemples des sujets
abords dans ce chapitre.
2.1. Le mode Feuille de donnes
Il existe plusieurs mthodes pour accder aux donnes dune table.
Une application nalise utilise presque toujours les formulaires
comme mthode daccs, mais, pendant le dveloppement et les
premiers tests, cest le mode Feuille de donnes qui est le plus
utilis. Il permet laffichage dun grand nombre denregistrements de
la table dans un tableau dont laspect est proche de celui dune feuille
de calcul dExcel. Les enregistrements y sont reprsents en lignes et
les champs en colonnes.
Ouvrir une table
Pour afficher une table en mode Feuilles de donnes, utilisez la
mthode suivante.
Une base de donnes ayant t ouverte, double-cliquez sur le nom
de la table ouvrir, dans le Volet de navigation ou cliquez du bouton
droit sur la table dans le Volet de navigation puis choisissez Ouvrir
dans le menu contextuel qui apparat.
Figure 2.1 : Louverture dune table par le
menu contextuel
87 2.1. Le mode Feuille de donnes
La table est ouverte dans la partie droite de la fentre dAccess, en
mode Feuille de donnes.
Basculer du mode Cration au mode Feuille de donnes
Depuis le mode Cration, il est possible de basculer tout moment en
mode Feuille de donnes (an de saisir des donnes dans la table). Cliquez
pour ce faire sur longlet Accueil puis sur Affichage, dans le Ruban.
Si la table a t modie en mode Cration, Access vous demandera de lenre-
gistrer avant de vous permettre de retourner en mode Feuille de donnes.
Pour retourner au mode Cration depuis le mode Feuille de donnes, cliquez
nouveau sur Affichage.
Autre mthode de changement de mode
Une autre mthode soffre vous pour passer dun mode un autre :
utiliser les boutons Mode Feuille de donnes, Mode Tableau crois dynami-
que, Mode Graphique crois dynamique et Mode Cration prsents en bas
et droite de la fentre dAccess 2010, dans la Barre dtat. Les actions des
deuxime et troisime boutons seront explicites plus loin.
Figure 2.2 : La table est ouverte
en mode Feuille de donnes
Figure 2.3 : Le bouton Affichage
Figure 2.4 : Un simple clic sur le groupe Affichage permet de basculer
du mode Feuille de donnes au mode Cration
Figure 2.5 : Les boutons
proposs dans la Barre
dtat
88 2. Manipuler les donnes
Une feuille de donnes est compose :
j de lignes reprsentant les enregistrements ;
j den-ttes de colonnes qui reprsentent les champs dnis par
leurs noms (ou leurs lgendes, si celles-ci ont t dnies) ;
Lgende
La lgende correspond lune des proprits du champ, accessible en
mode Cration par longlet Gnral de la rubrique Proprits du champ (le
recours aux lgendes est dtaill plus loin dans cet ouvrage).
j dune ligne de boutons de dplacements, de recherches et de
ltres, en bas de la fentre du mode Feuille de donnes, permet-
tant la navigation entre les enregistrements ;
j de nombreux boutons du Ruban permettent deffectuer des traite-
ments dans la feuille de donnes. Ces boutons seront dcrits plus
loin dans ce chapitre.
louverture de la feuille de donnes, le pointeur est plac par dfaut
dans le premier champ du premier enregistrement, cest--dire dans
la premire cellule, en haut et gauche de la feuille de donnes.
Lenregistrement en cours est indiqu par une case colore situe
gauche de la ligne concerne, lorsquon clique sur cette ligne. La
ligne correspondant lenregistrement est galement affiche dans
une teinte diffrente de celle des autres lignes et une bordure de
couleur lencadre.
Figure 2.6 : Les composants de la feuille de donnes
89 2.1. Le mode Feuille de donnes
Quitter le mode Feuille de donnes
Pour quitter ce mode, cliquez sur le bouton Fermer, symbolis par une
croix, en haut et droite de la feuille de donnes ou utilisez lune des deux
combinaisons de touches [Ctrl]+[W] ou [Ctrl]+[F4].
Ajouter un enregistrement
Pour ajouter un enregistrement dans une table ouverte en mode
Feuille de donnes, utilisez lune des mthodes suivantes :
j cliquez dans le premier champ vide de la dernire ligne vide puis
saisissez-y des donnes ;
j cliquez dans le Ruban sur longlet Accueil puis sur le bouton
Nouveau dans le groupe de boutons Enregistrements ;
Figure 2.7 : La ligne de la feuille de donnes correspondant lenregistrement en cours est indique
par Access
Figure 2.8 : Un nouvel enregistrement est ajout par simple saisie dans la dernire ligne de la feuille
de donnes
90 2. Manipuler les donnes
j cliquez sur le dernier bouton de dplacement, nomm Nouvel
enregistrement (vide), en bas de la fentre du mode Feuille de
donnes ;
j utilisez la combinaison des touches [Ctrl]+[+] ;
j cliquez sur le bouton Atteindre du groupe Rechercher de longlet
Accueil, puis sur Nouveau.
Pour passer au champ suivant, lors de la saisie, utilisez la touche []
ou la touche [].
Pour passer lenregistrement suivant, arriv en bout de ligne,
utilisez galement la touche [] ou la touche []. Lenregistrement
prsent dans la dernire ligne saisie est alors enregistr automati-
quement lors du passage lenregistrement suivant.
Incrmentation des champs NumroAuto
Si le premier champ de la premire colonne fait appel au type de donnes
NumroAuto, comme cest frquemment le cas lorsque le champ doit renfer-
mer un identiant unique faisant office de cl primaire, aucune saisie nest
attendue par Access de la part de lutilisateur. Commencez donc la saisie au
deuxime champ.
Un champ de type NumroAuto est incrment automatiquement lors de
lajout dun enregistrement. La valeur quil renferme nest pas modiable.
La saisie des champs de type de donnes Date et heure
Access 2010 permet la saisie des dates dans les champs de type Date et
heure par un simple clic sur un calendrier qui apparat lorsquon clique sur
licne accompagnant la zone de saisie du champ slectionn dans la feuille
de donnes.
Figure 2.9 : Le bouton Nouvel enregistrement (vide)
Figure 2.10 : La saisie des dates peut seffectuer depuis un
calendrier
91 2.1. Le mode Feuille de donnes
Modier des donnes
Cliquez dans le champ contenant les donnes que vous voulez mo-
dier, an de placer le curseur lendroit voulu puis effectuez la
saisie des donnes modier au moyen du clavier.
Annulation des modifications dans le champ en cours
Pour annuler des modications effectues dans un champ, alors que ces
modications nont pas encore t valides par un dplacement ou par
lutilisation de la touche [], utilisez la touche [chap].
Gagner du temps lors de la saisie
Lors de lajout ou de la modication des donnes dun champ, il est
possible de reprendre celles qui sont contenues dans le mme champ de
lenregistrement prcdent en utilisant la combinaison des touches [Ctrl]+[']
(apostrophe).
Forcer lenregistrement dun champ
Lajout ou la modication de donnes dans un champ sont effectifs uni-
quement lorsque le point dinsertion est dplac sur un autre enregistrement
ou lorsque la feuille de donnes est ferme. Pour enregistrer les donnes de
lenregistrement en cours de saisie ou de modication sans avoir recours aux
actions qui prcdent, activez le bouton Enregistrer de la zone Enregistre-
ments de longlet Outils de table du Ruban (il nest plus possible alors
dannuler la saisie ou la modication par la touche [chap]).
Le tableau suivant rsume les principaux raccourcis clavier utilisa-
bles lors de la saisie ou de la modication denregistrements dans
une table.
Tableau 2.1 : Principaux raccourcis clavier disponibles lors de la saisie ou de la modifica-
tion denregistrements
Action Touches
Atteindre le champ suivant [] ou []
Atteindre le dbut du champ en cours []
Atteindre la n du champ en cours [Fin]
Atteindre lenregistrement suivant []
Atteindre lenregistrement prcdent []
92 2. Manipuler les donnes
Tableau 2.1 : Principaux raccourcis clavier disponibles lors de la saisie ou de la modifica-
tion denregistrements
Action Touches
Atteindre le premier enregistrement [Ctrl]+[]
Atteindre le dernier enregistrement [Ctrl]+[Fin]
Ajouter un enregistrement [Ctrl]+[+]
Raliser des slections
Comme dans tous les logiciels, les slections sont des oprations
qui, si elles sont faciles raliser, nen sont pas moins importantes.
Slectionner des champs
Les principaux modes opratoires qui vous permettront deffectuer
des slections de champs sont dtaills dans ce qui suit :
j slection partielle des donnes renfermes dans un champ. Placez
le point dinsertion au dbut de la zone slectionner, en mainte-
nant le bouton de la souris enfonc, puis tirez la slection jusqu
la n de la zone slectionner. La slection apparat en vido
inverse, cest--dire en lettres blanches sur fond noir, dans la
plupart des cas ;
j slection dun champ entier. Cliquez sur un bord intrieur du
champ. Au survol de cette zone, le pointeur de la souris prend la
forme dune croix blanche ;
j slection de plusieurs champs. Slectionnez le premier, comme
prcdemment, puis tirez la zone aux champs voisins en mainte-
nant le bouton de la souris enfonc. Le pointeur conserve lappa-
rence dune croix blanche pendant lopration ;
Figure 2.11 : Ici, cest une partie de ladresse qui est
slectionne
Figure 2.12 : Le pointeur forme une croix blanche au survol de la bordure du
champ : il indique ici que le champ renfermant la donne Valrie peut tre
slectionn dun clic
Figure 2.13 : La slection de plusieurs champs
avec la souris
93 2.1. Le mode Feuille de donnes
j slection dune colonne entire, cest--dire de toutes les valeurs
prises par un champ sur lintgralit de la table. Cliquez sur len-
tte (ou slecteur de champ) de la colonne. Le pointeur de la souris
prend la forme dune che noire verticale lorsque la zone den-
tte est survole ;
j slection de plusieurs colonnes mitoyennes. Cliquez sur le nom de
len-tte de la premire colonne, puis tirez la zone slectionne
en maintenant le bouton de la souris enfonc jusqu la dernire
colonne. Le pointeur de la souris prend lapparence dune che
noire dirige vers le bas pendant lopration.
Figure 2.14 : La slection dune colonne entire vient dtre
effectue
Figure 2.15 : La slection de plusieurs colonnes conscutives
94 2. Manipuler les donnes
Slection dun grand nombre de colonnes
Pour slectionner un grand nombre de colonnes conscutives, cliquez sur
len-tte de la premire colonne et maintenez la touche [Maj] enfonce. Utilisez
ventuellement la barre de dlement horizontale pour visualiser des colon-
nes napparaissant pas lcran et cliquez sur la dernire colonne intgrer
dans la slection.
Slectionner des enregistrements
Voici maintenant les principaux modes opratoires qui vous permet-
tront de slectionner des enregistrements.
j Slection dun enregistrement : cest--dire dune ligne. Cliquez en
dbut de ligne sur le slecteur denregistrement (la petite case qui
prcde la ligne). Lors de son survol, le pointeur se transforme en
che noire dirige vers la droite.
Autre mthode de slection dun enregistrement en cours
Pour slectionner la ligne de la cellule active,
cliquez dans le Ruban sur le bouton Slectionner
du groupe Rechercher de longlet Accueil puis
sur Slectionner parmi les commandes affi-
ches.
Figure 2.16 : La slection dune ligne (cest--dire dun enregistrement de la table)
95 2.1. Le mode Feuille de donnes
j Slection de plusieurs enregistrements contigus. Cliquez sur le
slecteur denregistrement du premier enregistrement, maintenez
le bouton de la souris enfonc, puis tendez la zone verticalement
jusquau slecteur du dernier enregistrement inclure dans la
slection.
Slection dun grand nombre de lignes
Cette autre mthode est utile pour slectionner un grand nombre denre-
gistrements conscutifs : cliquez sur le slecteur du premier enregistrement,
maintenez la touche [Maj] enfonce, utilisez ventuellement la barre de dle-
ment verticale pour visualiser des lignes napparaissant pas lcran et
cliquez sur la ligne correspondant au dernier enregistrement intgrer dans
la slection.
j Slection de tous les enregistrements de la table. Cliquez dans
langle suprieur gauche de la feuille de donnes.
Figure 2.17 : La slection de plusieurs enregistrements
Figure 2.18 : La slection de tous les enregistrements de la table
96 2. Manipuler les donnes
Autre mthode de slection de tous les enregistrements
Une autre mthode de slection de tous les
enregistrements de la table consiste cli-
quer dans le Ruban sur le bouton
Slectionner du groupe Rechercher de
longlet Accueil puis sur Slectionner tout,
parmi les commandes alors affiches.
La mthode de slection la plus rapide
Pour slectionner tous les enregistrements de la table ouverte dans la
feuille de donnes, la mthode la plus rapide consiste utiliser la combinai-
son des touches [Ctrl]+[A].
Se dplacer dans les enregistrements au moyen
des boutons de dplacement
Les boutons de dplacement sont regroups dans la barre de navi-
gation, au bas de la fentre de la feuille de donnes (ou des formu-
laires). Ils permettent des dplacements faciles entre les enregistre-
ments de la table.
Ces boutons (et la zone daffichage qui les accompagne) permettent
les oprations suivantes :
j le dplacement sur le premier enregistrement de la table ;
j le dplacement sur lenregistrement prcdent lenregistrement
en cours ;
j laffichage du numro de lenregistrement en cours ;
Figure 2.19 : La barre de
navigation
97 2.1. Le mode Feuille de donnes
j le dplacement sur lenregistrement suivant lenregistrement en
cours ;
j le dplacement sur le dernier enregistrement de la table ;
j la cration dun nouvel enregistrement.
Autre mthode de dplacement parmi les enregistrements
Les oprations dcrites prcdemment peuvent galement tre effectues
depuis le Ruban, en cliquant sur le bouton Atteindre du groupe Rechercher
de longlet Accueil.
Supprimer un enregistrement
Pour supprimer un enregistrement de la table, en mode Feuille de
donnes, utilisez la mthode qui suit.
1 Cliquez dans la ligne de lenregistrement supprimer.
2 Dans le Ruban, cliquez sur longlet Accueil puis sur le groupe
Enregistrements. Cliquez sur le bouton Supprimer.
Vous pouvez galement cliquer du bouton droit sur le slecteur
denregistrement et choisir Supprimer lenregistrement dans le menu
contextuel qui est alors affich.
Access affiche une bote de dialogue dans laquelle il vous est de-
mand de conrmer la suppression de lenregistrement.
Figure 2.20 : Le bouton Atteindre du groupe Rechercher
Figure 2.21 : La suppression dun enregistrement par le menu
contextuel
98 2. Manipuler les donnes
3 Conrmez cette opration en cliquant sur le bouton Oui de la bote
de dialogue Microsoft Office Access.
Suppression rapide dune ligne
Une autre mthode permet de supprimer rapidement une ligne. Slection-
nez cette dernire en cliquant sur son slecteur denregistrement ( gauche
de la ligne), puis appuyez sur la touche [Suppr] de votre clavier.
Suppression de plusieurs lignes conscutives
Plusieurs lignes peuvent tre supprimes en une seule opration : slec-
tionnez le groupe de lignes supprimer au moyen des slecteurs de lignes
placs gauche des lignes, puis appuyez sur la touche [Suppr] du clavier.
Suppression de donnes dans des tables en relation
Vous dcouvrirez, dans les chapitres suivants, que plusieurs tables peu-
vent tre mises en relation et donc devenir dpendantes les unes des autres.
La suppression de donnes dans lune des tables ne doit pas tre effectue
intempestivement, sous peine de briser la cohrence des informations ren-
fermes dans la base de donnes. Lapplication de mthodes de contrle de
lintgrit rfrentielle (suppressions en cascade par exemple) apporte une
solution ce problme.
Dnir la largeur des colonnes et la hauteur
des lignes
La largeur des colonnes et la hauteur des lignes peuvent tre red-
nies dun simple clic entre deux en-ttes (ou entre deux cellules
rserves laffichage du slecteur denregistrement). Maintenez le
bouton de la souris enfonc et augmentez ou rduisez la largeur de la
colonne ou la hauteur de la ligne.
Figure 2.22 : La conrmation
de la suppression de
lenregistrement
99 2.1. Le mode Feuille de donnes
Dfinir exactement la largeur des colonnes et la hauteur des lignes
Il vous est galement possible dexprimer une largeur pour les colonnes
ou une hauteur pour les lignes slectionnes en cliquant sur longlet Accueil
du Ruban puis sur Enregistrements et sur Plus.
Cliquez sur Largeur de colonne ou sur Hauteur de ligne dans le menu qui
apparat (vous obtiendrez le mme rsultat en cliquant du bouton droit sur
len-tte dune colonne ou sur un slecteur denregistrement et en choisissant
respectivement Largeur de colonne ou Hauteur de ligne dans le menu
contextuel qui apparat).
Il ne vous reste qu saisir la largeur que vous souhaitez affecter la colonne
(ou la hauteur la ligne) dans la zone idoine de la bote de dialogue qui est
affiche.
Ajouter un champ la structure dune table
Un champ manquant la structure de la table peut tre ajout lors de
la saisie des donnes dans une table en mode Feuille de donnes.
1 Cliquez du bouton droit sur len-tte de la colonne avant laquelle la
colonne manquante doit tre insre.
2 Dans le menu contextuel qui apparat, choisissez Insrer une co-
lonne.
Access insre une colonne, nomme Champ1, gauche de la co-
lonne dans laquelle se trouvait le point dinsertion.
Figure 2.23 : La saisie de la largeur exacte
de la colonne
Figure 2.24 : Une nouvelle colonne
correspondant un champ a t insre
dans la table
100 2. Manipuler les donnes
Il nest pas conseill de conserver le nom gnrique utilis par
Access comme en-tte de la nouvelle colonne. Pensez renommer
ce champ.
3 Double-cliquez sur le nom de len-tte de la nouvelle colonne,
temporairement appel Champ1. Remplacez-le par un nouveau
nomplus signicatif. Validez lopration au moyen de la touche []
ou en cliquant dans lune des cellules de la zone daffichage des
donnes.
Le nouveau champ est cr.
Modifier le type du champ insr
Si vous souhaitez modier le type du champ qui vient dtre insr et
passer dun type Texte un type Numrique par exemple ou encore saisir sa
description, utilisez le mode Cration de table en utilisant le bouton Affichage
de longlet Accueil du Ruban.
Certaines modications de structures sont dsormais possibles en
mode Feuille de donnes
Vous pouvez utiliser des raccourcis depuis le mode Feuille de don-
nes vers les caractristiques du champ en cours. Il vous est ainsi
possible, par exemple, de modier le type de donnes et le format du
champ, ainsi que dautres proprits telles que lunicit ou lautori-
sation de saisie des valeurs nulles qui seront dcrites plus loin dans
cet ouvrage.
Ces oprations sont envisageables depuis longlet contextuel Outils
de table du Ruban, via le groupe Mise en forme de longlet Champs.
Le bouton Plus de champs
Une autre mthode dajout de champs la table propose par Access en
mode Feuille de donnes, consiste cliquer sur le bouton Plus de champs du
Figure 2.25 : Le nouveau champ est renomm
Figure 2.26 : La modication dun type de donnes peut tre
effectue en mode Feuille de donnes
101 2.1. Le mode Feuille de donnes
groupe Ajouter et supprimer de longlet Champs du Ruban. Le type de
champ choisi dans la liste est alors insr aprs le champ en cours, dans la
feuille de donnes.
Dplacer un champ
Le dplacement de la position dun champ est une modication de
lordre de prsentation des colonnes en mode Feuille de donnes,
sans affectation de la structure de la table (lordre des champs nest
pas modi lorsquil est consult en mode Cration).
1 Slectionnez la colonne dplacer en cliquant sur len-tte de
cette colonne.
2 Gardez le bouton de la souris enfonc, puis glissez la colonne
lendroit dsir.
Figure 2.27 : Lajout dun champ depuis le bouton
Plus de champs
Figure 2.28 : Le dplacement de la colonne Prnom
102 2. Manipuler les donnes
Colonnes ges
Une colonne ge ne peut tre dplace. Access permet en effet de
ger la position des colonnes an dviter des dplacements invo-
lontaires et inopportuns. Une colonne peut tre ge en cliquant du
bouton droit sur son en-tte puis en choisissant Figer les champs
dans le menu contextuel qui est affich.
Une colonne ge est toujours visible, gauche de la fentre, an de
permettre par exemple lutilisateur de toujours voir les noms des
personnes rpertories dans la table alors quil dplace le point
dinsertion vers la droite, parmi un grand nombre de colonnes, ou
quil utilise la Barre de dlement horizontale. Comme le dplace-
ment dun champ en mode Feuille de donnes, cette fonctionnalit,
qui facilite la lecture des donnes, naffecte pas la structure de la
Figure 2.29 : La colonne Prnomest dsormais
positionne avant la colonne Nom
Figure 2.30 : Le menu contextuel permet de
ger une colonne
103 2.1. Le mode Feuille de donnes
table (le champ correspondant la colonne napparat pas dplac
lorsque la structure de la table est consulte en mode Cration).
Pour dplacer une colonne ge, vous devez au pralable la librer,
par un clic droit sur son en-tte puis en choisissant Librer toutes les
colonnes dans le menu contextuel qui apparat.
Il est possible de dplacer plusieurs colonnes contigus simultan-
ment : slectionnez les colonnes concernes puis glissez ces derni-
res comme dcrit prcdemment.
Renommer un champ
Un champ peut tre renomm depuis le mode Feuille de donnes.
la diffrence de la prcdente manipulation, cette opration affecte la
structure de la table (le nom du champ apparat modi lorsque la
structure de la table est consulte en mode Cration).
1 Cliquez du bouton droit sur len-tte de la colonne devant tre
renomme.
2 Dans le menu contextuel qui apparat, choisissez Renommer le
champ.
Le nom de la colonne est affich en vido inverse et align gauche
dans sa zone.
3 Saisissez le nouveau nom en remplacement du nom existant.
Renommer plus rapidement une colonne
Vous pouvez double-cliquer sur le nom de len-tte de colonne. Celui-ci
apparat en vido inverse. Il ne vous reste plus qu saisir le nouveau nom.
Figure 2.31 : La colonne Prnomreste visible, mme lors de lutilisation de la barre de dlement
horizontale
104 2. Manipuler les donnes
Supprimer un champ dans une table
Comme la prcdente, cette opration, qui consiste supprimer une
colonne, affecte la structure de la table (le nom du champ napparat
plus lorsque la structure de la table est consulte en mode Cration).
1 Cliquez du bouton droit sur len-tte de la colonne supprimer.
2 Dans le menu contextuel qui apparat, choisissez Supprimer le
champ.
Access affiche une bote de dialogue demandant conrmation de la
suppression du champ.
3 Conrmez la suppression en cliquant sur le bouton Oui de la bote
de dialogue Microsoft Office Access.
Modier la mise en forme des caractres
La mise en forme des donnes affiches dans une feuille de donnes
peut tre facilement modie an damliorer la lecture des informa-
tions et de rendre la saisie plus conviviale. La modication affecte
lintgralit de la feuille de donnes en cours.
1 Dans le Ruban, cliquez sur longlet Accueil puis sur lun des bou-
tons du groupe Mise en forme du texte.
2 Les principales mises en forme qui vous sont proposes affectent :
la police de caractres ;
le style de caractres ;
la taille des caractres ;
le soulignement des caractres ;
la couleur des caractres.
Figure 2.32 : La demande de conrmation de la suppression de la colonne
Figure 2.33 : Le groupe Mise en forme
du texte
105 2.1. Le mode Feuille de donnes
Modifier la mise en forme de toutes les feuilles de donnes
Access 2010 propose galement une modication possible de la mise en
forme applique par dfaut toutes les feuilles de donnes. Pour cela, cliquez
sur longlet Fichier puis sur le bouton Options et enn Feuille de donnes (de
nombreux paramtres de mise en forme complmentaires des feuilles de
donnes sont alors proposs).
Choisir rapidement une police de caractres
La modication de la police de caractres utilise en mode Feuille de
donnes seffectue en droulant la liste de la zone Police, dans le groupe Mise
en forme du texte du Ruban. Pour choisir rapidement la police dsire dans la
liste, tapez les premiers caractres de son nom.
Personnaliser lapparence de la feuille de donnes
Dans le Ruban, le groupe Mise en forme du texte de longlet Accueil
propose un bouton Mise en forme de la feuille de donnes.
Lorsquon clique sur ce bouton, la bote de dialogue Mise en forme de la
feuille de donnes est affiche. Elle autorise des modications esthtiques de
lapparence de la feuille de donnes telles que lapplication dun effet 3D au
pourtour des cellules ou encore la modication de la couleur darrire-plan
ou de celle du quadrillage de celles-ci.
Figure 2.34 : La modication de la police de caractres
Figure 2.35 : Le bouton Mise en forme de la feuille de donnes du groupe Mise en forme du texte
106 2. Manipuler les donnes
La rubrique Sens de la bote de dialogue Mise en forme de la feuille de
donnes permet, quant elle, dinverser lordre de prsentation des champs
(cette fonctionnalit vite lutilisation de la barre de dlement horizontal
lorsquon doit accder aux derniers champs de la table).
Masquer des colonnes
Si la table renferme un grand nombre denregistrements et que
laffichage dune partie dentre eux nest pas ncessaire pour la
ralisation du travail en cours, certaines colonnes peuvent tre tem-
porairement masques an de diminuer la surface daffichage des
donnes lcran.
1 Slectionnez la ou les colonnes que vous souhaitez masquer.
2 Cliquez du bouton droit sur lune des en-ttes de colonnes slec-
tionnes puis choisissez Masquer les champs dans le menu contex-
tuel qui apparat (ou cliquez sur le bouton Enregistrements de
longlet Accueil du Ruban puis sur Plus et sur Masquer les champs).
(voir Figure 2.37)
Les colonnes masques napparaissent plus dans la feuille de don-
nes (voir Figure 2.38).
Figure 2.36 : La bote de dialogue
Mise en forme de la feuille de
donnes
107 2.1. Le mode Feuille de donnes
Afficher des colonnes masques
Les colonnes masques dans la feuille de donnes peuvent tre
aisment affiches nouveau.
1 Cliquez du bouton droit sur lune des en-ttes de colonnes et
choisissez Afficher les champs dans le menu contextuel qui appa-
rat.
La bote de dialogue Afficher les colonnes est affiche.
2 Cochez les cases correspondant aux colonnes que vous souhaitez
voir nouveau afficher (et dcochez les cases relatives aux colon-
nes que vous ne voulez pas afficher) puis cliquez sur le bouton
Fermer de la bote de dialogue Afficher les colonnes.
Figure 2.37 : La colonne va tre masque
Figure 2.38 : La colonne Adresse2, masque, nest plus affiche
108 2. Manipuler les donnes
Imprimer des donnes dune table
Access 2010 vous permet dimprimer tout ou partie des donnes
renfermes dans une table.
An dviter les pertes de temps et le gaspillage de papier, commen-
cez par vrier la mise en page du document qui sera imprim.
1 La table tant ouverte en mode Feuille de donnes, cliquez sur
longlet Fichier puis sur Imprimer, affich dans le menu qui appa-
rat. Cliquez sur Aperu avant impression.
Figure 2.39 : Ici, toutes les colonnes de la table seront
affiches
Figure 2.40 : Laperu avant impression est lanc
109 2.1. Le mode Feuille de donnes
Lancer plus rapidement lAperu avant impression
Pour lancer lAperu avant impression dun simple clic, vous pouvez ajou-
ter le bouton Aperu avant impression la barre doutils Accs rapide.
Cliquez pour ce faire sur le bouton Personnaliser la barre doutils Accs
rapide, propos droite de la barre doutils, et cochez Aperu avant
impression dans le menu qui est alors dvelopp.
Longlet Aperu avant impression est ouvert dans la fentre dAc-
cess 2010. Les donnes de la table apparaissent dans un aperu
rduit de la feuille, telle quelle sera imprime.
Les boutons prsents dans le groupe Mise en page de longlet
Aperu avant impression permettent deffectuer les oprations de
mise en page les plus courantes, telles que le choix dun format de
papier prdni (bouton Taille) ou le choix de lorientation de lim-
pression (boutons Portrait et Paysage).
Vous pouvez galement utiliser le mode opratoire qui suit. Il vous
permettra de dnir vos propres paramtres de mise en page (tels
quune taille spcique de papier ou la dnition de vos propres
valeurs pour les marges).
2 Cliquez sur le bouton Mise en page du groupe Mise en page ou
cliquez du bouton droit sur la zone daperu. Choisissez Mise en
page dans le menu contextuel qui apparat.
Figure 2.41 : Les donnes de la feuille de donnes sont visibles dans laperu avant impression
110 2. Manipuler les donnes
La bote de dialogue Mise en page est affiche. Elle contient deux
onglets :
longlet Options dimpression permet de dnir les marges, expri-
mes en millimtres et appliques sur les quatre bords de la
feuille, et dindiquer si les titres doivent tre imprims ;
longlet Page permet quant lui de dnir lorientation du papier
(portrait ou paysage), sa taille et ventuellement le bac de limpri-
mante qui doit tre utilis.
Figure 2.42 : Laccs aux donnes personnalises de la mise en page
Figure 2.43 : Longlet Options dimpression
de la bote de dialogue Mise en page
Figure 2.44 : Longlet Page de la bote de
dialogue Mise en page
111 2.1. Le mode Feuille de donnes
3 Aprs avoir apport dventuelles corrections aux valeurs propo-
ses dans la bote de dialogue Mise en page, fermez celle-ci en
cliquant sur son bouton OK.
la fermeture de la bote de dialogue, de retour dans longlet Aperu
avant impression, laperu avant impression vous permet de contr-
ler le rsultat de la mise en page effectue.
Longlet Aperu avant impression offre galement diffrents contrles
de laffichage, tels que :
j le nombre de pages simultanment affiches lcran dans
laperu (boutons Une page, Deux pages et Plus de pages du groupe
Zoom) ;
j le facteur de grossissement (zoom), paramtrable au moyen de la
zone Zoom, en bas droite de la Barre dtat, compose des
boutons Zoom arrire et Zoom avant ainsi que du curseur de
rglage du grossissement, plac entre ces deux boutons ;
j le pointeur de la souris, qui prend la forme dune petite loupe
lorsquil survole la zone daperu. Il offre alors la possibilit daug-
menter ou de rduire le facteur de zoom par un simple clic.
Autre mthode de rglage du facteur de zoom
Le facteur de grossissement peut galement tre dni en cliquant du
bouton droit sur laperu puis en utilisant le menu Zoom dans le menu
Figure 2.45 : La zone Zoom
112 2. Manipuler les donnes
contextuel affich. Il vous est alors possible de saisir le facteur de zoom
ou de le choisir parmi une liste de valeurs proposes.
4 Aprs avoir vri laspect de la
future sortie imprime, cliquez
dans le Ruban sur le bouton
Imprimer de longlet Aperu
avant impression.
Autres mthodes de lancement de limpression
Vous pouvez galement lancer limpression en utilisant lune des mtho-
des suivantes :
j cliquez du bouton droit sur la zone daperu et choisissez Imprimer dans
le menu contextuel qui apparat ;
j utilisez la combinaison de touches [Ctrl]+[P] au clavier ;
j cliquez sur longlet Fichier puis choisissez Imprimer/Imprimer.
La bote de dialogue Imprimer apparat.
5 Dans cette bote de dialogue, dnissez le nom de limprimante
utiliser dans la zone Nom. Indiquez sous la rubrique Imprimer si la
totalit des informations renfermes dans la table doit tre impri-
me ou non. En cas dimpression partielle, indiquez les pages
(prcdemment consultes lors de laperu avant impression)
Figure 2.46 : Le facteur de zoomde laperu peut galement tre dni par le menu contextuel
Figure 2.47 : Le bouton Imprimer
113 2.1. Le mode Feuille de donnes
imprimer. Si vous dsirez nimprimer quune partie spcique des
donnes renfermes dans la table, slectionnez-les auparavant
dans la feuille de donnes et choisissez loption Enregistrement(s)
slectionn(s). Enn, entrez le nombre de copies souhait.
Lancer directement limpression
Limpression peut tre lance directement depuis le mode Feuille de don-
nes, sans ouverture de la bote de dialogue Imprimer, en cliquant sur le
bouton Imprimer de la barre doutils Accs rapide (pour ajouter ce bouton
la barre Accs rapide, utilisez le bouton Personnaliser la barre doutils Accs
rapide, puis cochez Impression rapide dans le menu qui vous est propos).
Les paramtres dimpression par dfaut seront alors appliqus lors de
limpression.
6 Fermez la fentre de laperu en cliquant sur le bouton Fermer
laperu de longlet Aperu avant impression ou cliquez du bouton
droit sur laperu et choisissez Fermer dans le menu contextuel qui
apparat.
2.2. Rechercher des donnes
dans une table
Deux possibilits soffrent vous pour raliser une recherche dans
une feuille de donnes : parcourir la table avec lascenseur (cette
opration est longue et fastidieuse) ou utiliser la fonction de recher-
ches dAccess 2010.
Figure 2.49 : Le bouton Fermer laperu de longlet Aperu avant impression
Figure 2.48 : Limpression rapide
114 2. Manipuler les donnes
1 Affichez la table en mode Feuille de donnes.
2 Placez le pointeur dans la colonne du champ contenant la valeur
rechercher. Ainsi, pour rechercher un code postal spcique, cli-
quez dans la colonne renfermant les codes postaux de la table
affiche.
3 Dans le Ruban, cliquez sur le bouton Rechercher du groupe Recher-
cher de longlet Accueil ou utilisez la combinaison des touches
[Ctrl]+[F].
La bote de dialogue Rechercher et remplacer est affiche. Par dfaut,
longlet Rechercher y est activ.
4 Saisissez dans la zone Rechercher la chane de caractres recher-
cher, ou la valeur numrique, selon le type du champ sur lequel la
recherche seffectue.
Slection de la valeur recherche dans un champ
Pour trouver une valeur dj saisie dans un champ parmi le reste de la
table ou de la colonne sans ressaisir la chane recherche dans la zone
Rechercher de la bote de dialogue Rechercher et remplacer, slectionnez la
valeur dans le champ prsent dans la feuille de donnes avant de cliquer sur
le bouton Rechercher. La valeur slectionne est propose par dfaut dans la
zone Rechercher de la bote de dialogue.
Les options complmentaires suivantes sont facultatives.
5 Choisissez ltendue de la recherche sur la liste Regarder dans (la
recherche peut seffectuer dans la colonne ou dans toute la table).
6 Indiquez sur la liste O de la bote de dialogue la position de la
valeur recherche dans les champs rpondant aux critres de
recherche.
Ainsi, la chane de caractres recherche pourra tre place nim-
porte o dans le champ ou composer lintgralit de la valeur du
champ, ou encore constituer le dbut seulement de la chane de
caractres renferme dans le champ.
Figure 2.50 : Le bouton Rechercher
115 2.2. Rechercher des donnes dans une table
7 Indiquez le sens de la recherche sur la liste Sens.
La recherche peut tre oriente vers le haut de la feuille de donnes,
par rapport la position du point dinsertion, vers le bas ou encore
dans les deux sens.
8 Cochez ventuellement la case Respecter la casse.
Casse de caractres
Ce terme dsigne la combinaison des minuscules et des majuscules dans
une chane de caractres. Son origine tymologique remonte une poque
rvolue au cours de laquelle les typographes utilisaient des caractres en
plomb rangs dans des tiroirs nomms casses.
9 Prcisez le respect ou non du format daffichage de certains types
de champs tels que les dates.
Ainsi, la date 11/05/2007 ne sera pas retrouve si elle existe dans la
feuille au format 11-mai-2007 et si la case Rechercher les champs mis
en forme est coche.
10 Cliquez sur le bouton Suivant pour lancer la recherche.
Access 2010 affiche une bote de dialogue indiquant que lopration
sest rvle infructueuse si la recherche naboutit pas.
Figure 2.51 : La liste O propose trois positions possibles
de la chane recherche dans le champ
Figure 2.52 : Longlet Rechercher de la bote de dialogue Rechercher et remplacer
116 2. Manipuler les donnes
11 Cliquez sur le bouton OK de la bote de dialogue et reformulez
votre recherche.
linverse, si un premier champ rpondant aux critres de recherche
est trouv, la chane recherche apparat en vido inverse dans le
champ concern de la feuille de donnes.
12 Dans ce dernier cas, cliquez nouveau sur le bouton Suivant de la
bote de dialogue Rechercher et remplacer, qui est toujours affi-
che, si vous souhaitez poursuivre la recherche.
Les caractres de substitution
Access met votre disposition plusieurs caractres de substitution, encore
dsigns sous lappellation de "caractres jokers" pour constituer des mas-
ques de recherche.
j Le point dinterrogation peut tre utilis lors des recherches pour rempla-
cer nimporte quel caractre dans la chane recherche. Ainsi, le masque
de recherche voi?ure affichera indiffremment les mots voiture et voi-
lure.
j Lastrisque se substitue la n de la chane recherche. Ainsi, le masque
de recherche tab* affichera indiffremment les mots tableau, table et
tabouret.
j Le dise se substitue un chiffre. Ainsi, le masque de recherche 75##0
affichera indiffremment les valeurs 75000 et 75310.
Rechercher un champ vierge
Pour effectuer une recherche de champs vierges, non mis en forme,
saisissez Null ou Is Null dans la zone Rechercher. Ne cochez pas la case
Rechercher champs comme formats et slectionnez lentre Champ entier
dans la zone O.
Valeur Null
Une chane nulle est une chane ne contenant aucun caractre.
13 Si vous souhaitez mettre n lopration, cliquez sur le bouton
Annuler ou sur le bouton Fermer en haut droite de la bote de
dialogue Rechercher et remplacer.
117 2.2. Rechercher des donnes dans une table
Autre mthode de recherche
Vous pouvez galement avoirs recours la zone Rechercher, situe en bas
de la feuille de donnes, pour effectuer vos recherches. La recherche de la
valeur (ou de la chane de caractres) saisie aura lieu alors dans lintgralit
de la table.
2.3. Remplacer des donnes
dans une table
Plus puissante que la fonctionnalit qui prcde, le remplacement
permet, comme son nom lindique, de substituer une valeur une
autre.
1 Affichez la table en mode Feuille de donnes.
2 Placez le point dinsertion dans la colonne du champ contenant la
valeur remplacer.
3 Dans le Ruban, cliquez sur le bouton Remplacer du groupe Recher-
cher de longlet Accueil ou utilisez la combinaison de touches
[Ctrl]+[H].
La bote de dialogue Rechercher et remplacer est affiche. Longlet
Remplacer est activ.
4 Saisissez la chane remplacer dans la zone Rechercher.
5 Saisissez la chane qui doit se substituer la valeur recherche
dans la zone Remplacer par.
Figure 2.53 : La zone
Rechercher de la feuille de
donnes
Figure 2.54 : Le bouton Remplacer
118 2. Manipuler les donnes
6 Dnissez ventuellement des options de recherche complmen-
taires comme prcdemment.
7 Cliquez sur le bouton Suivant pour lancer la recherche.
Access 2010 affiche une bote de dialogue indiquant que lopration
sest rvle infructueuse si la recherche naboutit pas.
8 Cliquez dans ce cas sur le bouton OK de la bote de dialogue et
reformulez les paramtres de remplacement.
linverse, si un premier champ rpondant aux critres de recherche
est trouv, la chane recherche apparat en vido inverse dans le
champ concern.
Chaque remplacement peut tre soumis une validation. Il vous est
alors demand de conrmer chacun dentre eux et il vous est aussi
possible dinvalider ponctuellement lun deux si vous estimez que la
valeur ne doit pas tre remplace.
9 Pour garder le contrle des remplacements effectus et pouvoir
conrmer chacun deux, cliquez sur le bouton Remplacer.
Le premier remplacement est opr et la recherche continue.
10 Rptez cette opration pour effectuer les autres remplacements
ncessaires. Si, par contre, vous ne souhaitez pas effectuer un
remplacement, cliquez sur le bouton Suivant.
Dans ce cas, le remplacement na pas lieu et la recherche est pour-
suivie.
La validation des remplacements, si ceux-ci sont nombreux, peut
rapidement se rvler une opration fastidieuse et longue. Aussi
Access propose-t-il une option de validation globale de tous les
remplacements trouvs. Si ce choix se traduit indubitablement par
un gain de temps apprciable, le risque existe cependant de rempla-
Figure 2.55 : Le remplacement dune chane de caractres par une autre
119 2.3. Remplacer des donnes dans une table
cer des valeurs qui ne doivent pas ltre. Vous devez donc, dans ce
cas, tre certain que toutes les anciennes valeurs doivent tre rem-
places.
11 Pour effectuer tous les remplacements en une seule opration,
cliquez sur le bouton Remplacer tout.
Access affiche alors une bote de dialogue contenant un message
davertissement indiquant lirrversibilit de lopration.
12 Cliquez sur le bouton Oui de la bote de dialogue.
13 Si vous souhaitez mettre n lopration, cliquez sur le bouton
Annuler ou sur le bouton Fermer en haut droite de la bote de
dialogue.
Les remplacements sont irrversibles
Laction de remplacement nest par rversible, la diffrence de la plupart
des commandes, par laction de la touche [chap] ou du bouton Annuler de la
bote de dialogue Rechercher et remplacer (les nouvelles donnes sont cri-
tes dans la table en remplacement des anciennes qui sont, elles, supprimes).
Veillez donc ne pas oprer de remplacements intempestifs.
2.4. Trier et ltrer les donnes dune table
Tri simple sur une ou plusieurs colonnes contigus, tri avanc sur
des colonnes non mitoyennes, ltrage des donnes : ces oprations
sont indispensables pour lutilisateur dsireux dexploiter limpor-
tante quantit dinformations que renfermera rapidement sa base de
donnes.
Effectuer un tri simple
Dans une table, les donnes sont stockes dans le mme ordre que
celui dans lequel sest effectue la saisie des informations : on parle
alors dordonnancement physique. Lorsque les donnes sont pr-
sentes selon dautres critres, on parle dordonnancement logique.
Figure 2.56 : Tous les
remplacements seront effectus en
une seule opration
120 2. Manipuler les donnes
Ainsi, une table renfermant une liste de personnes sera, dans la
plupart des cas, prsente par ordre alphabtique sur le nom de
famille, mais devra galement pouvoir tre ordonnance selon les
codes postaux, si les besoins du travail effectuer lexigent. Cette
opration est ralise en quelques clics, en mode Feuille de donnes.
Le tri le plus simple consiste ordonnancer les lignes de la table
selon un ordre tabli par une ou plusieurs colonnes contigus dans
la feuille de donnes. Par exemple, un classement par ordre alpha-
btique (ou par ordre alphabtique inverse) sera ralis sur des
colonnes de type texte ou un classement par ordre croissant (ou
dcroissant) sera appliqu sur des colonnes de type numrique.
Voici, par exemple, comment effectuer un classement des donnes
dune table selon un ordre croissant ou dcroissant.
1 Affichez la table en mode Feuille de donnes.
Les lignes de la feuille de donnes dune table saffichent dans lordre
de la saisie.
2 Placez le pointeur dans la colonne trier ou slectionnez la co-
lonne en cliquant sur son en-tte. Cliquez sur les boutons Croissant
ou Dcroissant du groupe Trier et ltrer de longlet Accueil ou
cliquez du bouton droit sur la colonne, puis choisissez Trier de A
Z ou Trier de Z A dans le menu contextuel qui apparat.
Les tris proposs dans le menu contextuel
Les libells indiquant les oprations de tris varient, dans le menu contex-
tuel, lorsquun clic droit est effectu sur la colonne trier, en fonction du type
de donnes renfermes dans la colonne. Ainsi, lorsque les donnes sont des
chanes de caractres (champs de type texte), le menu contextuel affiche Trier
de A Z ou Trier de Z A. Si les champs renferment des dates, les libells
Trier du plus ancien au plus rcent et Trier du plus Rcent au plus ancien sont
affichs. Lorsque les champs contiennent des valeurs numriques, les menus
Trier du plus petit au plus grand et Trier du plus grand au plus petit apparais-
sent. Dans tous les cas, les actions proposes correspondent respectivement
des tris ascendants (ou croissants) et descendants (ou dcroissants).
Figure 2.57 : Le bouton Croissant du groupe Trier et ltrer
121 2.4. Trier et filtrer les donnes dune table
3 Pour que lordre de prsentation des donnes soit mmoris et
utilis la prochaine ouverture de la table, enregistrez la feuille de
donnes en utilisant le bouton Enregistrer de la barre doutils
Accs rapide.
Tri sur plusieurs colonnes
Si vous souhaitez utiliser plusieurs colonnes contigus (renfermant des
noms et des prnoms par exemple) pour effectuer un tri croissant ou dcrois-
sant, slectionnez les colonnes, puis cliquez les boutons Croissant ou
Dcroissant du groupe Trier et ltrer de longlet Accueil. Access trie alors les
donnes en donnant la priorit aux colonnes le plus gauche. Dans lexemple
cit prcdemment, un premier tri sera effectu sur les noms de familles,
puis, si plusieurs dentre eux sont identiques, un second tri sera lanc sur les
prnoms.
De ce fait, si vous dsirez modier lordre du tri, modiez en consquence
celui des colonnes.
Annuler le tri
Pour annuler laction du tri et retrouver les enregis-
trements prsents selon leur ordre de saisie, cliquez
dans le Ruban sur le bouton Supprimer un tri propos dans le groupe Trier
et ltrer de longlet Accueil.
Effectuer un tri avanc
Encore dsign par lappellation de "tri complexe", un tri avanc
permet de raliser un tri sur plusieurs colonnes non contigus sans
tenir compte de lordre des colonnes dans la feuille de donnes.
1 Affichez la table en mode Feuille de donnes.
2 Cliquez sur le bouton Options de ltre avanc du groupe Trier et
ltrer de longlet Accueil puis sur Filtre/tri avanc.
Figure 2.58 : Lapplication dun tri avanc, depuis le
groupe Trier et ltrer
122 2. Manipuler les donnes
Un nouvel onglet, portant le nom de la table suivi de la mention
Filtre1, apparat droite de longlet affichant le nom de la table (le
nouvel onglet porte ainsi le nom ContactsFiltre1, par exemple).
La fentre Filtre
Comme vous pourrez le constater lorsque vous aurez dcouvert les requ-
tes, plus loin dans cet ouvrage, cette fentre montre que le fonctionnement
dun ltre est trs proche de celui dune requte applique sur une table
unique.
Linterface peut vous paratre un peu droutante si cest la premire
fois que vous la rencontrez.
Les champs de la table trier sont affichs dans la partie suprieure
de la fentre. Dans la partie infrieure, la ligne Champ permet de
dsigner les champs sur lesquels vous voulez travailler. Il est bien
entendu possible de modier le champ en utilisant la liste drou-
lante.
Les lignes suivantes vous permettent de choisir laction effectuer :
j la ligne Tri dnit lordre du tri sur le champ (croissant, dcroissant
ou non tri) ;
j la ligne Critres indique, quant elle, le ltre ventuel qui sera
appliqu, si vous souhaitez, par exemple, afficher uniquement les
clients dont le code postal est 54000 et si vous travaillez sur le
champ CodePostal ;
Figure 2.59 : Le nouvel onglet du tri avanc de la table est affich
123 2.4. Trier et filtrer les donnes dune table
j la ligne Ou vous permet dajouter des critres sur ce champ, par
exemple si vous souhaitez afficher les clients dont le code postal
est 54000, ainsi que ceux dont le code postal est 75000.
Les oprateurs logiques ET et OU
Les ordinateurs naccordent pas la mme signication aux oprateurs
logiques que les tres humains, lorsquils dialoguent en langage courant.
Ainsi, en langage usuel, si vous parlez des habitants de Nancy et de Paris,
vous pouvez dire votre interlocuteur : "Affiche les personnes de Nancy et de
Paris." Si vous dites la mme chose un ordinateur, vous serez peut-tre
surpris de constater quil affiche une liste vide. Un systme informatique (ou
lectronique) naccorde en effet pas la mme signication aux mots. Pour lui,
le mot "et" prend la signication dnie en algbre de Boole (clbre math-
maticien). Lordinateur interprte donc votre phrase ainsi : "Affiche les per-
sonnes dont la ville est la fois Nancy et Paris." Une personne ne pouvant
habiter la fois les deux villes, aucun enregistrement ne rpond la condi-
tion, et le rsultat est une liste vide.
Les oprateurs logiques permettent de lier des propositions qui sont des affir-
mations vriables : la proposition 6 = 3 + 3 implique la valeur Vrai, alors
que la proposition 14 < 7 implique une valeur faux (en algbre de Boole,
vrai et faux sont les deux seules valeurs que peut prendre une proposition).
Dans lexemple prcdent, vous devez traduire la phrase par "Affiche les
personnes dont la ville est Nancy ou celles dont la ville est Paris."
Il vous reste dnir les paramtres du tri avanc dans longlet du tri
avanc.
3 Cliquez dans la ligne Champ de la premire colonne, puis choisis-
sez sur la liste qui apparat le champ sur lequel le premier tri sera
effectu. De mme, choisissez Croissant ou Dcroissant sur la liste
Tri.
4 Rptez lopration dans les colonnes suivantes, autant de fois
quil est ncessaire pour dnir lordre de priorit des colonnes
dans le tri (la priorit est dnie par lordre de lecture des colon-
nes, de gauche droite) (voir Figure 2.60).
5 Cliquez sur le bouton Appliquer le ltre du groupe
Trier et ltrer de longlet Accueil ou cliquez du bouton droit dans
longlet du tri avanc puis choisissez Appliquer le ltre/tri dans le
menu qui apparat pour visualiser le rsultat dans la feuille de
donnes.
Le rsultat est obtenu dans longlet de la table affiche en mode
Feuille de donnes.
124 2. Manipuler les donnes
6 Si vous dsirez modier le tri avanc, cliquez sur longlet du tri
avanc ou cliquez nouveau sur le bouton Options de ltre avanc
du groupe Trier et ltrer de longlet Accueil puis sur Filtre/tri avanc.
Supprimer un tri dfini dans longlet filtre
Pour effacer tous les paramtres dnis dans longlet du tri avanc, cliquez
sur le bouton Options de ltre avanc du groupe Trier et ltrer de longlet
Accueil puis sur Effacer la grille.
Vous pouvez galement cliquer du bouton droit dans longlet du tri avanc
puis choisir Effacer la grille dans le menu qui apparat.
Une troisime mthode consiste utiliser le bouton
Effacer tous les tris du groupe Trier et ltrer, propos
dans longlet Accueil du Ruban en mode Feuille de donnes.
7 Pour fermer longlet de dnition du tri avanc, cliquez sur son
bouton Fermer, symbolis par une croix en haut et droite de
longlet (ou cliquez du bouton droit dans longlet de dnition du
tri et choisissez Fermer dans le menu contextuel qui apparat).
Figure 2.60 : Ce tri avanc utilise deux
colonnes
Figure 2.61 : La suppression de la dnition dun tri avanc
125 2.4. Trier et filtrer les donnes dune table
Enregistrement des tris avancs
Lorsque la feuille de donnes est ferme, Access vous propose denregis-
trer les modications effectues. Si vous rpondez par laffirmative, le ltre
dnissant le tri est enregistr et il vous est possible de le retrouver la
prochaine ouverture de la table en mode Feuille de donnes, en cliquant sur
le bouton Options de ltre avanc puis Filtre/tri avanc du groupe Trier et
ltrer de longlet Accueil.
Les limites du tri sarrtent l ou celles du ltre commencent. En
effet, longlet du ltre, utilis dans cette section, autorise la saisie de
critres, qui sont des paramtres restrictifs limitant le nombre den-
registrements affichs.
La diffrence entre tris et ltres apparat nettement : les premiers
changent lordre daffichage des enregistrements de la table alors
que les seconds limitent le nombre de lignes de la table affiches,
selon des critres de slection.
Vous trouverez plus loin un descriptif du mode opratoire utiliser
dans un ltre avanc (paramtr dans longlet du ltre) dans lequel
les actions des tris et des ltres sont combines an dextraire
certaines donnes dune table, en leur appliquant un ordonnance-
ment spcique.
Appliquer des ltres courants
Voici une premire mthode de ltrage offerte par Access 2010 et
permettant de limiter le nombre denregistrements affichs. Ce type
de ltre est le plus simple que vous puissiez appliquer aux donnes :
celles-ci sont choisies ponctuellement par lutilisateur dans une liste.
1 Affichez la table en mode Feuille de donnes.
2 Placez le pointeur dans la colonne trier ou slectionnez la co-
lonne en cliquant sur son en-tte.
3 Cliquez sur le bouton Filtrer dans le groupe Trier et ltrer de longlet
Accueil.
Une fentre saffiche avec une liste de cases cocher. Elle affiche les
donnes contenues dans la colonne slectionne. Il vous est alors
Figure 2.62 : Le bouton Filtrer du groupe Trier et
ltrer
126 2. Manipuler les donnes
possible de choisir celles que vous dsirez afficher et celles qui
doivent tre masques.
Dfinition rapide dun filtre courant sur une colonne
Un ltre courant peut galement tre rapidement dni en cliquant sur
lextrmit droite de len-tte de la colonne ltrer (laccs la fonctionnalit
est indiqu par un carr dans la partie droite de len-tte lorsque celui-ci est
survol).
4 Dcochez les valeurs ne devant pas tre affiches (et laissez co-
ches celles qui doivent ltre) puis cliquez sur le bouton OK.
Le ltre est appliqu dans la feuille de donnes : seules les donnes
coches prcdemment restent visibles.
Dautres ltres du mme type peuvent tre appliqus sur de nouvel-
les colonnes de la table. Les actions des diffrents ltres se cumulent
alors.
5 Pour annuler le(s) ltre(s) et retrouver lintgralit des donnes de
la table dans la feuille de donnes, cliquez sur le bouton Supprimer
le ltre dans le groupe Trier et ltrer de longlet Accueil.
Figure 2.63 : Ici, les donnes vides sont
exclues dans le ltre
Figure 2.64 : Le bouton Supprimer le ltre du groupe Trier
et ltrer
127 2.4. Trier et filtrer les donnes dune table
La suppression dun ltre nentrane pas la suppression de sa dni-
tion. Il est ainsi possible de lappliquer en cliquant une nouvelle fois
sur le bouton Appliquer le ltre (prcdemment nomm Supprimer le
ltre, lorsque le ltre est appliqu), dans le groupe Trier et ltrer de
longlet Accueil.
Supprimer un filtre courant en conservant les autres
Si plusieurs ltres courants conscutifs ont t appliqus, il vous est
possible de supprimer lun dentre eux tout en conservant laction des autres
ltres. Slectionnez pour cela la colonne correspondant au ltre qui doit tre
supprim puis cliquez sur le bouton Filtrer dans le groupe Trier et ltrer de
longlet Accueil. Choisissez alors Supprimer le ltre dans (nom du champ)
dans la fentre qui saffiche sur longlet de la table.
Il vous est aussi possible dexprimer des critres de ltres personna-
liss, bass sur lnonciation dune expression.
Expression
Quelle que soit la mthode utilise pour lexprimer, un ltre sappuie
toujours sur lnonc dune expression. Une expression est une combinaison
doprateurs (mathmatiques ou logiques), de constantes, de fonctions, de
noms de champs ou dautres lments de syntaxe tels que des contrles ou
des proprits (ces lments sont dnis plus loin dans cet ouvrage). Une
expression est value et donne un rsultat utilisable par le ltre.
Figure 2.65 : La suppression
de la dnition dun ltre
courant
128 2. Manipuler les donnes
Ainsi, lexpression > 10, applique comme critre de ltre sur un champ
de type numrique, permet de ltrer tous les enregistrements dont le
champ est strictement suprieur la valeur 10.
6 Cliquez sur le bouton Filtrer dans le groupe Trier et ltrer de longlet
Accueil puis sur Filtres de ... (texte, chiffres, ) dans la fentre qui
saffiche (ou cliquez du bouton droit dans une colonne de longlet
de la table en mode Feuille de donnes puis choisissez sur Filtres
de dans le menu contextuel qui apparat). Choisissez loprateur
relationnel adapt au ltre que vous souhaitez mettre en uvre
(Est gal , Diffrent de, Plus petit que, etc.) dans le sous-
menu affich. Les libells des sous-menus varient en fonction du
type de donnes de la colonne dans laquelle le curseur se trouve.
Une bote de dialogue Filtre personnalis saffiche.
7 Saisissez la valeur idoine dans la zone de saisie de la bote de
dialogue puis cliquez sur le bouton OK.
Figure 2.66 : Le choix dun critre personnalis
Figure 2.67 : La saisie de la valeur du critre personnalis
129 2.4. Trier et filtrer les donnes dune table
Le ltre est appliqu dans longlet de la table en mode Feuille de
donnes.
Filtrer par slection
La mthode de ltrage des donnes qui suit prsente une variante
par rapport la prcdente en ce sens que la valeur permettant
dexprimer le ltre est slectionne dans la feuille de donnes.
1 Affichez la table en mode Feuille de donnes.
2 Slectionnez tout ou partie du contenu dun champ ou placez le
pointeur dans la cellule dont lintgralit du contenu sera alors
utilise comme critre de ltre.
Vous pouvez utiliser ensuite lune des mthodes suivantes pour
appliquer un ltre par slection.
3 Cliquez sur le bouton Slection dans le groupe Trier et ltrer de
longlet Accueil ou encore cliquez du bouton droit sur la valeur
dans une colonne de longlet de la table en mode Feuille de
donnes, puis slectionnez loprateur relationnel de votre choix
(Egal , Diffrent de, Contient, Ne contient pas, etc.) pour dnir le
ltre, dans le menu qui apparat.
Les enregistrements ltrs sont affichs dans la feuille de donnes.
Notez alors lactivation dun bouton portant la mention Filtr et qui
est ajout entre les boutons de dplacement et la zone Rechercher
situs en bas de longlet.
4 Pour annuler un ltre, cliquez sur le bouton Supprimer le ltre dans
le groupe Trier et ltrer de longlet Accueil ou cliquez sur le bouton
Filtr, droite des boutons de navigation placs en bas de la feuille
de donnes.
Figure 2.68 : Le bouton Slection du groupe Trier et ltrer
Figure 2.69 : Les
enregistrements de la table
sont ltrs en fonction de la
valeur slectionne
130 2. Manipuler les donnes
Comme prcdemment, la suppression dun ltre nentrane pas la
suppression de sa dnition. Il est ainsi possible de lappliquer en
cliquant une nouvelle fois sur le bouton Appliquer le ltre dans le
groupe Trier et ltrer de longlet Accueil.
Le filtre hors slection
Access 2003 disposait dun type de ltrage, nomm ltre hors slection
qui nest plus propos sous ce nom partir de la version 2007 dAccess. En
effet, la fonctionnalit, qui pourrait se nommer "ltrage par exclusion", est
dsormais utilisable via loption Ne contient pas, accessible lorsquon clique
sur le bouton Slection.
Filtrer par formulaire
Si elles offrent lavantage dtre extrmement rapides mettre en
uvre, les mthodes qui prcdent prsentent toutefois linconv-
nient de limiter les possibilits de ltrage au contenu dun seul
champ. Il ne vous est ainsi pas possible de ltrer les enregistrements
dune table correspondant aux personnes habitant Nancy (linforma-
tion tant stocke dans un champ Ville par exemple) et dont le nom
est Dupont (cette donne tant, elle, enregistre dans un champ Nom
par exemple).
Cette restriction disparat lors de lutilisation des ltres par formulai-
res qui utilisent les oprateurs boolens ET et OU.
1 Affichez la table en mode Feuille de donnes.
2 Cliquez sur le bouton Options de ltre avanc du groupe Trier et
ltrer de longlet Accueil puis sur Filtrer par formulaire.
Figure 2.70 : Lapplication dun ltre par
formulaire depuis le groupe Trier et ltrer
131 2.4. Trier et filtrer les donnes dune table
Un onglet, portant le nom de la table suivi de la mention Filtrer par
formulaire, apparat (le nouvel onglet porte ainsi le nom Contacts
Filtrer par formulaire, par exemple).
En bas et gauche de la fentre, le premier onglet, nomm Recher-
cher, de longlet Filtrer par formulaire permet de dnir le premier
critre de ltre. Il peut utiliser plusieurs colonnes de la feuille de
donnes. Les conditions dnies seront alors lies par un oprateur-
boolen (encore nomm oprateur logique) de type ET. Dans ce cas,
les enregistrements extraits par le ltre devront satisfaire toutes les
conditions dnies. Ainsi, la chane renferme dans le champ Nom
devra tre gale Dupont et celle renferme dans le champ Ville gale
Nancy ; la "mise faux" de lune de ces conditions tant une condi-
tion ncessaire et suffisante pour que lenregistrement soit exclu du
ltre.
Condition
En algbre de Boole, une condition est une proposition vriable pouvant
prendre deux tats de vrit. Ainsi, 8 = 2 est une condition, dont la valeur de
vrit est Faux alors que 5 > 2 est une condition dont la valeur de vrit est
Vrai. En revanche, 8 nest pas une condition car cette expression na aucune
valeur de vrit (8 nest ni Vrai ni Faux).
3 Dans longlet Rechercher, cliquez dans la cellule dune colonne de
la premire ligne et choisissez une valeur sur la liste propose (la
liste renferme un exemplaire de chaque valeur contenue dans le
champ). Rptez ventuellement lopration sur dautres colonnes
an de dnir dautres conditions.
Figure 2.71 : Le premier critre indique ici que le nomdoit tre Dupont et que la ville doit tre Nancy
132 2. Manipuler les donnes
Supprimer la dfinition du filtre par formulaire
Si un ltre est dj cr dans longlet Filtrer par formulaire, cliquez sur le
bouton Options de ltre avanc du groupe Trier et ltrer de longlet Accueil
puis sur Effacer la grille ou cliquez du bouton droit dans longlet du ltre et
choisissez Effacer la grille dans le menu contextuel. Ce menu efface tous les
critres dnis sous les onglets Rechercher et Ou de longlet Filtrer par
formulaire.
Imaginez dsormais que vous souhaitiez, outre les habitants de
Nancy nomms Dupont, voir gurer les habitants de Paris sur la liste
des enregistrements ltrs. Un oprateur boolen de type OU vous
est alors ncessaire. la diffrence de loprateur ET, loprateur OU
laisse en effet apparatre les enregistrements, pour peu que lune des
conditions au moins soit vrie. nonc diffremment, le ltre va
devoir afficher les nancens nomms Dupont ET les parisiens.
4 Pour ajouter une nouvelle condition, lie par un oprateur logique
OU la prcdente, cliquez sur longlet Ou de longlet Filtrer par
formulaire.
Un nouvel onglet apparat et le deuxime onglet, nomm Ou, est
maintenant actif.
5 Comme vous lavez dj fait sous longlet prcdent, cliquez dans
la cellule dune colonne et choisissez une valeur sur la liste propo-
se. Rptez ventuellement lopration sur dautres colonnes an
de dnir dautres conditions.
Figure 2.72 : La suppression des critres dnis
dans longlet Filtrer par formulaire
Figure 2.73 : Le deuxime
critre, dni dans le premier
onglet Ou, indique ici que la
ville doit tre Paris
133 2.4. Trier et filtrer les donnes dune table
Dautres conditions, lies aux prcdentes par des oprateurs logi-
ques OU, peuvent tre, de la mme manire, ajoutes sous longlet
Ou, dun clic lextrmit droite de la zone donglets de longlet
Filtrer par formulaire.
Pour appliquer le ltre, utilisez lune des mthodes suivantes :
6 Cliquez sur le bouton Appliquer le ltre dans le
groupe Trier et ltrer de longlet Accueil ou cliquez du bouton droit
dans longlet du ltre par formulaire. Choisissez Appliquer le
ltre/tri dans le menu qui apparat pour visualiser le rsultat dans
la feuille de donnes.
Les enregistrements ltrs sont affichs dans la feuille de donnes
de la table. Lapplication du ltre est indique par la mention "Filtr"
ajoute par Access entre les boutons de dplacement et la zone
Rechercher situs en bas de longlet.
Le bouton Filtr
Le libell du bouton Filtr, plac en bas de longlet de la table ltre,
se transforme en Non ltr lorsquon clique dessus. Il annule alors laction
du ltre appliqu sans pour autant effacer la dnition des paramtres
du ltre.
7 Pour modier le ltre par formulaire, cliquez nouveau sur le
bouton Options de ltre avanc du groupe Trier et ltrer de longlet
Accueil puis sur Filtrer par formulaire.
Figure 2.74 : Les donnes ltres dans la feuille de donnes de la table
134 2. Manipuler les donnes
Supprimer un onglet
Pour supprimer lun des onglets de la partie infrieure de longlet Filtrer
par formulaire, slectionnez longlet supprimer par un clic dans la zone
donglets, puis cliquez du bouton droit dans longlet et choisissez Supprimer
la tabulation dans le menu contextuel qui apparat.
Fermeture de longlet Filtrer par formulaire
Pour fermer longlet Filtrer par formulaire, cliquez sur le bouton Fermer de
longlet ou cliquez du bouton droit dans longlet Filtrer par formulaire puis
choisissez Fermer dans le menu qui apparat. Les paramtres du ltre ne sont
plus affichs, mais les enregistrements restent ltrs dans la feuille de
donnes.
Figure 2.75 : La suppression
de longlet Ou de longlet
Filtrer par formulaire
Figure 2.76 : La fermeture de longlet Filtrer par formulaire
135 2.4. Trier et filtrer les donnes dune table
Comment Access 2010 mmorise-t-il un filtre
Seul le dernier ltre appliqu est mmoris par Access 2010. Le ltre est
enregistr dans les proprits de la table. Vous pouvez le vrier en ouvrant
la table en mode Cration, puis en cliquant sur le bouton Feuille des
proprits du groupe Afficher/Masquer de longlet Cration.
La fentre des proprits de la table saffiche dans longlet droite de sa
structure. Dans la ligne Filtre le dernier ltre cr est dni.
8 Pour supprimer la dnition de tous les ltres, affichez longlet de
la table en mode Feuille de donnes puis cliquez sur le bouton
Options de ltre avanc du groupe Trier et ltrer de longlet Accueil
puis sur Effacer tous les ltres.
Figure 2.77 : Le bouton Feuille des proprits de longlet Cration en mode
Cration
Figure 2.78 : Le dernier ltre appliqu est enregistr dans les proprits de la table
Figure 2.79 : La suppression de la dnition de
tous les ltres
136 2. Manipuler les donnes
Appliquer un ltre avanc
Tris et ltres peuvent tre combins en une seule manipulation. Vous
allez dcouvrir cette opration, en conclusion de cette section trai-
tant des ltres dAccess.
1 Affichez la table en mode Feuille de donnes.
2 Cliquez sur le bouton Options de ltre avanc du groupe Trier et
ltrer de longlet Accueil puis sur Filtre/tri avanc.
Un nouvel onglet, portant le nom de la table suivi de la mention
Filtre1, apparat droite de longlet affichant le nom de la table (le
nouvel onglet porte ainsi le nom ContactsFiltre1, par exemple).
La premire tape consiste dnir les paramtres de tri comme
vous lavez fait dans la section Effectuer un tri avanc.
3 Cliquez dans la ligne Champ de la premire colonne. Choisissez
dans la liste qui apparat le champ sur lequel le premier tri sera
effectu. De mme, choisissez Croissant ou Dcroissant dans la
liste Tri. Rptez lopration dans les colonnes suivantes autant de
fois quil est ncessaire pour dnir lordre de priorit des colon-
nes dans le tri.
Figure 2.80 : La dnition des paramtres du tri
137 2.4. Trier et filtrer les donnes dune table
La deuxime tape est celle de la dnition des paramtres du ltre.
4 Cliquez dans la ligne Critres de chacune des colonnes que vous
dsirez utiliser comme critre de ltre. Saisissez-y des valeurs,
Dupont ou 25 par exemple, ou encore des expressions, <8 par
exemple.
Comme dans les ltrages par formulaire, il vous est possible de lier
des conditions par des oprateurs logiques ET et OU.
5 Pour lier deux conditions par un oprateur ET, placez ces derniers
sur la mme ligne. Utilisez une nouvelle ligne pour les lier par un
oprateur OU.
6 Cliquez sur le bouton Appliquer le ltre du groupe Trier et ltrer de
longlet Accueil pour visualiser le rsultat dans la feuille de don-
nes.
Le rsultat est affich dans la feuille de donnes. Le bouton Filtr est
ajout par Access droite des boutons de dplacement.
7 Pour annuler le ltre, cliquez sur le bouton Supprimer le ltre du
groupe Trier et ltrer ou sur le bouton Filtr de longlet de la table.
Figure 2.81 : Aprs avoir tri les
enregistrements par noms, puis
par prnoms, ce ltre avanc limite
laffichage aux nancens nomms
Dupont ainsi quaux parisiens
prnomms Jules
Figure 2.82 : Le bouton Appliquer le ltre
138 2. Manipuler les donnes
2.5. Cas pratique
Vous allez prsent appliquer les principales notions abordes dans
ce chapitre. Au programme, vous saisirez des donnes, lancerez des
recherches et remplacerez des enregistrements. Vous effectuerez
ensuite un tri alphabtique et un tri avanc, et appliquerez un ltre
par slection, un autre hors slection et un dernier par formulaire.
Saisir des donnes
Reprenez la base de donnes Livres.accdb cre dans le cas pratique
du chapitre prcdent. Vous allez y saisir un enregistrement dans la
table des contacts. Vous pourrez ensuite en ajouter quelques autres,
an de disposer dun terrain dexprimentation pour les oprations
de manipulation de donnes qui suivront :
1 Ouvrez la base de donnes Livres.accdb.
2 Dans le volet de navigation, double-cliquez sur la table Contacts.
Longlet Contacts apparat. La table Contacts est affiche en mode
Feuille de donnes.
Voici les informations relatives au premier contact que vous allez
saisir dans la premire ligne de la feuille de donnes :
Figure 2.83 : La dsactivation du ltre
139 2.5. Cas pratique
Tableau 2.2 : Saisie de la premire ligne de donnes de la table Contacts
Nom de la colonne Saisir Remarque
nocontact 1 Le numro sera gnr
automatiquement
nom Turvani
prenom La
titre Madame
societe Agence Tibou
adresse 11, place du Bourg
cp 84000
ville Avignon
departement 84
pays France
telephone 06 00 00 00 00
telecopie 04 00 00 00 00
courriel lea.turvani@agencetibou.com
internet www.agencetibou.com
commentaire
3 Dans lunique ligne de la colonne nom, saisissez Turvani.
Ds la saisie du nom du contact, la colonne nocontact est incrmen-
te automatiquement. Elle nest pas modiable car le champ est de
type NumroAuto.
La description du champ que vous avez saisi en mode Cration
saffiche dans la barre dtat, en bas de la fentre dAccess, ici Nom
du contact.
Figure 2.84 : Laffichage de la
table Contacts en mode Feuille
de donnes et la description
du champ Nomdans la barre
dtat
140 2. Manipuler les donnes
4 Le curseur tant toujours dans la colonne nom de la premire
ligne, utilisez la touche [] pour passer dans la colonne suivante
qui stocke les prnoms. Saisissez La.
5 Saisissez les donnes des colonnes suivantes jusqu la colonne
courriel en utilisant les touches [] ou [] pour vous dplacer dune
colonne lautre vers la droite.
La saisie de la colonne courriel prsente quelques particularits.
6 Saisissez lea.turvani dans la colonne courriel puis utilisez la tou-
che [].
Ladresse de courriel que vous venez de saisir est incomplte Le
champ courriel contient un lien hypertexte vers une adresse lectro-
nique du type monnom@.societe.com. Une fois le lien saisi, il se peut que
vous souhaitiez le modier. Il est logique de tenter deffectuer lop-
ration en cliquant sur le lien. Dans ce cas, le lien, reconnu par Access
comme un lien hypertexte pointant vers une URL, provoque une
tentative douverture du navigateur Internet, tentative se soldant par
un chec, puisque ladresse est incorrecte.
7 Cliquez sur la donne de la colonne courriel.
Une bote de dialogue indiquant une erreur apparat.
8 Cliquez sur le bouton OK de la bote de dialogue.
Dans un champ de ce type, deux actions sont possibles : la modi-
cation de lorthographe et celle de ladresse vers laquelle pointe ce
lien.
9 Pour modier lorthographe, si le pointeur nest pas sur le lien
modier, placez-vous sur le contenu du champ courriel au moyen
des touches de dplacement (en effet, un clic dclencherait le lien
comme vous lavez prcdemment constat). Appuyez sur la tou-
Figure 2.85 : La saisie du dbut de ladresse de courriel du contact
Figure 2.86 : Le message
derreur affich par la bote de
dialogue
141 2.5. Cas pratique
che [F2] an de passer en mode ddition, puis corrigez lorthogra-
phe de ladresse lectronique.
10 Pour dnir la cible du lien, cliquez du bouton droit sur celui-ci et
choisissez Lien hypertexte/Modier le lien hypertexte dans le menu
contextuel qui apparat.
11 Dans la bote de dialogue Modier le lien hypertexte, choisissez le
type Adresse de messagerie dans Lier . Dans la zone Adresse de
messagerie, saisissez ladresse e-mail de la personne.
La mention "mailto" vient prcder ladresse dans cette zone.
12 Modiez ventuellement la zone Texte afficher correspondant au
texte qui sera affich dans le champ.
Vous pouvez en effet afficher dans le champ un libell diffrent de
celui de ladresse e-mail, par exemple La qui pointera vers
lea.turvani@agencetibou.com.
13 Pour ajouter une infobulle, cliquez sur le bouton Infobulle de la
bote de dialogue Modier le lien hypertexte. Saisissez le texte de
linfobulle dans la zone Texte de lInfobulle dans la bote de dialo-
gue Dnir une infobulle pour le lien hypertexte, puis cliquez sur le
bouton OK.
Figure 2.87 : La modication
de la cible dun lien
hypertexte
Figure 2.88 : La saisie de
linfobulle
142 2. Manipuler les donnes
14 De retour dans la bote de dialogue Modier le lien hypertexte,
cliquez sur le bouton OK.
Faciliter la saisie dune valeur dans un champ de type Lien hypertexte
Pour viter les dsagrments noncs prcdemment, cliquez du bouton
droit, lors de la saisie dune valeur dans un champ de type Lien hypertexte, et
utilisez le menu Lien hypertexte/Modier le lien hypertexte ds que le point
dinsertion se trouve dans le champ. La fentre Insrer un lien hypertexte qui
apparat alors autorise en effet une dnition aise du lien et de ses param-
tres.
15 Dans la colonne internet de la feuille de donne, saisissez www.a-
gencetibou.com (ce champ est galement de type Lien hypertexte).
Passez lenregistrement suivant au moyen de la touche [].
Ajoutez quelques enregistrements complmentaires de votre
choix.
16 Fermez la table Contacts.
Rechercher et remplacer un type de livre
Pour poursuivre les tapes suivantes du cas pratique de ce chapitre,
saisissez plusieurs lignes dans la table des livres de la base de
donnes Livres.accdb.
Tlchargement de la base de donnes
Vous trouverez la base de donnes Livres.accdb utilise dans ce chapitre sur
le site de Micro Application (www.microapp.com) dans le dossier Chapitre02.
Vous devez, par exemple, remplacer le type de livre Informatique
gnrale par Informatique pratique. Vous allez donc corriger cette
information dans la table Livres, en mode Feuille de donnes.
Commencez par effectuer une recherche du type de livre Informati-
que gnrale :
1 Ouvrez la table Livres en mode Feuille de donnes en double-
cliquant sur la table dans le volet de navigation.
2 Placez le pointeur dans la colonne type et cliquez sur le bouton
Rechercher de longlet Accueil du Ruban. Saisissez dans la zone
Rechercher de la bote de dialogue Rechercher et remplacer, la
chane Informatique generale (nous avons volontairement introduit
143 2.5. Cas pratique
une faute sur le mot gnrale). Conservez les options proposes
dans les autres zones. Cliquez sur Suivant.
Une bote de dialogue apparat, vous indiquant que la recherche na
pas abouti ( cause de la faute dorthographe).
Vous allez effectuer une nouvelle recherche en utilisant le caractre
de substitution *.
3 Cliquez sur le bouton OK de la bote de dialogue, puis saisissez
dans la zone Rechercher, la chane Informatique*.
4 Dans la zone Rechercher dans, conservez lentre Champ actuel. Sur
la liste O, choisissez Nimporte o dans le champ et conservez Tout
dans la zone Sens. Cliquez sur Suivant.
Figure 2.89 : La saisie de la chane de caractres recherche
Figure 2.90 : La bote de dialogue indiquant que la recherche na pas abouti
Figure 2.91 : Les options de la recherche
144 2. Manipuler les donnes
Cette fois, la recherche aboutit.
Vous allez maintenant remplacer la chane de caractres Informatique
gnrale par Informatique pratique :
5 Cliquez sur longlet Remplacer de la bote de dialogue Rechercher
et remplacer. Dans la zone Remplacer par, saisissez Informatique
pratique (conservez les autres paramtres dj dnis prcdem-
ment et qui sont proposs par dfaut). Cliquez sur le bouton
Suivant.
Le mot Informatique est contenu dans plusieurs chanes de caract-
res dnissant les types des livres. Vous devez donc garder le
contrle des remplacements effectus an de raliser uniquement
des remplacements ponctuels, lorsque ceux-ci sont ncessaires.
6 Pour chaque remplacement propos par la bote de dialogue
Rechercher et remplacer, utilisez le bouton Suivant lorsque vous
souhaitez ne pas effectuer le remplacement ou le bouton
Remplacer lorsque le remplacement doit avoir lieu.
Lorsque toutes les donnes susceptibles dtre remplaces ont t
examines, une bote de dialogue indique la n de lopration.
Figure 2.92 : Le remplacement va tre appliqu
145 2.5. Cas pratique
7 Cliquez sur le bouton OK de la bote de dialogue, puis sur le
bouton Annuler ou Fermer de la bote de dialogue Rechercher et
remplacer.
Trier des livres
Vous allez maintenant raliser deux tris parmi la table des livres : lun
simple, lautre avanc.
Appliquer un tri croissant
Dans ce premier exemple, vous allez raliser un tri par ordre alpha-
btique.
1 Affichez la table Livres en mode Feuille de donnes.
Les lignes de la feuille de donnes de la table Livres saffichent dans
lordre de la saisie. Vous allez maintenant les classer par ordre
alphabtique sur le titre des livres.
2 Placez le pointeur dans la colonne titre ou slectionnez la colonne
en cliquant sur son en-tte. Cliquez sur les boutons Croissant du
groupe Trier et ltrer de longlet Accueil du Ruban. Vous pouvez
galement cliquer du bouton droit sur len-tte de la colonne et
choisir Trier de A Z dans le menu contextuel qui apparat. Il est
aussi possible de cliquer sur la che droite dans len-tte de la
colonne titre puis de choisir Trier de A Z.
Figure 2.93 : Le remplacement nest pas effectu
146 2. Manipuler les donnes
Appliquer un tri avanc
Soyez maintenant un peu plus exigeant. Puisque certains livres sont
de mme type et de mme collection, vous allez effectuer un classe-
ment par ordre alphabtique ordonnanc de la manire suivante : le
type, puis la collection, puis le titre du livre.
Vous allez donc raliser un tri avanc sur les colonnes type, collection
et titre qui dtermineront les critres de tri. De cette faon, les livres
du mme type seront regroups puis classs par collection au sein
dun type donn. Enn, pour chaque regroupement douvrages
dune collection dans un type donn, ils seront tris selon leurs titres.
1 Vriez que la table Livres est ouverte en mode Feuille de donnes.
Figure 2.94 : Les livres sont tris par ordre alphabtique sur leurs titres
147 2.5. Cas pratique
2 Cliquez sur le bouton Options de ltre avanc du groupe Trier et
ltrer de longlet Accueil puis sur Filtre/tri avanc.
Longlet LivresFiltre1 apparat droite de longlet de la table.
3 Si un ltre est dj dni dans la fentre LivresFiltre1, cliquez sur le
bouton Options de ltre avanc du groupe Trier et ltrer puis sur le
bouton Effacer la grille pour le supprimer.
4 Dans la fentre LivresFiltre1, cliquez dans la ligne Champ de la
premire colonne, choisissez le champ type sur la liste des champs
et Croissant sur la liste Tri.
5 Cliquez dans la ligne Champ de la deuxime colonne. Choisissez le
champ collection sur la liste des champs et Croissant sur la liste Tri.
Figure 2.95 : La suppression de la dnition
dun tri
Figure 2.96 : Le premier tri est effectu sur le champ type
148 2. Manipuler les donnes
6 Cliquez de mme dans la ligne Champ de la troisime colonne.
Choisissez le champ titre sur la liste des champs et Croissant sur la
liste Tri. Une che dirige vers le haut apparait dans chacune des
en-ttes des trois colonnes utilises dans le tri avanc.
7 Cliquez sur le bouton Appliquer le ltre du groupe Trier et ltrer de
longlet Accueil pour visualiser le rsultat dans la feuille de don-
nes de la table.
Figure 2.97 : Le champ Collection est utilis pour effectuer
le tri
Figure 2.98 : Le tri est effectu sur trois
champs
Figure 2.99 : Les lignes sont tries selon le type, la collection et le titre du livre, par ordre
alphabtique
149 2.5. Cas pratique
8 Pour fermer longlet LivresFiltre1 qui est masqu par la feuille de
donnes de la table, cliquez sur ce dernier puis sur le bouton
Fermer de longlet LivresFiltre1.
Retrouver lordre initial de saisie
Pour que les lignes retrouvent leur ordre initial, celui
de la saisie, cliquez sur le bouton Effacer tous les tris
du groupe Trier et ltrer de longlet Accueil.
Filtrer des livres
Aprs ces premires oprations de tri, vous allez raliser quelques
ltrages. Vous continuerez utiliser pour cela la table des livres.
Filtrer par slection
Vous souhaitez extraire les livres de type bureautique. Pour cela,
vous appliquerez un ltre par slection.
1 Affichez la table Livres en mode Feuille de donnes.
2 Placez le pointeur dans une cellule de la colonne type contenant le
mot Bureautique.
3 Cliquez sur le bouton Slection dans le groupe Trier et ltrer de
longlet Accueil puis choisissez Est gal Bureautique dans le
menu affich.
Seuls les enregistrements ltrs sont dsormais affichs dans la
feuille de donnes.
Figure 2.100 : La cration du ltre par slection
150 2. Manipuler les donnes
4 Pour supprimer lapplication du ltre et retrouver
la totalit des enregistrements dans la feuille de
donnes, cliquez sur le bouton Activer/Dsactiver le ltre dans le
groupe Trier et ltrer de longlet Accueil.
Imaginez maintenant la situation inverse : vous souhaitez afficher
tous les livres, lexception des livres de type bureautique.
5 Placez le pointeur dans une cellule de la colonne type contenant le
mot Bureautique.
6 Cliquez sur le bouton Slection dans le groupe Trier et ltrer de
longlet Accueil. Choisissez Ne contient pas Bureautique dans le
menu affich.
Seuls les enregistrements ltrs sont dsormais affichs dans la
feuille de donnes.
Figure 2.101 : Aprs application du ltre, les enregistrements correspondant au type Bureautique
sont les seuls affichs
Figure 2.102 : Tous les enregistrements seront affichs, lexception des livres de type bureautique
151 2.5. Cas pratique
7 Pour mettre n au ltre affich de la table Livres, cliquez sur le
bouton Activer/Dsactiver le ltre dans le groupe Trier et ltrer de
longlet Accueil.
Filtrer par formulaire
Vous souhaitez dsormais afficher les livres de lanne 2005 ainsi
que tous ceux de lanne 2006. Vous emploierez donc un ltre par
formulaire avec multicritres.
1 Affichez la table Livres en mode Feuille de donnes.
2 Cliquez sur le bouton Options de ltre avanc du groupe Trier et
ltrer de longlet Accueil puis sur Filtrer par formulaire.
Longlet Livres : Filtrer par formulaire est affich.
3 Cliquez sur le bouton Options de ltre avanc du groupe Trier et
ltrer puis sur le bouton Effacer la grille, si un ltre a dj t cr,
an de leffacer.
Pour mieux comprendre laction du ltre, le mieux est de raliser
lopration en deux tapes. La premire sera de limiter laffichage
aux livres de lanne 2005 :
4 Dans longlet Rechercher de longlet Livres : Filtrer par formulaire,
cliquez dans la cellule de la colonne anneecopyright et choisissez
2005 sur la liste propose.
Figure 2.103 : Un ltre par formulaire est lanc
Figure 2.104 : Leffacement dun ventuel ltre prcdemment dni
152 2. Manipuler les donnes
5 Avant de dnir les autres critres, visualisez le rsultat en appli-
quant le ltre. Cliquez sur le bouton Activer/Dsactiver le ltre du
groupe Trier et ltrer de longlet Accueil.
Pour ajouter les livres de lanne 2006 la liste, vous devez modier
le ltre dans longlet Livres : Filtrer par formulaire.
6 Cliquez sur le bouton Options de ltre avanc du groupe Trier et
ltrer de longlet Accueil puis sur Filtrer par formulaire.
7 Cliquez sur longlet Ou de longlet Livres : Filtrer par formulaire,
puis cliquez dans la cellule de la colonne anneecopyright et choi-
sissez 2006 dans la liste propose.
8 Cliquez sur le bouton Appliquer le ltre du groupe Trier et ltrer de
longlet Accueil.
9 Pour retrouver tous les enregistrements de la table Livres, cliquez
sur le bouton Activer/Dsactiver le ltre dans le groupe Trier et
ltrer de longlet Accueil.
Figure 2.105 : La dnition du premier
critre du ltre sous longlet Rechercher
Figure 2.106 : La dnition des
critres du ltre sous longlet Ou
Figure 2.107 : Les livres de
lanne 2005 ainsi que ceux
de lanne 2006 sont
maintenant affichs dans la
feuille de donnes
153 2.5. Cas pratique
C
H
A
P
I
T
R
E
3
CONSTRUIRE
UNE STRUCTURE
DE TABLE OPTIMALE
Manipuler les champs ............................................................................................. 157
Exploiter les proprits des champs ................................................................ 164
Appliquer des masques de saisie ...................................................................... 179
Utiliser les listes de choix ...................................................................................... 186
Appliquer des rgles de validation ................................................................... 196
Indexer les donnes ................................................................................................. 205
Cas pratique ................................................................................................................. 209
155
ce stade, vous savez maintenant crer des tables, y saisir et en
extraire des donnes. Vous allez dcouvrir dans ce chapitre quune
optimisation de la structure des tables vous fera gagner un temps
apprciable, facilitera la saisie et empchera certaines erreurs.
Vous apprendrez donc manipuler les champs, au sein de la struc-
ture dune table, en mode Cration, utiliser au mieux les principales
proprits des champs, employer des listes de saisie ou encore
appliquer des rgles de validation sur les champs et les tables.
3.1. Manipuler les champs
Le mode Cration autorise des oprations sur la structure des tables
qui vont bien au-del de la simple dnition des champs dcrite au
premier chapitre de ce livre.
Afficher la structure dune table
Vous allez revoir en dtail les lments de linterface du mode Cra-
tion.
1 Une base de donnes ayant t ouverte, cliquez sur le groupe
Tables dans le Volet de navigation.
2 Cliquez du bouton droit sur la table de votre choix, puis choisissez
Mode Cration dans le menu contextuel qui apparat.
Figure 3.1 : Le menu contextuel permet douvrir une table en mode Cration
157 3.1. Manipuler les champs
Basculer du mode Feuille de donnes au mode Cration
Si la table est ouverte en mode Feuille de donnes, il est inutile de fermer
la feuille de donnes pour passer en mode Cration. Cliquez simplement sur
le bouton Affichage du groupe Affichage de longlet Accueil.
Vous pouvez galement cliquer sur le
bouton Mode Cration prsent en
bas et droite de la fentre dAc-
cess 2007, dans la Barre dtat.
Linterface du mode Cration se compose de diffrents lments :
j chacune des lignes permet de dnir un champ. Un champ est
caractris par son nom dans la premire colonne, son type de
donnes dans la deuxime et sa description dans la troisime ;
j une liste des proprits du champ slectionn est prsente sous
deux onglets : Gnral et Liste de choix. Un type de donnes dis-
pose de proprits qui lui sont spciques. Ainsi, la liste des
proprits dun champ de type Texte, par exemple, sera diffrente
de celle dun champ de type Numrique ;
j dans le Ruban, longlet Cration permet laccs rapide aux fonc-
tions spciques au mode Cration (voir Figure 3.5).
Le champ courant est indiqu gauche de la ligne concerne par une
case plus fonce, lorsque vous cliquez sur celle-ci. La ligne corres-
Figure 3.2 : Le bouton Affichage
Figure 3.3 : Le groupe de boutons proposs en bas et droite
de la fentre dAccess
Figure 3.4 : Les composants de la structure de la table
158 3. Construire une structure de table optimale
pondant lenregistrement est galement affiche dans une teinte
diffrente de celle des autres lignes et une bordure de couleur len-
cadre.
Fermer le mode Cration
Pour quitter ce mode, cliquez sur le bouton Fermer (la croix place en haut
et droite de longlet de cration de table) ou utilisez la combinaison des
touches [Ctrl]+[W] ou [Ctrl]+[F4]. la fermeture de la table, Access affiche une
bote de dialogue dans laquelle il vous est demand si vous souhaitez enre-
gistrer les modications apportes la structure de la table, si celle-ci a t
modie. Utilisez les boutons Oui ou Non de la bote de dialogue pour
signier votre choix.
Ajouter un champ
Il est frquent de devoir ajouter un champ la structure existante de
la table. Lopration est simple.
1 Ouvrez la table en mode Cration.
2 Pour ajouter un champ en n de table, cliquez dans la colonne
Nom du champ de la premire ligne vide et saisissez son nom.
Choisissez son type de donnes dans la colonne Type de donnes
et saisissez sa description dans la troisime colonne.
Figure 3.5 : Linterface du mode Cration
159 3.1. Manipuler les champs
3 Pour ajouter un champ en premire ligne ou entre deux champs
dj crs, utilisez le bouton Insrer des lignes, propos dans le
groupe Outils de longlet Cration, dans le Ruban (vous pouvez
galement cliquer du bouton droit dans une ligne de la table et
choisir Insrer des lignes dans le menu contextuel qui apparat).
Une ligne vide est insre au-dessus du champ.
4 Cliquez dans la colonne Nom du champ de la nouvelle ligne vide et
saisissez le nom du champ. Choisissez son type de donnes dans
la colonne Type de donnes et saisissez sa description dans la
troisime colonne.
Slectionner des champs
Il est utile de savoir oprer des slections de champs en mode
Cration de table, an de les dplacer, par exemple :
1 Pour slectionner un champ, cest--dire une ligne, cliquez en
dbut de ligne sur le slecteur de champ (la petite case qui pr-
cde la ligne).
Figure 3.6 : Lajout dun champ en n de
table
Figure 3.7 : Lajout dun champ entre des champs dj crs ou en dbut de table
160 3. Construire une structure de table optimale
Lorsquil est survol, le slecteur transforme le pointeur de la souris
en une che noire dirige vers la droite. La ligne slectionne
apparat alors encadre.
2 Pour slectionner plusieurs champs contigus, cliquez sur le slec-
teur de champ du premier champ, maintenez le bouton de la
souris enfonc, puis tendez la zone verticalement jusquau slec-
teur du dernier champ inclure dans la slection.
Slection dun grand nombre de lignes
Voici une autre mthode, utile pour slectionner un grand nombre de
champs conscutifs : cliquez sur le slecteur du premier champ, maintenez la
touche [Maj] enfonce, utilisez ventuellement la Barre de dlement verticale
pour visualiser des lignes napparaissant pas lcran et cliquez sur la ligne
correspondant au dernier champ intgrer dans la slection.
3 Pour slectionner plusieurs champs non contigus, maintenez la
touche [Ctrl] enfonce. Cliquez sur le slecteur de champ des enre-
gistrements inclure dans la slection.
Figure 3.8 : La slection dun
champ
Figure 3.9 : La slection de champs
contigus
Figure 3.10 : La slection de
champs non contigus
161 3.1. Manipuler les champs
Dplacer un champ
Lordre des champs peut tre modi dans la structure de la table, en
mode Cration. Cette opration, qui change galement lordre de
prsentation des champs en mode Feuille de donnes, peut tre utile
pour permettre une lecture plus logique des informations (le nom
sera prsent avant le prnom ou le code postal avant la ville, par
exemple).
1 Slectionnez la ligne du champ dplacer en cliquant sur le
slecteur de champ (la petite case qui prcde la ligne).
2 Gardez le bouton de la souris enfonc puis glissez la ligne
lendroit dsir.
Un petit carr accompagne la che du pointeur pendant le dplace-
ment. Vous pouvez galement dplacer de la mme manire une
slection de champs contigus aprs les avoir slectionns.
Supprimer un champ
Un champ devenu inutile aprs une restructuration de la base de
donnes, par exemple, peut tre facilement supprim.
1 Placez le pointeur dans la ligne du champ supprimer ou cliquez
sur son slecteur.
Vous pouvez galement slectionner plusieurs champs contigus.
2 Cliquez sur le bouton Supprimer les lignes du groupe Outils de
longlet Cration ou cliquez du bouton droit et choisissez
Supprimer les lignes dans le menu contextuel qui apparat.
Figure 3.11 : Le dplacement dune
ligne en n de table
Figure 3.12 : Le bouton Supprimer les lignes
162 3. Construire une structure de table optimale
Utilisation de la touche Suppr
La touche [Suppr] permet galement de supprimer un ou plusieurs champs
de la structure de la table. Toutefois, alors que vous placiez le point dinser-
tion nimporte o sur la ligne dans les mthodes prcdentes, il vous faut ici
slectionner les champs avant de lancer la suppression. Autrement, laction
de la touche [Suppr] est applique la zone en cours (des caractres sont
supprims dans le nom du champ ou dans sa description, par exemple).
Des botes de dialogue viennent ou non demander conrmation de
la suppression du champ, en fonction de son type et de lexistence de
donnes dj saisies dans ce champ :
j si la table ne contient pas de donnes et si le champ nest pas une
cl primaire, il est immdiatement supprim sans aucun avertis-
sement ;
j si la table contient des donnes et si le champ nest pas une cl
primaire, Access demande conrmation de la suppression du
champ ainsi que de ses donnes. Cliquez sur le bouton Oui de la
bote de dialogue qui est apparue ;
j si la table ne renferme pas de donnes et si le champ est une cl
primaire, Access vous avertit quil sagit de la suppression de la cl
primaire. Vous devez alors valider la suppression en cliquant sur le
bouton Oui de la bote de dialogue qui est apparue ;
j si la table contient des donnes et si le champ est une cl primaire,
Access demande en premier la conrmation de la suppression du
champ ainsi que de ses donnes. Cliquez sur le bouton Oui. Access
Figure 3.13 : Cette fois galement, Access vous met en garde et vous demande de conrmer la
suppression des donnes renfermes dans le champ
Figure 3.14 : Access vous met en garde et vous demande de conrmer la suppression de la cl
primaire
163 3.1. Manipuler les champs
vous avertit quil sagit de la suppression de la cl primaire. Validez
en cliquant sur le bouton Oui de la bote de dialogue affiche dans
ce cas.
3.2. Exploiter les proprits des champs
Les proprits sont des constituants essentiels utiliss dans tous les
logiciels actuels, qui reposent sur les principes des langages de
programmation orients objets. Vous les retrouverez tout au long de
votre dcouverte des diffrents objets qui composent une base de
donnes (tables, formulaires, tats). Une proprit est une valeur
attache un objet et qui le caractrise : de la mme faon quune
voiture dispose des proprits couleur et poids, un champ dune table
dispose de proprits qui le diffrencient des autres champs.
1 Ouvrez la table en mode Cration.
2 Pour affecter des valeurs aux proprits dun champ, cliquez sur la
ligne du champ concern et saisissez les valeurs des proprits
modier sous longlet Gnral de la fentre.
Passer rapidement de la zone de liste des champs la zone de proprits
En mode Cration, la partie suprieure de la fentre est rserve la
dnition des proprits essentielles des champs (nom, type et description).
La partie infrieure affiche les autres proprits des champs, dont la liste varie
Figure 3.15 : Longlet gnral
permet de modier les proprits du
champ slectionn
164 3. Construire une structure de table optimale
en fonction des types de champs. Pour passer rapidement de lune de
ces zones lautre, utilisez la touche [F6].
3 Si la zone de saisie offerte par la proprit vous semble trop
restreinte, utilisez la combinaison de touches [Maj]+[F2] pour faire
apparatre la bote de dialogue Zoom, qui offre un espace de saisie
beaucoup plus important ainsi quun bouton Police permettant
daccder aux paramtres de dnition de la taille et de laspect de
la police utilise pour la saisie des valeurs des proprits. Aprs la
saisie de la valeur, conrmez-la en cliquant sur le bouton OK de la
bote de dialogue Zoom.
Obtenir des informations sur lutilisation dune proprit
Pour obtenir de laide sur lutilisation des nombreuses proprits propo-
ses sous longlet Gnral, placez le point dinsertion sur la ligne de la
proprit, puis utilisez la touche [F1].
Vous allez aborder maintenant les principales proprits de longlet
Gnral.
La proprit Taille du champ
Cette proprit est propose avec les champs de types de donnes
Texte, Numrique et NumroAuto. Les valeurs quelle peut prendre
varient en fonction du type de donnes.
Figure 3.16 : La bote de dialogue Zoom
165 3.2. Exploiter les proprits des champs
La taille dun champ de type de donnes Texte
La taille du champ est le nombre de caractres quil est possible de
saisir. Sa valeur maximale est de 255 caractres. La valeur propose
par dfaut est galement de 255 caractres.
Dnissez la valeur en la saisissant dans la zone de saisie Taille du
champ.
La taille dun champ de type de donnes Numrique
La taille dun champ de ce type est dtermine par le type de nombre
utilis, que vous pouvez choisir sur la liste propose dans la zone de
saisie de la proprit.
Voici les caractristiques de ces diffrents types de nombres :
Tableau 3.1 : Caractristiques de la proprit Taille du champ de type de donnes Numrique
Type de nombre Description Taille Dcimales
Octet Nombre entre 0 et 255 1 octet Aucune
Entier Nombre entre -32 768 et 32 767 2 octets Aucune
Entier long Nombre entre -2 147 483 648 et 2 147 483 647.
Le type Entier long est propos par dfaut.
4 octets Aucune
Rel simple Nombre entre -3,402823E38 et -1,401298E-45 pour les
valeurs ngatives ; nombre entre 1,401298E-45 et
3,402823E38 pour les valeurs positives
4 octets 7
Rel double Nombre entre -1,79769313486231E308 et
-4,94065645841247E-324 pour les valeurs ngatives ;
nombre entre 4,94065645841247E-324 et
1,79769313486231E308 pour les valeurs positives
8 octets 15
Dcimal Nombre compris entre -(10E28)-1 et (10E28)-1 12 octets 28
Modier la taille par dfaut pour les champs de types Texte
et Numrique
Si vous souhaitez modier les valeurs par dfaut proposes pour la
proprit Taille du champ avec les champs de types de donnes Texte
et Numrique :
Figure 3.17 : La proprit Taille du champ dun champ de type Texte
Figure 3.18 : La proprit Taille du champ dun
champ de type Numrique
166 3. Construire une structure de table optimale
1 Cliquez sur longlet Fichier puis sur Options.
2 Dans la bote de dialogue Options Access qui apparat, choisissez
Concepteurs dobjets. Dans la rubrique Cration de table, saisissez
une valeur dans la zone Taille de champ de texte par dfaut pour
dnir la valeur propose pour les champs de type Texte (la valeur
maximale est de 255 caractres).
3 Choisissez une valeur dans la liste de la zone Taille de champ
numrique par dfaut pour dnir la valeur par dfaut propose
pour les champs de type Numrique.
La taille dun champ de type de donnes NumroAuto
Lors dune utilisation courante dAccess, les champs de types de
donnes NumroAuto sont utiliss pour gnrer des cls primaires
qui sont des identiants uniques dans les tables. Conservez donc
toujours le type de nombre Entier long propos par dfaut.
La proprit Nouvelles valeurs
Cette proprit est utilise pour dnir la manire dont sont gn-
res les valeurs des champs de type de donnes NumroAuto lors-
que de nouveaux enregistrements sont ajouts la table.
Figure 3.19 : La dnition de la taille propose par dfaut pour les champs de type de donnes Texte
et Numrique
Figure 3.20 : La proprit
Taille du champ dun champ
de type NumroAuto
167 3.2. Exploiter les proprits des champs
Les caractristiques des valeurs proposes pour la proprit sont
dcrites dans le tableau suivant :
Tableau 3.2 : Caractristiques de la proprit Nouvelles valeurs
Valeur Description
Incrment La nouvelle valeur, lors de lajout dun enregistrement, est gale la dernire va-
leur gnre, augmente de 1. Les valeurs sont des nombres entiers positifs. Ce
paramtre est utilis par dfaut.
Alatoire La nouvelle valeur, lors de lajout dun enregistrement, est gnre alatoirement.
Les valeurs sont des nombres entiers longs.
La proprit Format
Les formats de saisie permettent de personnaliser les affichages et
les impressions des donnes, an dajouter lunit montaire euro
la n de la chane ou encore pour afficher une date au format
23-nov-07 par exemple. Les donnes ne sont pas modies.
Cette proprit est propose avec les champs de type de donnes
Texte, Mmo, Numrique, Date/Heure, Montaire et Oui/Non. Les va-
leurs quelle peut prendre varient en fonction du type de donnes.
Bien quil soit toujours possible de modier le format daffichage des
donnes dans les formulaires ou dans les tats, la dnition des
formats de donnes au niveau de la structure de la table est une
meilleure mthode car les formats dnis sont hrits dans tous les
objets de prsentation des donnes dAccess (feuilles de donnes,
formulaires et tats).
En fonction du type de donnes du champ, la dnition des formats
seffectue par une saisie de valeurs ou par un choix sur une liste (il
sagit, dans ce dernier cas, de formats prdnis).
Les formats prdfinis
Les formats prdnis sont des ensembles de paramtres de mise en
forme prts lemploi. Ils sont proposs pour les types de donnes Date/
Heure, Numrique, Montaire, Texte, Mmo et Oui/Non.
Figure 3.21 : La proprit Nouvelles valeurs dun
champ de type de donnes NumroAuto
168 3. Construire une structure de table optimale
Vous trouverez ci-aprs quelques exemples gnriques dapplica-
tions de format sur des champs de types diffrents. Pour obtenir la
liste de tous les formats applicables sur un champ spcique, utilisez
la touche [F1] an daccder laide dAccess.
Le format dun champ de type de donnes Numrique et
Montaire
Voyez dabord les formats applicables par la proprit Format sur des
donnes de types Numrique et Montaire.
De nombreux formats prdnis sont proposs par Access 2007
pour cette proprit.
Le tableau suivant rsume les caractristiques des formats prd-
nis applicables aux nombres proposs dans la proprit :
Tableau 3.3 : Formats prdfinis de la proprit Format pour un champ de type de donnes
Numrique ou Montaire
Format prdfini Description
Nombre gnral Ce format nutilise aucune mise en forme particulire. Le nombre est affich
tel quil a t entr (152,4856 par exemple).
Montaire Ce format a recours un sparateur de milliers et affiche un symbole mon-
taire. Il est conforme au format dni dans les paramtres rgionaux de
Windows, accessibles par le menu Dmarrer/panneau de
configuration/Options rgionales, date, heure et langue/Options
rgionales et linguistiques depuis la barre des tches (47 125,85
par exemple).
Euro Ce format force lutilisation du symbole de leuro comme symbole montaire,
mme si un autre symbole montaire a t dni dans les paramtres rgio-
naux de Windows.
Fixe Ce format affiche au moins un chiffre.
Standard Ce format, qui utilise le sparateur de milliers, est conforme au format dni
dans les paramtres rgionaux de Windows.
Pourcentage Ce format multiplie la valeur renferme dans le champ par 100. Il ajoute en
outre le signe de pourcentage. Il est conforme au format dni dans les
paramtres rgionaux de Windows.
Figure 3.22 : Les diffrents formats prdnis
proposs et applicables aux champs de types de
donnes Numrique ou Montaire
169 3.2. Exploiter les proprits des champs
Tableau 3.3 : Formats prdfinis de la proprit Format pour un champ de type de donnes
Numrique ou Montaire
Format prdfini Description
Scientique Ce format a recours la notation scientique standard (1,52E+5 par
exemple).
Pour mieux comprendre les domaines dutilisation de la proprit
Format, suivez les tapes dapplication dun format de type pourcen-
tage sur un champ de type de donnes numriques :
1 En mode Cration, cliquez sur un champ de type de donnes
Numrique. Choisissez Rel double dans la proprit Taille du
champ et Pourcentage dans la liste propose la ligne Format sous
longlet Gnral.
La consquence de cette modication de format est immdiatement
vriable lors de la saisie de donnes dans le champ en mode Feuille
de donnes.
2 Affichez la table en mode Feuille de donnes en cliquant dans le
Ruban sur le bouton Affichage de longlet Cration.
3 Saisissez un nombre dans la colonne du champ, la valeur 8, par
exemple.
4 Validez la saisie en appuyant sur la touche [] ou sur la touche [].
La valeur est alors exprime en pourcentage.
Figure 3.23 : Le format Pourcentage est
choisi dans la proprit Format dun champ
de type de donnes Numrique
Figure 3.24 : La saisie dune valeur numrique dans la colonne du champ
170 3. Construire une structure de table optimale
Bien que la plupart des formats prdnis proposs satisfassent la
plupart des besoins, il vous est possible de personnaliser les formats
daffichage au moyen de symboles ddis (la liste de ces symboles
est accessible par la touche [F1], lorsque le point dinsertion est plac
sur la proprit Format, en mode Cration).
titre dexemple, voici comment utiliser lun de ces symboles pour
personnaliser un format daffichage (il est possible de combiner
plusieurs symboles dans la zone de saisie de la proprit Format an
de dnir des formats plus volus).
Par dfaut, les donnes numriques sont affiches droite, ce qui
facilite leur lecture. Ce type de prsentation nest toutefois pas im-
pos par Access. Vous allez aligner les informations sur la gauche de
la colonne, en mode Feuille de donnes.
Le caractre ! permet dindiquer Access que vous souhaitez utiliser
un alignement gauche (il peut tre utilis avec des donnes de
types autres que Numrique). Saisissez ce caractre, en mode Cra-
tion, la ligne Format dun champ de type Numrique.
En mode Feuille de donnes, les donnes sont maintenant alignes
gauche dans la colonne du champ.
Figure 3.25 : Ds validation de la saisie, la valeur est affiche au format
pourcentage
Figure 3.26 : Les informations, telles quelles sont affiches
par dfaut
Figure 3.27 : La proprit Format dun
champ de type de donne Numrique
force lalignement gauche
171 3.2. Exploiter les proprits des champs
Le format dun champ de type de donnes
Texte et Mmo
Lusage de la proprit Format nest pas limit aux formats appliqus
des donnes numriques. Les formats peuvent ainsi tre apposs
des champs de type Texte et Mmo. Vous devrez alors dnir des
formats personnaliss au moyen de symboles (la liste de ces sym-
boles est accessible par la touche [F1], lorsque le point dinsertion est
plac sur la proprit Format, en mode Cration).
Vous allez dcouvrir comment utiliser lun de ces symboles pour
personnaliser un format daffichage. Lorsque des donnes sont en-
tres dans les champs, lutilisateur peut avoir recours la casse-
(combinaison de minuscules et de majuscules) de son choix. Il peut
tre toutefois utile de pouvoir restituer les informations dans une
casse spcique.
Lexemple qui suit illustre le mode opratoire appliquer pour affi-
cher les informations enregistres dans un champ de type Texte en
minuscules, indpendamment de la casse utilise lors de la saisie.
1 En mode Cration, cliquez sur un champ de type de donnes Texte.
Saisissez le caractre < dans la ligne Format sous longlet Gnral.
Lorsquelles seront consultes en mode Feuille de donnes, les don-
nes apparatront en minuscules, quelle que soit la casse initiale-
ment utilise lors de la saisie, aprs validation du contenu du champ.
2 Affichez la table en mode Feuille de donnes en utilisant le bouton
Affichage de longlet Cration.
Figure 3.28 : Les donnes sont alignes gauche, en mode
Feuille de donnes
Figure 3.29 : Ce caractre dnit un format
daffichage du champ en minuscules
172 3. Construire une structure de table optimale
3 Saisissez une chane de caractres en majuscules ou, au choix, en
combinant majuscules et minuscules dans la colonne du champ.
4 Validez la saisie au moyen de la touche [] ou de la touche [].
La chane de caractres est affiche intgralement en minuscules.
Le format dun champ de type de donnes Date/Heure
Pour continuer ce petit tour dhorizon des diffrentes possibilits de
mises en forme offertes par la proprit Format, voici comment
certains formats prdnis peuvent tre appliqus des donnes de
type Date/Heure.
Vous trouverez dans le tableau qui suit les caractristiques des diff-
rents formats prdnis proposs pour le type de donnes Date/
Heure :
Tableau 3.4 : Formats prdfinis de la proprit Format pour un champ de type de donnes
Date/Heure
Format prdfini Description
Date, gnral Lorsque ce format, propos par dfaut, est utilis, les donnes sont affi-
ches dans leur format natif. Ainsi, si seule la date est saisie, aucune heure
ne sera stipule. linverse, si une heure seule est tape, la date nest pas
mentionne. Si linformation saisie est une combinaison de la date et de
lheure, les deux informations sont stockes par Access et retournes lors
de leur consultation en mode Feuille de donnes.
Cet affichage utilise une combinaison des formats de date courte et dheure
dnis dans les paramtres rgionaux de Windows.
Voici quelques exemples de formatages possibles : 05/02/2010,
18:45:12 ou encore 05/02/2010 18:45:12.
Figure 3.30 : La casse utilise
combine majuscules et minuscules
Figure 3.31 : Les donnes renfermes dans le champ sont affiches en minuscules, indpendamment
de la casse utilise lors de la saisie
Figure 3.32 : De nombreux formats
prdnis sont proposs pour effectuer le
formatage de donnes de type
Date/Heure
173 3.2. Exploiter les proprits des champs
Tableau 3.4 : Formats prdfinis de la proprit Format pour un champ de type de donnes
Date/Heure
Format prdfini Description
Date, complet Lorsque ce format est utilis, le format de date longue dni dans les para-
mtres rgionaux de Windows est appliqu (Samedi 13 novembre
2010 par exemple).
Date, rduit Comme son nom lindique, ce format utilise un nombre restreint de caract-
res pour laffichage de la date (13nov10 par exemple).
Date, abrg Lorsque ce format est utilis, le format de date courte dni dans les para-
mtres rgionaux de Windows est appliqu (13/11/2010 par exemple).
Heure, complet Lorsque ce format est utilis, le format dheure dni dans les paramtres
rgionaux de Windows est appliqu (18:45:12 par exemple).
Heure, rduit Ce format utilise un nombre restreint de caractres pour laffichage de
lheure sur un cycle de 12 heures (06:45 PM, par exemple).
Heure, abrg Ce format utilise un nombre restreint de caractres pour laffichage de
lheure sur un cycle de 24 heures (18:45 par exemple).
Lexemple qui suit illustre le mode opratoire appliquer pour affi-
cher des donnes de type Date/Heure dans le format Date, complet :
1 En mode Cration, cliquez sur un champ de type de donnes
Date/Heure. Choisissez Date, complet la ligne Format sous longlet
Gnral.
2 Affichez la table en mode Feuille de donnes en utilisant le bouton
Affichage de longlet Cration.
3 Saisissez une date dans la colonne du champ en la saisissant au
clavier ou au moyen du calendrier accessible par un clic sur le
bouton affich droite de la cellule de type date, dans la feuille de
donnes.
Figure 3.33 : Laffectation du format Date, complet des
donnes de type Date/Heure
Figure 3.34 : La saisie dune date
174 3. Construire une structure de table optimale
4 Validez la saisie au moyen de la touche [] ou de la touche [].
Les donnes sont affiches dans le format Date, complet.
Le format dun champ de type de donnes Oui/Non
Les donnes de types boolennes peuvent prendre deux valeurs
uniques. Par dfaut, les valeurs sont saisies par le biais dune case
cocher. Les valeurs stockes dans les champs boolens sont 1 et 0,
correspondant respectivement aux valeurs Vrai et Faux.
Trois formats peuvent tre dnis pour la saisie des donnes dans
des champs boolens. Ils permettent respectivement davoir recours
aux valeurs Oui/Non, Vrai/Faux ou encore Actif/Inactif.
Afficher les valeurs renfermes dans un champ de type Oui/Non
Lorsque les donnes dun champ boolen (cest--dire de type Oui/Non)
sont affiches dans une feuille de donnes, Access utilise par dfaut un
contrle de type case cocher (prsente comme coche lorsque la valeur du
champ est Oui).
Pour afficher la valeur effectivement enregistre, basculez en mode Cration,
puis cliquez sur longlet Liste de choix aprs avoir plac le point dinsertion
dans la ligne du champ concern. Choisissez Zone de texte sur la liste
propose la proprit Afficher le contrle. En mode Feuille de donnes, les
informations renfermes dans le champ sont prsentes sous la forme de
valeurs affiches telles quelles ont t dnies dans la proprit Format.
Figure 3.35 : Laffichage dans le format choisi
Figure 3.36 : La proprit Format dun
champ de type de donne Oui/Non
Figure 3.37 : Access utilise par dfaut un contrle de type case cocher pour
reprsenter les valeurs des champs Oui/Non, en mode Feuille de donnes
175 3.2. Exploiter les proprits des champs
La proprit Dcimales
Cette proprit est applicable des champs de types de donnes
Numrique et Montaire. Elle permet dindiquer un nombre de dci-
males lors de laffichage des nombres.
Tableau 3.5 : Caractristiques de la proprit Dcimales
Valeur Description
Auto Cette valeur est propose par dfaut. Lorsquelle est utilise, les nombres saisis sont
affichs dans leur format de saisie natif (3,1416 par exemple) ou celui dni au
moyen de la proprit Format.
Figure 3.38 : Les choix proposs sur la liste
de la proprit Afficher le contrle
Figure 3.39 : Le contrle de type case cocher nest plus utilis pour
reprsenter les valeurs des champs Oui/Non, en mode Feuille de donnes
Figure 3.40 : La proprit Dcimales dun champ de type
de donne Numrique
176 3. Construire une structure de table optimale
Tableau 3.5 : Caractristiques de la proprit Dcimales
Valeur Description
0 15 Lorsquune valeur (pouvant atteindre 15 caractres) est saisie, Access affiche la va-
leur numrique avec le nombre de dcimales stipul, en larrondissant la valeur la
plus proche, le cas chant (la valeur initialement saisie est toutefois conserve en
mmoire). Par exemple, la valeur saisie 3,1416 est affiche sous la forme 3,14 si
le nombre de dcimales a t dni 2.
La proprit Lgende
Cette proprit est applicable tous les types de champs.
Les lgendes personnalisent les en-ttes des colonnes des champs
lorsquune table ou une requte est affiche en mode Feuille de
donnes. Vous dcouvrirez plus loin que la valeur de cette proprit
est galement propose par dfaut comme nom affect aux objets
de type Etiquette lors de linsertion de certains contrles dans un
formulaire ou dans un tat.
Dans lillustration qui suit, la quatrime colonne utilise la lgende
dnie comme proprit du champ dont elle affiche les donnes. Les
autres colonnes, qui prsentent les donnes de champs pour les-
quels aucune lgende na t dnie, utilisent les noms de champs
comme en-tte.
La proprit Valeur par dfaut
Cette proprit est applicable tous les types de champs, lexcep-
tion des champs de types NumroAuto et Objet OLE.
Figure 3.41 : La proprit Lgende
dun champ
Figure 3.42 : La lgende est
utilise dans len-tte de la
quatrime colonne en mode
Feuille de donnes
177 3.2. Exploiter les proprits des champs
Elle permet de spcier une valeur qui est propose systmatique-
ment comme valeur du champ lors de lajout dun nouvel enregis-
trement.
Utiliser le Gnrateur dexpression
La saisie de la valeur par dfaut peut tre facilite par lemploi du Gn-
rateur dexpression. Cliquez pour cela sur les trois points, en bout de ligne de
la zone de saisie de la proprit Valeur par dfaut sous longlet Gnral. La
fentre du Gnrateur dexpression est alors affiche. Utilisez linterface du
Gnrateur dexpression pour dnir la valeur par dfaut (vous pouvez avoir
recours des fonctions, des constantes ou encore des oprateurs). Aprs la
fermeture du Gnrateur dexpression, par le bouton OK, lexpression gn-
re est affiche comme valeur de la proprit Valeur par dfaut.
Figure 3.43 : La proprit Valeur par dfaut dun
champ de type de donne Texte
Figure 3.44 : La fentre du
Gnrateur dexpression
Figure 3.45 : La proprit Valeur par dfaut
dun champ de type de donne Date/Heure a
t dnie au moyen du Gnrateur
dexpression
178 3. Construire une structure de table optimale
La proprit Null interdit
Cette proprit sapplique tous les types de champs.
Son rle est dinterdire, lorsquelle est active, labsence de saisie
dans un champ (la saisie devient obligatoire).
Lorsque la valeur Oui est affecte la proprit, la saisie dune valeur
devient obligatoire dans le champ pour tous les enregistrements.
linverse, la valeur Non autorise labsence de saisie dune valeur.
3.3. Appliquer des masques de saisie
La proprit Masque de saisie sapplique aux champs de types Texte,
Numrique, Date/Heure et Montaire. Elle pourrait tre classe parmi
la liste des proprits qui prcdent, mais ltendue de ses domaines
dapplication exige de lui consacrer une section entire.
Les masques de saisie
Les masques de saisie permettent de contrler la saisie des donnes, par
exemple pour rendre obligatoire la saisie de quatre chiffres dans un champ
(vous utilisez dans ce cas le masque 9999). Les masques sont dnis laide
de symboles spciaux, dont vous trouverez la liste complte dans laide
dAccess, accessible par la touche [F1] lorsque vous vous trouvez dans la zone
Masque de saisie.
La nalit de la proprit Masque de saisie est de simplier les saisies
de donnes et dassurer le contrle des valeurs entres. Par exem-
ple, un masque de saisie peut tre cr an de permettre dentrer des
numros de tlphone, imposant le nombre de chiffres saisir et la
manire dont ils doivent ltre.
Les proprits Format et Masque de saisie
Si un masque de saisie est appliqu sur un champ simultanment
laction de la proprit Format, les deux proprits peuvent prsenter des
Figure 3.46 : La proprit Null interdit dun champ de
type de donne Numrique
179 3.3. Appliquer des masques de saisie
interactions rciproques. Dune manire gnrale, la proprit Masque
de saisie est utilise lors de la saisie, alors que la proprit Format est
employe lors de laffichage des donnes.
La dnition dun masque de saisie est facilite grce la prsence
dun Assistant accessible en mode Cration.
Utiliser lAssistant Masque de saisie
Cet Assistant est disponible avec des champs de type Texte et Date/
Heure. Procdez ainsi :
1 Ouvrez la table en mode Cration.
2 Cliquez sur un champ de type de donnes Texte ou Date/Heure.
Cliquez dans la zone de la ligne Masque de saisie sous longlet
Gnral.
3 Cliquez sur le bouton reprsentant trois petits points situ droite
de la zone Masque de saisie.
Vous pouvez galement cliquer du bouton droit dans la ligne de la
proprit Masque de saisie, puis choisir la commande Crer dans le
menu contextuel qui apparat ou encore cliquer sur le bouton
Gnrateur du groupe Outils de longlet Cration.
4 Lorsque Access vous demande si vous souhaitez enregistrer la
table, rpondez Oui.
LAssistant Masque de saisie apparat.
Figure 3.47 : Le lancement de lAssistant
Masque de saisie
Figure 3.48 : Le bouton Gnrateur du groupe Outils
180 3. Construire une structure de table optimale
5 Dans la premire tape de lAssistant, choisissez un exemple de
masque sur la liste Masque de saisie.
Ajouter ou modifier un masque de saisie
Si aucun des masques de saisie qui vous sont proposs ne vous satisfait,
vous pouvez modier lun dentre eux ou en ajouter un nouveau.
Pour cela, la premire tape de lAssistant, cliquez sur le bouton Modier la
liste. Dans la bote de dialogue Assistant Personnaliser le Masque de saisie
qui apparat, modiez un masque existant ou cliquez sur le bouton Ajouter,
symbolis par une toile en bas de la bote de dialogue, pour ajouter et dnir
un nouveau masque. Cliquez sur le bouton Fermer aprs modication.
La liste de masques de saisie proposs uctue selon le type de
donnes du champ sur lequel le masque est appliqu.
Figure 3.49 : Lajout ou la modication dun masque de saisie depuis lAssistant
Figure 3.50 : Les masques de saisie proposs pour un champ de type Texte
181 3.3. Appliquer des masques de saisie
Tester le masque de saisie
Les premire et deuxime tapes de lAssistant Masque de saisie prsen-
tent une zone nomme Essayer dans laquelle le masque choisi peut tre
test. Cliquez dans cette zone, puis saisissez des valeurs en remplacement
des traits de soulignement. Cliquez sur le bouton Suivant. Si le test est
incorrect, une bote de dialogue apparat, empchant de continuer lexcution
de lAssistant tant que la valeur de test errone nest pas corrige ou
supprime.
6 Cliquez sur le bouton Suivant.
7 Conservez ou modiez les paramtres proposs dans la zone
Masque de saisie. Choisissez ventuellement sur la liste Caractre
espace rserv le caractre qui sera affich et remplac par les
valeurs saisies (par dfaut, le caractre utilis est le trait de souli-
gnement). Testez, si vous le dsirez, le masque dans la zone
Essayer. Cliquez sur le bouton Suivant.
Figure 3.51 : Lun des
masques de saisie proposs
pour un champ de type Texte
est ici test dans la zone
Essayer
Figure 3.52 : Ici, les zros du
masque de saisie indiquent une
saisie obligatoire de chiffres
de 0 9
182 3. Construire une structure de table optimale
Ltape suivante saffiche lors de la cration dun champ de type
Texte. Les symboles dans le masque sont des caractres que vous
pouvez choisir dafficher ou non lors de la saisie (des espaces de
sparation dans un numro de scurit sociale, par exemple). Il est
possible de ne pas avoir de diffrence entre les deux aperus propo-
ss cette tape sil ny a pas de symbole dans le masque (comme
celui du code postal).
8 Cochez lune des options proposes (par dfaut, loption Sans les
symboles dans le masque est propose). Cliquez sur le bouton
Suivant.
9 Cliquez sur le bouton Terminer dans la dernire tape de lAssis-
tant.
Dans la proprit Masque de saisie, le masque dni avec lAssistant
est affich.
10 Vriez laction du masque lors de la saisie en mode Feuille de
donnes.
Figure 3.53 : Les symboles peuvent ou non tre affichs
Figure 3.54 : Le masque de saisie dni
par lAssistant pour le champ du numro de
scurit sociale
Figure 3.55 : Le masque de saisie est affich
sur la deuxime ligne en attendant la saisie du
numro de scurit sociale
183 3.3. Appliquer des masques de saisie
Crer un masque de saisie personnalis
Le recours lAssistant Masque de saisie nest pas obligatoire. Vous
pouvez constituer vos propres masques en utilisant les caractres
spciaux ddis cet usage.
Voici la liste de ces caractres et lusage que vous pouvez en faire :
Tableau 3.6 : Caractres spciaux utiliss dans les masques de saisie
Caractre Description
0 Ce caractre impose la saisie dun chiffre compris entre 0 et 9. Les signes
plus (+) et moins () sont refuss. La saisie est obligatoire.
9 Ce caractre limite la saisie un chiffre ou un espace. Les signes plus (+)
et moins () sont refuss. La saisie est facultative.
# Ce caractre limite la saisie un chiffre ou un espace. Les signes plus (+)
et moins () sont accepts. La saisie est facultative.
L Ce caractre impose la saisie dun caractre alphanumrique (lettres de A
Z, majuscules et minuscules). La saisie est obligatoire.
? Ce caractre impose la saisie dun caractre alphanumrique (lettres de A
Z, majuscules et minuscules). La saisie est facultative.
A Ce caractre impose la saisie dun caractre alphanumrique (lettres de A
Z, majuscules et minuscules) ou numrique (chiffre compris entre 0 et 9). La
saisie est obligatoire.
a Ce caractre impose la saisie dun caractre alphanumrique (lettres de A
Z, majuscules et minuscules) ou numrique (chiffre compris entre 0 et 9). La
saisie est facultative.
& Ce caractre impose la saisie dun caractre quelconque, espace compris.
La saisie est obligatoire.
C Ce caractre impose la saisie dun caractre quelconque, espace compris.
La saisie est facultative.
. , : ; / Ces caractres sont utiliss comme sparateurs de dcimales, de milliers,
de date et dheure. Leur usage est dtermin dans les paramtres rgionaux
de Windows.
< Ce caractre convertit le caractre saisi en minuscule.
> Ce caractre convertit le caractre saisi en majuscule.
! Ce caractre est utilis pour que la saisie seffectue de droite gauche.
\ Ce caractre permet dafficher le caractre qui le suit dans le masque lors
de la saisie.
Il est possible daller plus loin, si vous le dsirez, dans la personna-
lisation des masques. En effet, un masque de saisie peut renfermer
jusqu trois sections (spares par des points-virgules).
j La premire section est rserve la description. Elle utilise les
caractres dcrits dans le tableau prcdent. Ainsi, un masque de
184 3. Construire une structure de table optimale
saisie simple, permettant de saisir un numro de tlphone, peut
tre : 0000000000. Toutefois, pour augmenter la lisibilit du numro
saisi, le masque peut tre amlior avec des caractres dits litt-
raux. Dans cet exemple, vous pouvez ainsi ajouter un trait de
sparation entre les groupes de deux chiffres qui composent le
numro de tlphone. Le masque de saisie devient alors :
0000000000. Si un tel masque est dni dans la proprit Mas-
que de saisie, Access le transforme automatiquement en 00\00\00
\00\00.
j La deuxime section du masque indique Access si les caractres
littraux doivent tre enregistrs avec les donnes dans la table.
Deux caractres peuvent tre utiliss dans cette section : 0 indique
que les caractres littraux doivent tre enregistrs avec les don-
nes alors que 1 (ou si la section est laisse vide) signie que seuls
les caractres saisis doivent tre enregistrs. Si le masque de
saisie 00\00\00\00\00;0 est appliqu, la valeur saisie sera pr-
sente en mode Feuille de donnes sous la forme 01-02-03-04-05
et la valeur enregistre sera 01-02-03-04-05. Par contre, si le mas-
que de saisie 00\00\00\00\00;1 est appliqu, la valeur saisie
sera prsente en mode Feuille de donnes sous la forme 01-02-
03-04-05 et la valeur enregistre sera 0102030405.
j La troisime section permet dindiquer si un caractre particulier
doit tre affich lors de la saisie lemplacement des espaces
encore non renseigns par lutilisateur, en remplacement des
traits de soulignement, qui sont les symboles utiliss par dfaut
par Access. Si le masque de saisie 00\00\00\00\00;0;# est ap-
pliqu, la valeur saisie sera prsente dans la feuille de donnes
sous la forme 01-02-03-04-## (en supposant ici que seuls les huit
premiers chiffres ont t saisis).
Figure 3.56 : La saisie du numro de tlphone dans un champ de
donnes de type Texte sur lequel le masque a t appliqu
Figure 3.57 : La saisie du numro de tlphone dans un champ
de donnes de type Texte sur lequel le nouveau masque a t
appliqu
185 3.3. Appliquer des masques de saisie
3.4. Utiliser les listes de choix
Les listes de choix sont des objets trs pratiques lors de la saisie des
informations. Au lieu de saisir les donnes dans une zone de texte,
lutilisateur peut employer une suite dlments (des valeurs cons-
tantes ou dynamiquement puises dans une table) dans laquelle il
effectue son choix. Dun usage extrmement simple, cet objet facilite
et acclre la saisie et surtout vite lentre de donnes contenant
des fautes dorthographe ou des libells diffrents.
Faciliter la saisie avec des listes de valeurs
constantes
La mthode la plus simple pour constituer une liste de choix consiste
utiliser des valeurs constantes.
Vous allez ici employer le champ type de la table Disques, dans la
base de donnes Gestion des disques.accdb utilise dans le premier
chapitre. Ce champ est destin recevoir les donnes Vinyle, CDRom,
DVD ou encore Cassette Dcouvrez comment crer une liste de
choix sur ce champ, an de ne plus avoir saisir manuellement les
informations quil renferme. Procdez ainsi :
1 Ouvrez la table Disques en mode Cration.
2 Cliquez sur le nom du champ, ici type. Dans la colonne Type de
donnes de ce champ, choisissez Assistant Liste de choix sur la liste
propose.
Figure 3.58 : La slection de lAssistant Liste
de choix
186 3. Construire une structure de table optimale
LAssistant Liste de choix saffiche.
3 la premire tape de lAssistant, cochez loption Je taperai les
valeurs souhaites puis cliquez sur Suivant.
Vous allez maintenant saisir les valeurs de la liste de choix.
4 Saisissez la premire valeur dans la cellule de la colonne nomme
Col1, par exemple Vinyle.
5 Pour aller la ligne suivante et y saisir une nouvelle valeur,
appuyez sur la touche []. Saisissez la deuxime valeur, par exem-
ple CDRom. Rptez cette opration pour les autres valeurs de la
liste de choix : tapez DVD et Cassette dans la colonne. Cliquez sur le
bouton Suivant.
Figure 3.59 : Les valeurs renfermes dans la liste de choix seront saisies
Figure 3.60 : La saisie des valeurs de la liste de choix
187 3.4. Utiliser les listes de choix
Utiliser plusieurs colonnes sur une liste de choix
Bien que lusage le plus courant soit celui dune seule colonne, il est
possible de faire apparatre plusieurs colonnes sur une liste. La liste pourrait
ainsi faire apparatre des prnoms dans une premire colonne et des noms de
famille dans une seconde.
la dernire tape de lAssistant, ltiquette propose nest rien
dautre que le nom du champ. Dans la plupart des cas, ce nom est
conserv. En effet, en cas de modication, cest le nom du champ qui
est renomm.
Saisie de plusieurs valeurs dans une liste
LAssistant Liste de choix propose, dans sa dernire tape, une case
nomme Autoriser plusieurs valeurs. Lorsque cette case est coche, il est
possible, lors de la saisie en mode Feuille de donnes, de slectionner
plusieurs valeurs parmi celles proposes dans la liste. Les donnes multiples
sont alors enregistres dans le champ, spares par des points-virgules.
6 Cliquez sur le bouton Terminer.
La table est nouveau affiche en mode Cration.
7 Cliquez sur longlet Liste de choix.
Les proprits de longlet Liste de choix, dont les principales sont
dcrites ci-aprs, ont t compltes lors de la cration de la liste de
choix par lAssistant.
Afficher le contrle indique lutilisation dune liste de choix. La
valeur Zone de liste droulante y apparat.
Origine source indique que les donnes sont issues dune liste de
valeurs xes, et non dune table comme vous le verrez plus loin.
Contenu dtermine les lments de la liste. Cette proprit
contient maintenant les valeurs saisies au moyen de lAssistant,
spares par des points-virgules.
Figure 3.61 : La saisie de plusieurs valeurs depuis une liste de choix
188 3. Construire une structure de table optimale
8 Pour visualiser la liste de choix en mode Feuille de donnes,
utilisez le bouton Affichage de longlet Cration.
Access vous propose denregistrer la table.
9 Acceptez puis cliquez sur la liste de la colonne type.
Les diffrentes valeurs saisies dans lAssistant de la liste de choix
apparaissent.
10 Cliquez sur une valeur de la liste, DVD par exemple.
Celle-ci est insre automatiquement dans le champ.
Crer une liste de valeurs en mode Feuille de donnes
La cration dun champ utilisant une liste de choix est galement possible
depuis le mode Feuille de donnes. Pour cela, cliquez dans la colonne suivant
la colonne qui sera insre. Cliquez sur le bouton Plus de champs du groupe
Ajouter et supprimer de longlet Champs. Choisissez Liste de choix et relation
dans la liste qui apparat. LAssistant Liste de choix saffiche. Suivez ses
tapes comme prcdemment.
Figure 3.62 : Les proprits de
longlet Liste de choix
Figure 3.63 : Le choix dune valeur sur la liste propose
189 3.4. Utiliser les listes de choix
Crer une liste sans utiliser lAssistant Liste de choix
Une liste de choix peut tre constitue directement depuis les proprits
du champ, sans avoir recours lAssistant. En mode Cration, slectionnez le
champ puis cliquez sur longlet Liste de choix. la proprit Afficher le
contrle, choisissez Zone de liste droulante sur la liste propose. la
proprit Origine Source, slectionnez Liste de valeurs. la ligne Contenu,
saisissez les valeurs de la liste en les sparant par des points-virgules.
Faciliter la saisie avec des listes de valeurs
provenant dune table
Facile mettre en uvre, la liste utilisant des valeurs constantes
trouve ses limites ds que les donnes quelle renferme ncessitent
dtre modies ou que certaines dentre elles doivent tre ajoutes
ou supprimes : la liste tant ge, une intervention dans la structure
de la table devient dans ce cas obligatoire.
Lalternative consiste utiliser comme source de donnes de la liste
non plus des valeurs xes, mais les valeurs dun ou de plusieurs
champs dune table. Ainsi, sil vient manquer une valeur sur la liste,
il suffira de lajouter la table. Cette opration est accessible tout
oprateur de saisie puisquelle ne demande pas de connaissances
particulires en matire de bases de donnes.
Vous allez crer la liste de choix du champ theme de la table Disques,
de telle sorte que ses donnes soient puises dans la table des
thmes musicaux. Si un nouveau thme vient apparatre sur le
march, vous naurez qu lajouter dans la table Theme. Nous sup-
posons que la table des thmes musicaux, appele Theme, est cre
dans la base de donnes Gestion des disques.
Figure 3.64 : Le bouton Plus
de champs
190 3. Construire une structure de table optimale
1 Reprenez la base Gestion des disques.accdb. Ouvrez la table Dis-
ques en mode Cration.
2 Cliquez sur le nom du champ theme. Dans la colonne Type de
donnes de ce champ, choisissez Assistant Liste de choix dans la
liste propose.
LAssistant Liste de choix saffiche.
3 Dans lAssistant Liste de choix, cochez loption Je veux que la liste
de choix recherche les valeurs dans une table ou requte. Cliquez sur
le bouton Suivant.
LAssistant Liste de choix affiche toutes les tables de la base de
donnes Gestion des disques, lexception de la table Disques qui est
la table utilise.
4 Slectionnez la table qui contient les donnes qui seront utilises
sur la liste de choix, par exemple la table Theme. Cliquez sur le
bouton Suivant.
Figure 3.65 : Les donnes de la liste proviendront dune table
Figure 3.66 : Le choix de la table, dont certaines donnes seront utilises sur la liste
191 3.4. Utiliser les listes de choix
La liste des champs de la table choisie prcdemment saffiche dans
la colonne Champs disponibles de lAssistant.
5 Cliquez sur le champ contenant les donnes qui devront tre
utilises sur la liste de la colonne Champs disponibles, ici le champ
nom. Glissez-le dans la colonne Champs slectionns en cliquant
sur le bouton >. Cliquez sur le bouton Suivant.
Slectionner tous les champs
Si vous souhaitez glisser tous les champs de la colonne Champs disponi-
bles dans la colonne Champs slectionns, utilisez le bouton >>.
LAssistant propose de trier les lments de la liste dans un ordre
croissant ou dcroissant.
6 Choisissez dans la premire zone le premier champ trier. Pour
passer dun tri croissant un tri dcroissant, utilisez le bouton
situ droite de la zone.
Ce bouton, lorsquil est activ, affiche conscutivement les libells
Croissant et Dcroissant. Les zones suivantes pourraient tre utilises
pour dnir des critres de tri secondaires.
7 Cliquez sur le bouton Suivant.
Figure 3.67 : La slection du champ utilis dans la liste
192 3. Construire une structure de table optimale
Les donnes du champ de la table qui seront utilises sur la liste de
choix (ici les valeurs du champ nom de la table Theme) sont listes
dans lAssistant.
La case cocher Colonne cl cache (recommand) permet dindiquer
si la colonne renfermant les cls primaires de la table utilise comme
source de la liste de choix doit tre masque (coche) ou affiche
(non coche). Si la table source nutilise pas de cls primaires, cette
case nest pas propose cette tape de lAssistant.
8 Modiez ventuellement la largeur de la colonne en tirant son
en-tte vers la droite. Cliquez sur le bouton Suivant.
Figure 3.68 : Le choix de lordre de prsentation des valeurs de la liste
Figure 3.69 : Laugmentation de la largeur de la colonne
193 3.4. Utiliser les listes de choix
la dernire tape de lAssistant, ltiquette propose porte le nom
du champ contenant la liste de choix.
9 Conservez ce nom. Cliquez sur le bouton Terminer.
Lors de la cration de la liste de choix, Access cre une relation entre
la table ouverte et la table utilise pour gnrer les valeurs de la liste
de choix ; dans cet exemple les tables Disques et Theme.
La notion de relation est explique au chapitre 4 Contrler la co-
hrence des donnes.
LAssistant Liste de choix demande conrmation de lenregistrement
de la table.
10 Cliquez sur le bouton Oui pour valider lenregistrement de la table,
ncessaire la cration de la relation et de la liste de choix.
Si le champ contenait des valeurs de type Texte avant la cration de
la liste de choix, Access vous avertit que le type de donnes nest pas
appropri et quil doit tre modi.
11 Pour continuer, cliquez sur le bouton Oui.
Le type de donnes du champ a chang : il est maintenant de type
Numrique.
Changement de type du champ
Access change le type du champ sur lequel est applique la liste car la cl
primaire de la table va y tre stocke et que celle-ci est de type numrique.
Vous pouvez maintenant visualiser en mode Cration de la table les
proprits du champ modies par lAssistant.
12 Cliquez sur longlet Liste de choix.
Les principales proprits de longlet Liste de choix, modies par
lAssistant, sont les suivantes :
Figure 3.70 : La conrmation de lenregistrement de la table
194 3. Construire une structure de table optimale
Afficher le contrle indique lutilisation dune liste de choix. La
valeur Zone de liste droulante y apparat ;
Origine source indique que les donnes sont issues dune table ou
dune requte ;
Contenu dtermine les lments de la liste, extraits de la table
dorigine, par une requte ;
Les requtes sont expliques plus loin dans cet ouvrage au chapi-
tre 5 Extraire des donnes.
Colonne lie indique, dans le cas dune liste plusieurs colonnes,
dans quelle colonne de la liste de choix la valeur stocke dans le
champ doit tre puise. La colonne utilise est gnralement la cl
primaire de la table source ;
Largeur de colonne permet de dterminer les largeurs des colon-
nes de la liste. La valeur 0 permet de masquer ici la premire
colonne, qui contient la cl primaire.
13 Pour visualiser la liste de choix en mode Feuille de donnes,
utilisez le bouton Affichage de longlet Cration.
Figure 3.71 : Les proprits de la liste de
choix
Figure 3.72 : Le test de la liste de choix, en
mode Feuille de donnes
195 3.4. Utiliser les listes de choix
Le bouton Modifier les recherches
En mode Cration, le bouton Modier les recherches du groupe Outils de
longlet Cration offre une autre mthode pour crer un nouveau champ
utilisant une liste de choix.
3.5. Appliquer des rgles de validation
Les rgles de validation des champs jouent un rle prpondrant
dans loptimisation de lapplication et doivent tre dnies au niveau
des tables. Elles permettent de formater les champs an de les
prparer recevoir les donnes. Vous verrez plus loin quil est pos-
sible dappliquer ces rgles lors de la saisie des donnes dans les
formulaires, qui sont des outils de capture et de prsentation des
informations. Toutefois, le formatage des donnes au niveau des
formulaires, et non au niveau des tables, est extrmement dange-
reux. En effet, vous pouvez accder une table depuis plusieurs
formulaires. Imaginez quun champ de cette table ne doive en aucun
cas tre vide, ce champ devant contenir un numro de scurit
sociale par exemple. Si vous navez pas verrouill les champs au
niveau de la table par des rgles de validation, il vous suffit doublier
dempcher la saisie dune chane vide dans un formulaire pour
quune porte soit ouverte aux erreurs. Ces erreurs peuvent avoir des
consquences dramatiques sur la suite des traitements.
La dnition des rgles de validation au niveau des formulaires
augmente le temps de dveloppement de lapplication, puisque le
traitement doit tre rpt dans chaque formulaire. Elles ne doivent
donc tre utilises que dans des cas bien particuliers, pour ajouter
une "surrgle". Voici un exemple :
Une table contient un champ de type date. Les dates saisies dans ce
champ doivent tre comprises entre la date de cration de lentre-
prise (le 01/01/2006) et la date de cessation dactivit de lentreprise
(qui a t xe au 31/12/2056). Les rgles de validation qui emp-
chent la saisie dune date en dehors de ces limites doivent tre
dnies une fois pour toutes au niveau de la table an de la protger
pendant toute sa dure de vie (50 ans). Quelles que soient les volu-
tions apportes lapplication pendant la priode dactivit, le
Figure 3.73 : Le bouton Modier
les recherches
196 3. Construire une structure de table optimale
concepteur de la base de donnes est certain que les donnes conte-
nues dans ce champ conserveront leur intgrit initiale. En revanche,
il est facile dimaginer un formulaire utilis pour la saisie des don-
nes pendant une anne comptable (du 01/01/2006 au 31/12/2006 par
exemple). Ce formulaire pourra alors appliquer des rgles de valida-
tion du champ pour empcher la saisie de dates en dehors des dates
de dbut et de n de lexercice en cours. Dans ce cas, le formulaire
aura t utilis pour ajouter des "surrgles" aux rgles dj dnies
dans la table an de rpondre une situation particulire.
La mise en uvre des rgles de validation seffectue au moyen de la
proprit Valide si, prsente la fois dans les champs et dans les
tables, et de la proprit Message si erreur, complmentaire la
premire.
Appliquer une rgle de validation sur un champ
Vous allez maintenant apprendre appliquer des rgles de validation
sur un champ, an de prparer les champs recevoir les donnes.
Comme cela a t crit prcdemment, il est galement possible
dappliquer des rgles analogues dans les formulaires, mais cette
solution est gnralement moins efficace car plusieurs formulaires
peuvent utiliser la mme table. Il faut alors rpter les rgles dans
chaque formulaire, opration synonyme de perte de temps et de
risques derreurs. Rptons-le : en verrouillant une fois pour toutes
lentre dinformations au niveau le plus bas, cest--dire dans la
table, vous tes certain quune application mal conue ne pourra pas
dtruire la cohrence de linformation stocke dans un champ (par la
saisie dune date en dehors de la fourchette initialement dnie par
exemple), comme le montre lexercice qui suit.
Il existe de nombreux masques de saisie, formatages et autres rgles
de validation des champs, nhsitez pas les essayer.
Encore une prcision : les rgles de validation appliques aux
champs sont vries, lors de la saisie, lorsquon quitte le champ sur
lequel sapplique la rgle pour passer au suivant. Elles sappliquent
donc au champ en cours mais ne peuvent porter simultanment sur
plusieurs champs.
La rgle de validation est dnie dans la proprit Valide si du champ
en mode Cration de la table. Si la donne saisie dans le champ est
refuse, un message davertissement saffiche. Ce message peut tre
prcis dans la proprit Message si erreur.
197 3.5. Appliquer des rgles de validation
Vous allez maintenant dcouvrir comment dnir une rgle de vali-
dation sur un champ en utilisant la table Artistes de la base de
donnes Gestion des disques.
Dans la table Artistes, vous souhaitez rendre obligatoire la saisie de la
date de naissance entre deux bornes (entre le 01/01/1900 et
aujourdhui) par la rgle de validation Valide si, qui permettra de
contrler la valeur entre lorsque lutilisateur quittera le champ. La
donne sera valide si la date saisie est comprise entre les deux
bornes.
1 Reprenez la base Gestion des disques.accdb. Ouvrez la table Artis-
tes en mode Cration.
2 Cliquez sur le champ Date de naissance. Slectionnez la proprit
Valide si dans longlet Gnral.
Cette proprit est applicable tous les types de champs, sauf aux
objets de type OLE et NumroAuto.
Vous pouvez saisir directement lexpression, mais pour ne pas faire
derreur de syntaxe, vous allez utiliser le Gnrateur dexpression.
3 Cliquez sur les trois petits points droite de la zone Valide si pour
lancer le Gnrateur dexpression.
Le Gnrateur dexpression
Il sagit dun outil trs complet et trs pratique, gnralement accessible
lorsque vous avez composer une expression, cest--dire une phrase sous
Access, utilisant des oprateurs liant plusieurs objets (fonctions, constantes,
tables, requtes, etc.). Les lments affichs dpendent de la situation en
cours. Le Gnrateur prsente deux grands avantages : laffichage dune
vision panoramique des objets disponibles un moment donn et linsertion
Figure 3.74 : Ce bouton
permet douvrir le
Gnrateur dexpression
198 3. Construire une structure de table optimale
des lments en respectant la syntaxe (ce qui vous vite davoir
acqurir celle-ci ou de faire des erreurs de syntaxe).
La bote de dialogue du Gnrateur dexpression saffiche.
4 Dans ce dernier, choisissez les catgories Oprateurs puis Compa-
raison. Double-cliquez sur loprateur Entre.
Lexpression Entre Expr ET Expr saffiche dans la zone ddition
de la partie suprieure de la bote de dialogue.
Lexpression doit tre personnalise.
5 Dans la zone ddition, slectionnez la premire chane Expr ,
dveloppez llment dexpression Fonctions, slectionnez Fonc-
tions intgres puis la catgorie Date/Heure. Double-cliquez sur
CDate.
Figure 3.75 : Le Gnrateur dexpression
Figure 3.76 : Lutilisation des fonctions
intgres, dans le Gnrateur dexpression
199 3.5. Appliquer des rgles de validation
Le rle de la fonction CDate dans lexpression
Lorsque vous saisissez "01/01/1900", la valeur nest pas reconnue
comme une date mais comme une chane de caractres (consquence de
lutilisation des guillemets). La valeur ne pourrait pas tre saisie sans guille-
mets, sous peine de voir Access effectuer lopration suivante : 01 divis par
01 divis par 1900. La fonction CDate (Character to Date) a pour mission de
transformer la chane de caractres en une valeur au format Date.
6 Dans la zone ddition, cliquez sur expression puis sur llment
dexpression Constantes. Double-cliquez sur ""-ChaneVide. Entre
les deux guillemets, dans la zone ddition, saisissez 01/01/1900.
7 Slectionnez la deuxime chane Expr dans la zone ddition.
Dveloppez llment dexpression Fonctions, slectionnez Fonc-
tions intgres puis la catgorie Date/Heure. Double-cliquez sur la
valeur dexpression Maintenant.
Vous obtenez lexpression illustre dans la gure suivante :
Figure 3.77 : Lutilisation des constantes, dans
le Gnrateur dexpression
Figure 3.78 : Lexpression est maintenant
rdige
200 3. Construire une structure de table optimale
Le rle de la fonction Maintenant() dans lexpression
Comme son nom lindique, cette fonction va extraire la date et lheure du
systme dexploitation.
8 Cliquez sur OK pour fermer le Gnrateur dexpression.
Lexpression est affiche dans la ligne Valide si du champ. Saisissez
maintenant le message davertissement afficher en cas derreur de
saisie.
9 Dans la proprit Message si erreur, tapez Saisissez une date de
naissance entre le 1er janvier 1900 et aujourdhui.
Comme lindique le nom de la proprit, ce message sera affich si
lutilisateur tente de transgresser la rgle de validation.
La proprit Message si erreur
La proprit Message si erreur permet dafficher un message lorsque des
donnes ne respectant pas la proprit Valide si sont saisies. Dans ce cas, le
message saisi dans la proprit Message si erreur saffiche dans une bote de
dialogue.
Il ne reste plus qu tester la saisie en mode Feuille de donnes.
10 Affichez la table Artistes en mode Feuille de donnes et
enregistrez-la. Essayez de saisir une date de naissance en dehors
des bornes dnies et observez le rsultat aprs avoir valid la
saisie.
Figure 3.79 : La proprit
Message si erreur dun champ de
type de donne Date/Heure
Figure 3.80 : La saisie dune
donne errone est refuse
et le message derreur
saffiche
201 3.5. Appliquer des rgles de validation
Appliquer une rgle de validation sur une table
Il est galement possible dappliquer des rgles de validation au
niveau de la table (et pas seulement au niveau des champs). Plus
puissantes, elles autorisent la combinaison des donnes de plu-
sieurs champs. Voici un exemple simpli : une table qui utiliserait
deux champs, le premier pour stocker un montant hors taxes, le
second pour enregistrer le montant de la TVA, pourrait se voir appli-
quer une rgle de validation qui interdirait la saisie, dans un troi-
sime champ, dune valeur diffrente de la somme des valeurs des
deux premiers.
Il nest pas possible de dnir une rgle de validation pour un champ
en faisant rfrence un autre champ. Il est obligatoire de dnir la
rgle au niveau de la table.
La rgle de validation est dnie dans la proprit Valide si de la
table. Si la donne saisie dans le champ est refuse, un message
davertissement saffiche. Ce message peut tre prcis dans la pro-
prit Message si erreur.
Imaginez maintenant la situation suivante : une table, nomme Ta-
ble_validation, contient trois champs numriques : Total_HT, Total-
_TVA et Total_TTC.
Pour que les donnes soient cohrentes, il importe que Total_TTC soit
gal la somme de Total_HT et de Total_TVA. Il vous est alors possible
de traiter ce problme en appliquant une rgle de validation de table
non plus au niveau du champ, mais au niveau de la table.
1 En mode Cration de la table, cliquez sur le bouton Feuille des
proprits du groupe Afficher/Masquer de longlet Cration ou uti-
lisez la combinaison des touches [Alt]+[], ou encore cliquez du
bouton droit puis choisissez Proprits dans le menu contextuel
qui saffiche.
Le volet Feuille de proprits saffiche droite de la structure de la
table.
2 Cliquez dans la zone Valide si, puis sur le bouton Gnrer symbo-
lis par les trois petits points se trouvant droite de la zone de
lancement du Gnrateur dexpression (voir Figure 3.81).
3 Dans la liste Elments dexpression du Gnrateur dexpression,
cliquez sur Table_validation. Double-cliquez sur le champ Total_TTC
de la liste Catgories dexpressions.
202 3. Construire une structure de table optimale
4 Dans la zone ddition, saisissez le caractre =, puis double-cliquez
sur le champ Total_HT dans la liste Catgories dexpressions. Sai-
sissez +, puis double-cliquez sur le champ Total_TVA pour obtenir
le rsultat suivant :
5 Cliquez sur OK pour fermer le Gnrateur dexpression.
La formule est affiche dans la proprit Valide si de la table. Saisis-
sez maintenant le message davertissement afficher en cas derreur
de saisie :
Figure 3.81 : Le Gnrateur dexpression sera utilis pour rdiger la rgle de validation sur la table
Figure 3.82 : Lcriture de la formule dans le Gnrateur dexpression
203 3.5. Appliquer des rgles de validation
6 Dans la proprit Message si erreur, tapez La somme du Total_HT et
du Total_TVA doit tre gale au Total_TTC.
Comme lindique le nom de la proprit, ce message sera affich si
lutilisateur tente de transgresser la rgle de validation.
7 Enregistrez et affichez la table en mode Feuille de donnes en
utilisant le bouton Affichage de longlet Cration. Testez la rgle de
validation en tentant denfreindre la rgle de validation de la table.
La premire ligne, qui respectait la rgle de validation de la table, a
t saisie sans problme. En revanche, Access vous empche de
valider la deuxime ligne (lorsque vous tentez de passer la ligne
suivante par exemple) car les rgles de validation de la table ne sont
pas respectes.
Le bouton Tester les rgles de validation
Le bouton Tester les rgles de
validation du groupe Outils de longlet
Cration permet, lorsquil est cliqu, de
vrier les rgles de validation des en-
registrements. Il teste galement si les
donnes de la table respectent les proprits NullInterdit et ChaneVideAuto-
rise.
Les champs calculs, une nouveaut dAccess 2010
Cette version dAccess prsente dsormais un nouveau type de champ,
nomm "Champ calcul", propos dans la liste des types de donnes, en
mode Cration. Il permet, au moyen du Gnrateur dexpression, de dnir la
valeur dun champ en fonction de celles dautres champs de la table.
Figure 3.83 : La rgle de
validation de la table
Figure 3.84 : Le message
derreur apparat lors de la
transgression de la rgle de
validation, aprs la
validation de la troisime
ligne
Figure 3.85 : Le bouton
Tester les rgles de
validation du groupe Outils
204 3. Construire une structure de table optimale
Dans cet exemple, la valeur TTC, somme de la valeur HT et du montant
de la TVA, pourrait tre calcule facilement par ce type de champ, vitant
les erreurs de calcul et faisant gagner du temps loprateur de saisie.
3.6. Indexer les donnes
Stock de manire transparente pour lutilisateur, un index est un
ensemble dinformations permettant un classement logique des en-
registrements, selon un ordre diffrent de lordre physique dinscrip-
tion des enregistrements dans la table. Ainsi, une table renfermant
des noms de personnes pourra tre indexe sur un champ Nom, sur
un champ Prnom ou sur la combinaison des deux, par exemple.
Index multichamps
Un index peut tre constitu sur un maximum de dix champs.
Fondamentalement, un index fonctionne comme un tri (qui, lui aussi,
effectue un classement des donnes selon un critre diffrent de
lordre de saisie des donnes dans la table), mais il permet dautres
traitements comme lempchement de la cration de doublons (va-
leurs identiques saisies dans le champ de plusieurs enregistrements
dune table). Les index permettent galement dacclrer les tris ou
encore la vitesse dexcution de certains traitements (que vous
navez pas encore dcouverts) tels que les requtes et les regroupe-
ments. La cl primaire dune table est indexe automatiquement. Les
doublons (cest--dire les saisies, dans un champ, de donnes iden-
tiques pour plusieurs enregistrements) peuvent ou non tre autori-
ss dans les index.
Crer un index sur un champ
Les index utilisant un champ unique sont les plus frquents. Proc-
dez ainsi :
1 Ouvrez une table en mode Cration.
2 Placez le point dinsertion dans la ligne du champ sur lequel vous
souhaitez crer un index.
205 3.6. Indexer les donnes
3 Dans la partie infrieure de la fentre, cliquez dans la zone de la
proprit Index, puis sur Oui - Avec doublons ou sur Oui - Sans
doublons dans la liste affiche.
Champs non indexs
Les champs de type de donnes Mmo, Lien hypertexte, Objet OLE et
Pice jointe ne peuvent tre indexs.
La proprit Index utilise les valeurs suivantes :
Tableau 3.7 : Les valeurs proposes dans la proprit Index
Valeur Description
Non Cette valeur, propose par dfaut, indique quaucun index nest cr
sur le champ.
Oui Avec doublons Lorsque cette valeur est choisie, un index autorisant les doublons est
constitu.
Oui Sans doublons Lorsque cette valeur est choisie, un index nautorisant pas les doublons
est constitu.
Les index sur les cls primaires
Lorsquune cl primaire est cre sur un seul champ dune table, Access
impose lutilisation dun index sans doublon.
Lordre de lindex peut tre modi.
Figure 3.86 : Lindex peut autoriser ou non
les doublons
206 3. Construire une structure de table optimale
4 Cliquez sur le bouton Index du groupe Afficher/Masquer de longlet
Cration.
La fentre Index apparat. Lindex dni dans la proprit Index
utilise un tri croissant par dfaut.
5 Pour modier lordre de lindex, slectionnez Dcroissant dans la
colonne Ordre de tri an dappliquer un ordre dcroissant.
Crer un index sur plusieurs champs
Un index peut utiliser plusieurs champs pour dterminer un ordre
logique aux donnes de la table. Lordre des champs choisis dter-
mine la hirarchie de lordonnancement (le classement est effectu
sur le premier champ, sur le deuxime, sur le troisime, etc.). Proc-
dez ainsi :
1 Ouvrez une table en mode Cration.
2 Cliquez sur le bouton Index du groupe Afficher/Masquer de longlet
Cration.
La fentre Index saffiche. Voici comment dnir la premire ligne de
lindex :
3 Dans la premire ligne vide de la colonne Nom de lindex, tapez le
nom de lindex.
Vous pouvez lui attribuer le nom de lun des champs utiliss dans
lindex ou choisir un autre nom.
Figure 3.87 : Le bouton Index du groupe Afficher/Masquer
Figure 3.88 : Le choix de
lordre de lindex
207 3.6. Indexer les donnes
4 Dans la colonne Nom du champ, slectionnez le premier champ
utilis dans lindex lintrieur de la liste propose.
Lors de la dnition des lignes suivantes qui composent lindex, la
saisie du nom de lindex nest pas rpte (seuls les champs et
lordre dans lequel ils sont classs sont indiqus).
5 Dans la deuxime ligne, conservez la colonne Nom de lindex vide.
Dans la colonne Nom du champ, slectionnez le deuxime champ
de lindex.
6 Rptez ventuellement ltape prcdente pour intgrer dautres
champs dans lindex.
Lordre de lindex peut tre modi. Lordre croissant est propos par
dfaut lors de la slection dun champ utilis dans lindex.
7 Si vous dsirez le modier, choisissez Dcroissant dans la colonne
Ordre de tri des champs concerns dans la fentre Index.
Les index multichamps peuvent tre utiliss pour empcher la cra-
tion de doublons constitus par associations de valeurs identiques
sur plusieurs champs (des personnes portant la fois le mme nom,
le mme surnom et le mme prnom, par exemple) et garantir ainsi
lunicit de chaque enregistrement de la table.
8 Dans la fentre Index, cliquez sur le nom de lindex.
9 Sous la rubrique Proprits de lindex, choisissez Oui sur la liste
propose de la proprit Unique.
La proprit Unique
La proprit Unique de lobjet Index indique, lorsquelle prend la valeur
Oui, que les doublons ne sont pas autoriss dans lindex (et quils le sont
lorsquelle prend la valeur Non).
Figure 3.89 : Exemple
dindex utilisant trois
champs
208 3. Construire une structure de table optimale
Un paramtre supplmentaire peut venir caractriser le fonctionne-
ment de lindex :
10 Sous la rubrique Proprits de lindex, choisissez Oui dans la liste
propose de la proprit Ignorer Nulls.
La proprit Ignorer Nulls
Cette proprit permet dindexer ou non les champs renfermant des va-
leurs Null. Lorsque la valeur de la proprit est Oui, ces champs sont exclus
de lindex (et ils ne le sont pas lorsque la valeur de la proprit est Non).
Supprimer un index
Un index peut facilement tre supprim. Les donnes de la table nen
sont alors nullement affectes.
1 Ouvrez une table dans laquelle lindex est supprimer en mode
Cration.
2 Cliquez sur le bouton Index du groupe Afficher/Masquer de longlet
Cration.
3 Dans la fentre Index, slectionnez la ou les lignes de lindex
supprimer, puis appuyez sur la touche [Suppr].
3.7. Cas pratique
An dassocier quelques images concrtes aux nombreuses notions
thoriques dveloppes dans ce chapitre, vous allez vous exercer
maintenant sur la base de donnes de gestion de livres dj utilise
dans les cas pratiques des chapitres prcdents. Les structures des
tables Contacts et Livres seront notablement optimises.
Figure 3.90 : Un index sans
doublons est ici constitu
sur trois champs de la table
et les valeurs nulles ne
seront pas indexes
209 3.7. Cas pratique
Optimiser la table Contacts
Vous allez apporter des modications la structure et aux proprits
des champs de la table Contacts an de faciliter la saisie en mode
Feuille de donnes selon le tableau suivant :
Tableau 3.8 : Les amliorations apportes la structure de la table Contacts
Nom de champ Lgende ajouter Amlioration apporte
nocontact Numro
nom Nom du contact Les donnes saisies dans le champ appara-
tront en majuscules, quelle que soit la casse
utilise lors de la saisie.
prenom Prnom du contact
titre Titre Le titre sera choisi parmi une liste de valeurs
(Monsieur, Madame, Mademoiselle, Matre).
societe Nom de la socit La taille du champ sera ramene 150 caract-
res.
adresse Adresse
cp Code postal La saisie seffectuera sur 5 chiffres obligatoire-
ment.
ville Ville Les donnes saisies dans le champ appara-
tront en majuscules, quelle que soit la casse
utilise lors de la saisie.
departement Dpartement
pays Pays
telephone Numro de tlphone Un masque de saisie spcique la saisie dun
numro de tlphone de 10 chiffres sera appli-
qu.
telecopie Numro de tlcopie Un masque de saisie spcique la saisie dun
numro de tlcopie de 10 chiffres sera appli-
qu.
courriel Courriel
internet Site web Par dfaut, la chane de caractres www. sera
propose dans le champ.
commentaire Commentaire
Attribuer une lgende chaque champ
1 Ouvrez la base de donnes Livres.accdb, dveloppe dans la sec-
tion Cas pratique du chapitre prcdent.
Tlchargement de la base de donnes
Vous trouverez la base de donnes utilise ici, Livres.accdb, sur le site de
Micro Application (www.microapp.com) dans le dossier Chapitre02.
210 3. Construire une structure de table optimale
2 Dans le Volet de navigation, cliquez du bouton droit sur la table
Contacts puis choisissez Mode Cration dans le menu contextuel
qui apparat.
Pour chaque champ, vous allez saisir une lgende.
3 Pointez sur le premier champ nocontact. Saisissez Numro dans la
zone Lgende sous longlet Gnral.
4 Pour les autres champs, saisissez les lgendes dnies dans le
tableau prcdent.
5 Affichez la table Contacts en mode Feuille de donnes pour vrier
que les en-ttes de colonnes utilisent les lgendes. Pour cela,
cliquez sur le bouton Affichage de longlet Cration. Enregistrez la
table.
Appliquer un format majuscule
Il est dusage courant de prsenter les noms de famille et les noms
de ville en majuscules. Ne pouvant pas prvoir la casse (cest--dire
la combinaison des minuscules et des majuscules) quutilisera lop-
rateur de saisie, vous appliquerez le format majuscule sur les
champs nom et ville.
1 Affichez la table Contacts en mode Cration en cliquant sur le
bouton Affichage de longlet Feuille de donnes.
2 Saisissez le caractre > dans la zone Format sous longlet Gnral
des champs nom et ville.
Figure 3.91 : Les lgendes sont affiches dans les en-ttes des colonnes en mode Feuille de donnes
Figure 3.92 : Le format majuscule sera appliqu lors de laffichage des donnes dans le champ Ville
de la table Contacts
211 3.7. Cas pratique
Modier la taille du champ
Rappelez-vous que la taille par dfaut dun champ de type de don-
nes Texte est de 255 caractres. Or, certaines donnes, comme
celles que renferme le champ societe, ne ncessitent pas un tel
espace pour tre correctement saisies.
Vous allez modier la taille du champ societe de la table Contacts.
1 La table Contacts est toujours affiche en mode Cration.
Vous allez ramener la taille du champ 150 caractres. Cette taille est
adapte la saisie de la majorit des zones contenant les libells des
socits.
2 Cliquez sur le champ societe, puis sur Taille du champ sous longlet
Gnral. Entrez la valeur 150 dans cette zone.
Affecter une valeur par dfaut
La plupart des adresses Internet commencent par www. Vous allez
proposer cette valeur par dfaut lors de la saisie. Pour cela :
1 Affichez la table Contacts en mode Cration.
2 Cliquez sur le champ internet, puis sur Valeur par dfaut sous
longlet Gnral. Entrez la valeur www. dans cette zone.
Appliquer des masques de saisie
Vous allez appliquer des masques de saisie sur le code postal, les
numros de tlphone et de tlcopie de la table Contacts.
Figure 3.93 : La saisie de la valeur par dfaut du champ Internet de la table Contacts
212 3. Construire une structure de table optimale
Commencez par crer un masque de saisie pour le champ cp qui
reoit le code postal. Vous empcherez ainsi la saisie de texte dans ce
champ :
1 Affichez la table Contacts en mode Cration.
2 Cliquez sur le champ cp, puis sur Masque de saisie sous longlet
Gnral. Cliquez sur le bouton reprsentant trois petits points
droite de la zone Masque de saisie.
3 Acceptez denregistrer la table Contacts en rpondant Oui dans la
bote de dialogue qui apparat.
LAssistant Masque de saisie apparat.
4 Dans la premire tape de lAssistant, choisissez Code Postal
(France) sur la liste Masque de saisie. Cliquez sur le bouton Suivant.
5 Conservez les paramtres proposs dans ltape suivante (dans la
zone Masque de saisie, les zros indiquent une saisie obligatoire de
chiffres de 0 9). Cliquez sur le bouton Suivant.
6 Conservez encore les paramtres proposs. Cliquez sur le bouton
Suivant.
Ici, il ny a pas de diffrence entre les deux aperus correspondant
aux options Avec les symboles dans le masque et Sans les symboles
dans le masque. En effet, il ny a pas de symbole dans le masque du
code postal.
7 Cliquez sur le bouton Terminer dans la dernire tape de lAssis-
tant.
Figure 3.94 : Le choix du masque de saisie : Code Postal
213 3.7. Cas pratique
Le masque de saisie choisi avec lAssistant est affich dans la ligne
Masque de saisie du champ cp.
Vous allez maintenant crer un masque de saisie pour le numro de
tlphone et le numro de tlcopie, de manire obtenir des
numros formats tels que 06 03 06 03 06. Pour cela :
8 Placez-vous dans le champ telephone. Cliquez sur la zone Masque
de saisie, sous longlet Gnral, puis sur le bouton Gnrateur du
groupe Outils de longlet Cration, dans le Ruban. Acceptez den-
registrer la table Contacts. Dans lAssistant Masque de saisie qui
apparat, choisissez le masque Numro de tlphone puis cliquez
sur le bouton Suivant. Dans la bote de dialogue suivante, choisis-
sez # sur la liste Caractre espace rserv. Cliquez sur le bouton
Suivant. Dans la bote de dialogue suivante, choisissez loption
Avec les symboles dans le masque. Cliquez sur le bouton Suivant
puis sur Terminer.
9 Procdez de la mme faon pour le champ telecopie an de lui
appliquer un masque de saisie identique.
Affecter une liste de valeurs constantes un champ
Vous allez crer une liste de choix sur le champ titre de la table
Contacts :
1 Affichez la table Contacts en mode Cration.
Figure 3.95 : Le masque de
saisie du champ cp
Figure 3.96 : Le masque de saisie du champ telecopie
214 3. Construire une structure de table optimale
2 Cliquez sur le champ titre. Dans la colonne Type de donnes de ce
champ, choisissez Assistant Liste de choix sur la liste.
3 Dans la premire tape de lAssistant Liste de choix, cochez lop-
tion Je taperai les valeurs souhaites. Cliquez sur Suivant.
4 Dans ltape suivante de lAssistant, saisissez les valeurs Monsieur,
Madame, Mademoiselle, Matre dans la colonne et cliquez sur Suivant.
Ltiquette propose ici nest rien dautre que le nom du champ, que
vous allez conserver.
5 Cliquez sur le bouton Terminer.
6 Cliquez sur longlet Liste de choix pour visualiser les renseigne-
ments fournis lAssistant dans la proprit Contenu du champ
titre.
Tester les modications sappliquant lors de la saisie
Vous allez saisir un enregistrement dans la table des contacts, aprs
son optimisation, pour constater les consquences des modica-
tions que vous venez dapporter.
1 Affichez la table Contacts en mode Feuille de donnes sans oublier
de lenregistrer.
2 Placez-vous dans la premire ligne vide de la table an dajouter
un nouvel enregistrement.
Figure 3.97 : Longlet Liste de
choix du champ titre
215 3.7. Cas pratique
3 Dans la colonne Nom du contact, saisissez un nom en minuscules
et validez-le, par exemple nova. Saisissez galement un nom de
ville en minuscules dans la colonne Ville, par exemple metz.
Le nom du contact et celui de la ville saffichent en majuscules aprs
validation des valeurs saisies.
4 Cliquez dans la colonne Titre.
La liste de choix apparat.
5 Choisissez une civilit, par exemple Monsieur.
6 Saisissez le code postal compos de 5 chiffres dans la colonne
Code postal, par exemple 57000.
7 Dans la colonne Numro de tlphone, remplacez chaque dise du
masque de saisie par un chiffre, par exemple 0387000000. Faites de
mme pour la saisie du numro de tlcopie dans la colonne
Numro de tlcopie.
Si vous validez une saisie incomplte, Access affiche un message et
vous empche de continuer.
8 Cliquez dans ce cas sur le bouton OK de la bote de dialogue
affiche. Continuez la saisie en respectant le masque de saisie ou
annulez la saisie en utilisant la touche [chap].
9 Dans la colonne Site web, saisissez la suite de ladresse du site
Internet en utilisant la touche [F2] pour passer en mode ddition.
Compltez de mme les autres colonnes.
10 Fermez et enregistrez la table Contacts.
Figure 3.98 : La saisie du numro de tlcopie
Figure 3.99 : Le dbut de la ligne en cours de saisie
216 3. Construire une structure de table optimale
Optimiser la table Livres
Vous allez maintenant apporter des modications la structure et
aux proprits des champs de la table Livres selon le tableau suivant,
an de faciliter la saisie en mode Feuille de donnes :
Tableau 3.9 : Les amliorations apportes la structure de la table Livres
Nom de champ Lgende ajouter Amlioration apporte
nolivre Numro
titre Titre de livre La saisie dans ce champ devra tre obliga-
toire.
anneecopyright Anne de copyright La saisie sera effectue sur 4 chiffres.
isbn NISBN Un masque de saisie spcique la saisie
dune telle donne sera cr.
datesortie Date de sortie
prixHT Prix HT Le prix ne devra pas tre ngatif.
remarque Commentaire
collection Collection Le choix de la collection seffectuera sur une
liste de choix (les valeurs proposes Poche,
Super Poche, Titan, Je me lance, Tout de
suite seront puises dans la table Collec-
tion).
type Type Le choix du type de livre seffectuera sur une
liste de choix (les valeurs proposes Bu-
reautique, Programmation, Loisirs se-
ront puises dans la table Type).
Dnir un champ dans lequel la saisie est obligatoire
Vous allez imposer la saisie des titres des livres. Pour cela :
1 Vriez que la base de donnes Livres.accdb est ouverte.
2 Dans le Volet de navigation, cliquez du bouton droit sur la table
Livres et choisissez Mode cration dans le menu contextuel qui
apparat.
3 Cliquez sur le champ titre. Choisissez Oui dans la liste des valeurs
proposes de la ligne Null interdit, sous longlet Gnral. De mme,
choisissez la valeur Non dans la proprit Chane vide autorise
(voir Figure 3.100).
Vous allez vrier, dans la feuille de donnes, quil est dsormais
obligatoire de saisir le titre du livre.
4 Affichez la table en mode Feuille de donnes en utilisant le bouton
Affichage. Acceptez denregistrer la table Livres.
217 3.7. Cas pratique
Access constate quune rgle est applique sur un champ de la table.
5 Autorisez la vrication de lintgrit des donnes en cliquant sur
le bouton Oui de la bote de dialogue qui apparat.
6 Dans la colonne titre du premier enregistrement, supprimez le titre
puis validez.
Access constate que la rgle est viole.
7 Cliquez sur le bouton OK de la bote de dialogue. Saisissez un titre
ou utilisez la touche [chap] pour retrouver lancienne valeur.
Dnir des masques de saisie
Vous allez imposer la saisie de 4 chiffres dans le champ anneecopy-
right.
1 Affichez la table Livres en mode Cration.
2 Cliquez sur le champ anneecopyright. Saisissez 0000;;# dans la
zone de proprit Masque de saisie sous longlet Gnral.
Figure 3.100 : La saisie du titre sera obligatoire
Figure 3.101 : Access
refuse les donnes non
conformes aux rgles de
validation dnies sur le
champ
218 3. Construire une structure de table optimale
Vous allez affecter un masque de saisie au champ isbn laide de
lAssistant Masque de saisie :
3 Cliquez sur le champ isbn de type de donne Texte. Cliquez dans la
ligne Masque de saisie sous longlet Gnral. Cliquez sur le bouton
reprsentant trois petits points droite de la zone Masque de
saisie. Acceptez denregistrer la table Livres.
4 Dans la premire tape de lAssistant Masque de saisie, choisissez
ISBN lintrieur de la liste Masque de saisie. Cliquez sur le bouton
Suivant.
5 Dans la bote de dialogue suivante, remplacez le masque propos,
ISBN 0-&&&&&-&&&-0, dans la zone Masque de saisie par
0&&&&&&&&&.
6 Choisissez * dans la liste Caractre espace rserv. Cliquez sur le
bouton Suivant. Dans la bote de dialogue suivante, choisissez
Figure 3.102 : Le masque de saisie du
champ anneecopyright
Figure 3.103 : Le choix du masque de saisie de type ISBN
219 3.7. Cas pratique
loption Avec les symboles dans le masque. Cliquez sur le bouton
Suivant puis sur Terminer.
la proprit Masque de saisie, le masque dni avec lAssistant est
dsormais affich.
Vous allez maintenant vrier la saisie du numro ISBN laide du
masque de saisie. Pour cela :
7 Affichez la table en mode Feuille de donnes en utilisant le bouton
Affichage de longlet Cration. Acceptez denregistrer la table Li-
vres.
8 Cliquez dans la colonne isbn du premier enregistrement vide et
saisissez un numro en respectant le masque de saisie.
Si la saisie du numro ISBN est incomplte, Access constate que le
masque nest pas respect.
9 Cliquez sur le bouton OK de la bote de dialogue. Poursuivez la
saisie ou utilisez la touche [chap] pour retrouver lancienne valeur.
Affecter une liste de valeurs issues dune autre table
Dans le cas pratique du chapitre prcdent, vous avez remarqu que
plusieurs livres pouvaient appartenir la mme collection. Pour
viter de saisir une collection plusieurs fois, vous allez crer la liste
de choix pour le champ collection de la table Livres, de telle sorte que
ses donnes soient puises dans la table des collections. Si une
nouvelle collection vient paratre, vous naurez ainsi qu lajouter
dans la table Collections.
Vous allez commencer par crer la table Collections et y saisir les
diffrentes collections (Je me lance !, Le Poche, Tout de suite, etc.).
1 Affichez la table Livres en mode Cration. Cliquez sur longlet Crer
puis sur le bouton Cration de table du groupe Tables, dans le
Ruban.
Un nouvel onglet, nomm Table1, saffiche.
Figure 3.104 : Le masque de saisie du champ
isbn
220 3. Construire une structure de table optimale
2 Crez la structure de la table, compose des champs nocollection
et nom.
3 Affichez la table en mode Feuille de donnes, sans oublier denre-
gistrer la table avec le nom Collections et en autorisant la cration
dune cl primaire sur le premier champ dans les diffrentes botes
de dialogue qui saffichent. Saisissez les collections suivantes en
mode Feuille de donnes de la table Collections :
4 Fermez la table Collections si celle-ci est ouverte.
De retour dans la structure de la table Livres, vous allez modier le
champ collection de telle sorte quil utilise une liste de choix dont les
donnes seront issues de la table Collections.
5 Cliquez sur le champ collection. Dans la colonne Type de donnes
de ce champ, choisissez Assistant Liste de choix sur la liste. Dans la
premire tape de lAssistant Liste de choix, cochez loption Je
veux que la liste de choix recherche les valeurs dans une table ou
requte. Cliquez sur le bouton Suivant.
Ltape suivante de lAssistant Liste de choix affiche les autres tables
de la base de donnes Livres.
6 Slectionnez la table Collections. Cliquez sur le bouton Suivant.
7 Glissez tous les champs de la colonne Champs disponibles dans la
colonne Champs slectionns droite en cliquant sur le bouton >>.
Cliquez sur le bouton Suivant.
Figure 3.105 : La structure de la table, aprs sa cration
Figure 3.106 : Les donnes de la table
Collections
221 3.7. Cas pratique
8 Choisissez sur la premire liste le champ nom. Cliquez sur le
bouton Suivant.
Les donnes de la table Collections sont listes dans lAssistant. La
colonne cache est la colonne de la cl primaire de la table Collec-
tions.
9 Cliquez sur les boutons Suivant et Terminer.
Lors de la cration de la liste de choix, Access cre une relation entre
les tables Livres et Collections.
10 Cliquez sur le bouton Oui de la bote de dialogue qui apparat pour
valider la cration de la relation et de la liste de choix.
Access vous avertit ensuite, dans une nouvelle bote de dialogue,
que certaines donnes pourraient tre perdues. Cet inquitant mes-
sage davertissement provient de la transformation du type du
champ collection qui, de texte, devient numrique (le champ conte-
nait les noms des collections et il devra dsormais renfermer les
numros des cls primaires correspondant aux collections dans la
table Collections).
11 Cliquez sur le bouton Oui de la bote de dialogue.
Une nouvelle bote de dialogue, encore plus alarmante que la prc-
dente, vous signale maintenant que des erreurs ont t rencontres
lors de la conversion des donnes. Il sagit en fait des donnes de
type texte, anciennement contenues dans le champ collection, qui
nont pu tre conserves car le champ est dsormais de type num-
rique.
12 Cliquez sur le bouton Oui de la bote de dialogue.
Le type de donnes du champ collection a chang : il est maintenant
de type Numrique.
13 Cliquez sur longlet Liste de choix pour visualiser la proprit
Contenu renseigne par lAssistant.
Figure 3.107 : La proprit
Contenu
222 3. Construire une structure de table optimale
Vous allez visualiser la liste de choix en mode Feuille de donnes de
la table Livres.
14 Cliquez sur le bouton Affichage de longlet Cration.
La colonne collection est vide pour chaque enregistrement.
15 Cliquez dans la premire cellule de la colonne collection. Cliquez
sur la che propose droite de la cellule et permettant de
drouler la liste de choix.
Les diffrentes collections de la table Collections y sont affiches.
16 Cliquez sur un lment de la liste.
Celui-ci est affich dans le champ Collection.
Il vous reste vrier que la liste du champ est mise jour lors de la
modication de la table Collections.
17 Fermez la table Livres et affichez la table Collections en mode
Feuille de donnes. Ajoutez-y la collection Guide des experts, dans
la premire ligne vide de la colonne nom de la table.
18 Fermez la table Collections et ouvrez la table Livres en mode Feuille
de donnes. Cliquez sur la liste de la colonne collection.
La nouvelle collection est affiche sur la liste de choix.
Figure 3.108 : Les lments de la liste de choix
Figure 3.109 : La nouvelle collection gure dsormais sur la liste de choix
223 3.7. Cas pratique
Vous pouvez, sur le mme modle, constituer une liste de choix sur
le champ type. Cette liste puisera ses donnes dans une table Types,
compose des champs notype et nom quil vous faudra crer. Vous y
insrerez les donnes suivantes : Bureautique, Programmation, Loisirs,
Systme Informatique, Informatique gnrale.
Interdire la saisie dun prix ngatif
Le prix dun livre ne doit pas tre ngatif. Vous allez donc appliquer
une rgle de validation sur le champ prixHT de la table Livres pour
empcher la saisie dun nombre ngatif.
1 Affichez la table Livres en mode Cration. Cliquez sur le champ
prixHT.
Vous allez saisir directement lexpression sans utiliser le Gnrateur
dexpression.
2 Saisissez >=0 dans la proprit Valide si.
Prcisez maintenant le message davertissement afficher en cas
derreur de saisie :
3 Saisissez dans la proprit Message si erreur le texte Saisissez un
prix HT positif.
Il ne vous reste qu tester la saisie du prix en mode Feuille de
donnes :
Figure 3.110 : La dnition des deux proprits
224 3. Construire une structure de table optimale
4 Affichez la table Livres en mode Feuille de donnes et enregistrez-
la.
5 Cliquez sur le bouton Oui de la bote de dialogue qui apparat pour
vrier lintgrit des donnes.
6 Saisissez un prix hors taxe ngatif dans la colonne prixHT. Validez-
le.
Access affiche le message dni prcdemment dans la proprit
Message si erreur.
7 Cliquez sur le bouton OK de la bote de dialogue. Corrigez le prix
ou utilisez la touche [chap] pour retrouver lancienne valeur.
Appliquer une rgle de validation sur une table
Lanne de copyright dun livre ne peut tre postrieure celle de la
date de sortie du livre. Vous allez appliquer une rgle de validation
sur la table et non sur le champ. La valeur du champ anneecopyright
sera compare celle de lanne du champ datesortie. Procdez
ainsi :
1 Affichez en mode Cration la table Livres. Cliquez sur le bouton
Feuille des proprits du groupe Afficher/Masquer de longlet Cra-
tion.
2 Dans le volet Feuille de proprits qui est affich, cliquez dans la
zone Valide si, puis sur le bouton Gnrer symbolis par les trois
petits points droite de la zone de lancement du Gnrateur
dexpression.
3 Dans la liste Elments dexpression du Gnrateur dexpression,
cliquez sur Livres. Double-cliquez sur le champ anneecopyright
dans la liste Catgories dexpressions.
Le champ saffiche dans la zone ddition.
4 Cliquez sur llment dexpression Oprateurs puis sur Comparai-
son. Double-cliquez sur la valeur dexpression <=.
5 Dveloppez llment dexpression Fonctions, slectionnez Fonc-
tions intgres puis Date/Heure. Double-cliquez sur Annee.
6 Cliquez sur date dans la zone ddition puis slectionnez Livres
dans la liste Elments dexpression. Double-cliquez sur le champ
datesortie dans la zone centrale pour obtenir le rsultat suivant :
(voir Figure 3.111)
7 Cliquez sur le bouton OK pour fermer le Gnrateur dexpression.
225 3.7. Cas pratique
La formule [anneecopyright] <= Anne ( [datesortie] ) saffiche dans
la proprit Valide si de la table.
8 Saisissez dans la proprit Message si erreur le texte Veuillez
saisir une anne de copyright antrieure lanne de la date de
sortie.
Comme lindique le nom de la proprit, ce message sera affich si
lutilisateur tente de transgresser la rgle de validation.
Vous allez maintenant tester la rgle de validation.
Figure 3.111 : Lcriture de la formule dans le Gnrateur dexpression
Figure 3.112 : La rgle de validation de la table Livres
226 3. Construire une structure de table optimale
9 Enregistrez et affichez la table en mode Feuille de donnes. Validez
les diffrentes botes de dialogue en cliquant sur leurs boutons
Oui.
10 Saisissez une anne de copyright postrieure une anne de la
date de sortie. Validez.
Access vous empche de valider la ligne lorsque vous tentez de
passer la ligne suivante, par exemple, car la rgle de validation de
la table nest pas respecte.
11 Cliquez sur le bouton OK de la bote de dialogue. Corrigez lanne
de copyright ou utilisez la touche [chap] pour retrouver lancienne
valeur.
Garantir lunicit du numro dISBNau moyen dun
index
Un numro dISBN doit tre unique. Vous allez crer un index sans
doublon sur le champ isbn de la table Livres.
1 Affichez en mode Cration la table Livres (si le volet Feuille de
proprits est affich, cliquez sur le bouton Feuille des proprits du
groupe Afficher/Masquer de longlet Cration pour le masquer) et
placez le point dinsertion dans la ligne du champ isbn.
2 Cliquez dans la zone de la proprit Index. Choisissez Oui - Sans
doublons dans la liste propose.
Vous allez vrier la constitution de lindex sur la liste des index.
3 Cliquez sur le bouton Index du groupe Afficher/Masquer de longlet
Cration.
Lindex dni dans la proprit Index est affich dans la fentre
Index qui apparat sous lindex dj cr sur le champ de la cl
primaire.
Vous allez vrier laction de lindex en mode Feuille de donnes.
Figure 3.113 : Le nouvel
index a t ajout la table
227 3.7. Cas pratique
4 Affichez la table en mode Feuille de donnes. Acceptez au passage
son enregistrement.
5 Saisissez le mme numro ISBN pour deux livres.
Access vous empche de valider la ligne lorsque vous tentez de
passer la ligne suivante, par exemple, car lunicit de la valeur nest
pas respecte.
6 Cliquez sur le bouton OK de la bote de dialogue. Corrigez un des
numros ISBN ou utilisez la touche [chap] pour retrouver lan-
cienne valeur.
Pour clore ce cas pratique, il ne vous reste qu saisir les lgendes
des champs de la table telles quelles ont t dnies dans le tableau
prsent au dbut de cette section.
Tlchargement de la base de donnes
Vous trouverez les bases de donnes utilises dans ce chapitre (Gestion
des disques.accdb et Livres.accdb) sur le site de Micro Application (www
.microapp.com) dans le dossier Chapitre03.
228 3. Construire une structure de table optimale
C
H
A
P
I
T
R
E
4
CONTRLER
LACOHRENCE
DESDONNES
Comprendre lutilit des relations et de lintgrit rfrentielle .......... 231
Dnir une cl primaire dans une table .......................................................... 233
Dnir les relations entre les tables ................................................................. 237
Appliquer des rgles dintgrit rfrentielle ............................................... 256
Imprimer les relations ............................................................................................. 264
Cas pratique ................................................................................................................. 265
229
Vous savez maintenant crer des tables, y entrer des donnes,
contrler leur saisie et retrouver des informations. De plus, comme
vous lavez constat, une base de donnes bien construite utilise de
nombreuses tables pour rpartir sans redondance et de faon judi-
cieuse les informations enregistres.
Mais les tables, pour tre exploitables, ne doivent pas rester isoles,
comme elles lont t jusqualors. Dans ce chapitre, vous allez donc
dcouvrir les relations, lment charnire essentiel, dont le rle est
dassurer la jonction conceptuelle entre les diffrentes tables de la
base de donnes an de permettre une exploitation cohrente et
scurise des informations quelle renferme.
4.1. Comprendre lutilit des relations et
de lintgrit rfrentielle
Lutilit de regrouper les informations par sujets (artistes, disques,
maisons ddition de disques, thme) a t dmontre. Chaque
sujet correspond une table, mais rien ne lie les sujets. Les lments
permettant dassurer ces liaisons se nomment "relations". Elles per-
mettent, comme leur nom lindique, dtablir des corrlations entre
les tables, tout en assurant la cohrence des donnes.
Nul besoin dAccess pour dterminer les relations entre les tables :
un simple crayon et une feuille de papier suffisent. Et comme cette
tape danalyse demande, vous allez le voir, un minimum de r-
exion, une gomme ne sera pas de trop sil vous faut revenir en
arrire. Le logiciel vous offre toutefois une interface graphique trs
fonctionnelle. Avec un peu dentranement, vous tracerez vos rela-
tions directement depuis Access.
La mthode Merise
Si, en matire danalyse, vous souhaitez aller au-del des notions expo-
ses dans cet ouvrage, vous trouverez de nombreux livres traitant de la
mthode Merise, lune des plus rpandues chez les concepteurs de bases de
donnes.
Dans ce chapitre, vous remarquerez limportance des relations alors
que les donnes sont encore prsentes sous une forme "brute",
dans des feuilles de donnes et que lapplication de lintgrit rf-
rentielle accrot considrablement ltendue de leur contrle quant
la cohsion des donnes. Plus loin dans cet ouvrage, vous constate-
231 4.1. Comprendre lutilit des relations et de lintgrit rfrentielle
rez que leur action perdure dans les formulaires (qui sont des outils
de prsentation des donnes) et, de manire gnrale, dans tous les
objets permettant daccder aux donnes.
Pour mettre en relation deux tables, il est ncessaire de disposer
dune information commune. Sauf cas exceptionnels, une table de-
vra donc toujours disposer dun champ particulier, renfermant une
cl primaire et contenant des valeurs par dnition uniques qui
pourront tre dupliques dans le champ dune autre table an dta-
blir une relation. Une cl primaire peut tre indiffremment btie sur
un champ de type Texte ou Numrique. Toutefois, un champ de type
NumroAuto se prte particulirement bien lopration puisque ses
valeurs sont gnres automatiquement par Access.
Les cls primaires, indispensables pour tablir des relations, trou-
vent souvent dautres utilisations. Par exemple, si vous utilisez Ac-
cess pour saisir des factures dans une table, les valeurs de la cl
primaire peuvent tre utilises comme numros de facture, dont
lunicit est une obligation lgale. Vous devrez alors choisir entre une
numrotation automatique des enregistrements ou une saisie ma-
nuelle des numros. Si vous optez pour la premire solution, vous
naurez qu reporter les valeurs gnres par Access sur vos factu-
res, mais vous ne pourrez pas choisir ces numros qui vous seront
imposs par le logiciel. Si vous choisissez la seconde solution, vous
utiliserez votre propre numrotation, interne au service comptable
de votre entreprise. Il vous sera alors possible demployer nimporte
quel systme de rfrencement de facture, numrique ou alphanu-
mrique, mais tous les numros devront tre distincts, sous peine
dessuyer un refus catgorique dAccess dentrer une rfrence dj
utilise.
On distingue plusieurs types de relations :
j les relations un plusieurs, dans lesquelles un enregistrement de
la table principale (ou table mre) peut tre mis en relation avec un
ou plusieurs enregistrements de la table lie (ou table lle) ;
j les relations plusieurs plusieurs dans lesquelles plusieurs enre-
gistrements de la table mre peuvent tre mis en relation avec
plusieurs enregistrements de la table lle (par lintermdiaire
dune troisime table, dite table de jonction) ;
j les relations un un, plus rares, et dans lesquelles un enregistre-
ment de la table mre peut tre mis en relation avec un enregis-
trement de la table lle.
232 4. Contrler la cohrence des donnes
4.2. Dnir une cl primaire dans
une table
Puisque les cls primaires reprsentent les cls de vote des rela-
tions, vous allez commencer par apprendre les crer. Il existe deux
types de cls primaires : la premire fait appel un champ unique de
la table alors que la seconde, plus rare, utilise une combinaison de
deux ou de plusieurs champs.
Dnir une cl primaire sur un champ
Dans la plupart des cas, une cl primaire dnie sur un seul champ
suffira pour tablir correctement les relations entre les tables.
Les conditions ncessaires et suffisantes pour crer une cl primaire
sur un champ sont les suivantes : les valeurs renfermes dans le
champ doivent tre uniques et non nulles.
Crer des cls primaires automatiquement
Lors de la cration de la structure dune nouvelle table, Access propose
systmatiquement, lenregistrement de la table, de crer pour vous une cl
primaire dans un champ de type NumroAuto si vous navez pas vous-mme
dni la cl. Sauf raison particulire, acceptez toujours cette proposition. La
cl ainsi dnie vous permettra, sans modication de la structure de la table,
de couvrir la majorit de vos "besoins" en matire de relations, mme si elles
sont construites ultrieurement. Et si la cl nest jamais utilise ? Dans ce cas,
la faible place occupe sur le disque dur sera un inconvnient mineur.
Procdez ainsi :
1 Ouvrez la table en mode Cration.
2 Placez le point dinsertion dans la ligne du champ ou slectionnez
le champ.
3 Cliquez sur le bouton Cl primaire du groupe Outils de longlet
Cration. Vous pouvez galement cliquer du bouton droit sur le
champ, puis choisir Cl primaire dans le menu contextuel qui
apparat.
La cl primaire est symbolise par limage dune cl gauche du
nom du champ (voir Figure 4.1).
Un index sur le contenu du champ est automatiquement cr en
mme temps que la cl primaire.
233 4.2. Dfinir une cl primaire dans une table
4 Pour vrier la prsence de lindex, cliquez sur le bouton Index du
groupe Afficher/Masquer de longlet Cration.
La fentre Index apparat. Lindex se nomme PrimaryKey et sa pro-
prit Primaire prend la valeur Oui.
La proprit Primaire
Cette proprit de lindex indique si ce dernier est ou non affect une cl
primaire. Les valeurs quelle peut prendre sont boolennes (Oui ou Non).
Une autre mthode pour dfinir une cl primaire
Une autre mthode pour dnir une cl primaire consiste, en mode Cra-
tion de table, cliquer sur le bouton Index du groupe Afficher/Masquer de
longlet Cration. Dans la premire ligne vide de la fentre Index, saisissez le
Figure 4.1 : La cl primaire est dnie
sur un champ
Figure 4.2 : Lindex cr avec la cl primaire
234 4. Contrler la cohrence des donnes
nomde lindex dans la colonne Nomde lindex. Dans la colonne Nomdu
champ, slectionnez le champ qui sera utilis comme cl primaire sur la
liste. Modiez ventuellement lordre de tri propos par dfaut dans la troi-
sime colonne. Sous la rubrique Proprit de lindex, choisissez Oui dans la
liste de la proprit Primaire.
Dnir une cl primaire sur plusieurs champs
Une cl primaire peut galement tre dnie sur plusieurs champs.
Mme si lopration peut paratre surprenante au demeurant, elle se
rvle trs utile lorsque, dans une table de jonction servant tablir
une relation plusieurs plusieurs (cette notion est aborde plus loin
dans ce chapitre), une cl primaire est compose par lassociation de
deux champs regroupant les cls primaires de deux autres tables.
Mme compose sur plusieurs champs, la cl primaire dnie doit
toujours conserver son unicit (la table ne doit jamais renfermer
deux combinaisons identiques de contenus de champs utiliss dans
la cl primaire). Procdez ainsi :
1 Ouvrez la table en mode Cration.
2 Slectionnez des champs, contigus ou non.
3 Cliquez sur le bouton Cl primaire de longlet Cration.
La cl primaire est symbolise par limage dune cl gauche du
nom des champs slectionns.
Lordre des champs de la cl primaire
Comme vous lavez dcouvert prcdemment, la cration dun index est
toujours associe la dnition dune cl primaire. Lordre des champs utilis
Figure 4.3 : La cl primaire est ici dnie sur trois champs
235 4.2. Dfinir une cl primaire dans une table
dans lindex est celui des champs dans la structure de la table. Cet ordre
dtermine celui qui est appliqu par dfaut lorsque la table est consulte.
Il peut toutefois tre modi dans la fentre Index. Pour cela, cliquez sur le
bouton Index du groupe Afficher/Masquer de longlet Cration pour afficher
la fentre Index. Modiez comme bon vous semble lordre des noms des
champs de lindex PrimaryKey.
Supprimer une cl primaire
Une cl primaire peut tre supprime. Les donnes de la table ne
sont pas affectes par lopration. Procdez ainsi :
1 Ouvrez la table en mode Cration.
2 Placez le pointeur dans la ligne du champ de la cl primaire.
3 Cliquez sur le bouton Cl primaire du groupe Outils de longlet
Cration.
Le symbole de la cl disparat, gauche du nom du champ.
Cls primaires utilises dans des relations
Si la cl primaire est utilise dans une ou plusieurs relations, ce qui est
frquent, Access interdit la suppression du champ de la cl primaire. La
relation doit tre supprime avant le champ de la cl primaire.
Figure 4.4 : Lordre des
champs de la cl primaire
Figure 4.5 : Le message dAccess, interdisant la suppression de la cl primaire avant celle de la
relation
236 4. Contrler la cohrence des donnes
4.3. Dnir les relations entre les tables
Les relations permettent dtablir la corrlation entre les tables.
Chacune sappuie sur un champ et est symbolise par Access sous la
forme dune ligne aux extrmits desquelles apparat un caractre,
parmi deux, indiquant la nature du ct de la relation. Le caractre 1
et le caractre inni () traduisent respectivement le ct "un" et le
ct "plusieurs" de la relation lorsque lintgrit rfrentielle est
applique.
Cette notion est aborde plus loin dans ce chapitre.
Tlchargement de la base de donnes
Vous trouverez la base de donnes utilise dans ce chapitre, Gestion des
disques4.accdb, sur le site de Micro Application (www.microapp.com) dans le
dossier Chapitre04.
Construire des relations un plusieurs
Une relation met en rapport deux tables en utilisant un champ
commun. La relation du type un plusieurs est la plus frquente : la
cl primaire de la table principale est trs souvent employe pour
dnir le ct un de la relation, tandis que son contenu est dupliqu
dans un champ de la seconde table (on parle de cl externe ou de cl
trangre), cest le ct plusieurs de la relation.
Voici un exemple de relation un plusieurs : dans un systme de
facturation qui utiliserait deux tables, celle des clients et celle des
factures, le ct un serait celui de la table des clients (une facture
nest tablie qu un seul client), alors que le ct plusieurs serait
celui de la table des factures (un client peut avoir plusieurs factures).
Dterminer sans quivoque le type de relation utiliser entre deux tables
Voici une mthode que nous vous conseillons dappliquer pour dterminer
coup sr le ct un et le ct plusieurs dune relation. Un papier et un
crayon sont les seuls outils ncessaires. Lorsque deux tables sont mises en
relation, partez dune table (la table 1 par exemple) et demandez-vous : " un
enregistrement de la table 1, combien correspondent denregistrements de la
table 2 ?" Si la rponse est "un", crivez le chiffre 1 ct de la table 2. Si la
rponse est "plusieurs", symbolisez le ct plusieurs par la lettre n ou le
237 4.3. Dfinir les relations entre les tables
symbole . Procdez de mme dans lautre sens, en partant de la table 2
et en allant vers la table 1.
Crer une relation un plusieurs automatiquement
Lorsquune liste de choix est dnie pour un champ dans une table,
une relation un plusieurs est automatiquement cre.
Reprenez la base de donnes Gestion des disques4.accdb et lexemple
de la liste de choix des thmes musicaux dnis dans la table
Disques.
La relation un plusieurs entre les tables Theme et Disques a t
tablie automatiquement par Access lors de la cration de la liste de
choix sur le champ theme de la table Disques (rappelez-vous que
cette liste utilise, comme source de donnes, le champ nom de la
table Theme).
Voyez comment afficher graphiquement la relation un plusieurs
dj cre entre la table Theme et la table Disques.
1 Vriez que toutes les tables sont fermes car il nest pas possible
de crer une relation lorsque les tables quelle utilise sont ouvertes.
2 Affichez les relations existantes dans longlet des relations
en cliquant sur longlet Outils de base de donnes puis sur le
bouton Relations du groupe Relations.
Longlet Relations est affich.
3 Si longlet Relations est vide, cliquez sur le bouton Afficher toutes
les relations du groupe Relations de longlet Crer, ou cliquez du
bouton droit dans longlet Relations, puis choisissez Afficher toutes
les relations dans le menu contextuel qui apparat.
Figure 4.6 : La liste de choix
affichant la liste des thmes
musicaux dans le champ
theme de la table Disques
238 4. Contrler la cohrence des donnes
La structure des deux tables est reprsente de faon simplie dans
longlet Relations (seuls les noms des champs apparaissent dans les
tables). Le nom de champ qui compose la cl primaire de chaque
table est prcd dune cl.
La relation traduit ceci : un thme musical (blues, classique, jazz,
mtal, pop) de la table Theme est utilis pour plusieurs disques de
la table Disques alors quun disque de la table Disques est commer-
cialis sur un seul thme de la table Theme.
4 Pour vrier le type de relation utilis, double-cliquez sur le lien
entre les deux tables ou cliquez sur le lien puis sur le bouton
Modier des relations du groupe Outils de longlet Crer.
Figure 4.7 : Longlet Relations
Figure 4.8 : La modication de la relation entre les deux tables
239 4.3. Dfinir les relations entre les tables
La fentre Modier des relations saffiche et montre la relation entre le
champ notheme de la table Theme et theme de la table Disques. La
zone Type de relation indique une relation un plusieurs.
5 Cliquez sur lun des boutons OK ou Annuler pour fermer la bote de
dialogue.
6 Fermez longlet Relations en cliquant sur le bouton Fermer du
groupe Relations de longlet Crer. Acceptez lenregistrement de la
mise en forme en cliquant sur le bouton Oui de la bote de dialogue
qui apparat.
Si vous avez modi la disposition des tables (an den augmenter la
lisibilit par exemple) ou ajout de nouvelles tables dans longlet, les
modications apportes sont sauvegardes.
Afficher les relations affectes une table
Si vous dsirez connatre toutes les relations
affectes une table spcique depuis lon-
glet Relations, cliquez sur la table concerne puis sur le bouton Afficher les
relations directes du groupe Relations de longlet Crer. Vous pouvez
galement cliquer du bouton droit sur la table, puis choisir Afficher les
relations directes dans le menu contextuel qui apparat.
Crer une relation un plusieurs manuellement
Mme si des relations sont automatiquement dnies par Access
lors de certaines oprations, comme vous venez de le dcouvrir dans
ce qui prcde, la plupart des relations utilises dans une base de
donnes font lobjet dune cration manuelle. Cette opration est
effectue dans une interface graphique trs signicative, dans la-
quelle les relations sont littralement "traces" entre les tables.
Figure 4.9 : Le type de
relation (ici un plusieurs)
entre la table Theme et la
table Disques est conrm
dans la bote de dialogue
240 4. Contrler la cohrence des donnes
Dans lexemple qui suit, une maison de disques possdant plusieurs
disques son catalogue (et un disque ntant dit que par une seule
maison de disques), une relation un plusieurs entre les tables
Maisons ddition de disques et Disques va tre dnie.
1 Vriez que toutes les tables sont fermes car il nest pas possible
de crer une relation lorsque les tables quelle utilise sont ouver-
tes.
2 Affichez les relations existantes dans longlet des relations en
cliquant sur longlet Outils de base de donnes puis sur le bouton
Relations du groupe Relations.
Si longlet Relations ne contenait pas de table, la bote de dialogue
Afficher la table serait affiche (et permettrait de slectionner les
tables qui devraient apparatre dans la fentre).
Les tables Disques et Theme sont dj, vous lavez vu prcdemment,
mises en relation. Elles sont donc affiches dans longlet Relations.
Avant daller plus loin, la table Maisons ddition de disques doit
galement tre ajoute dans la fentre. Pour cela :
3 Cliquez sur le bouton Afficher la table du groupe Relations de
longlet Crer ou encore cliquez du bouton droit dans lon-
glet Relations. Choisissez Afficher la table dans le menu
contextuel qui apparat.
La bote de dialogue Afficher la table est affiche.
4 Slectionnez longlet Table, cliquez sur le nom de la premire table
(ici la table Maisons ddition de disques) ajouter, puis sur le
bouton Ajouter.
Si dautres tables devaient tre ajoutes, vous devriez rpter cette
manipulation pour chacune des tables concernes.
Figure 4.10 : Lajout dune
table dans longlet des
relations
241 4.3. Dfinir les relations entre les tables
Ajouter plusieurs tables en une seule opration
Si vous souhaitez ajouter plusieurs tables longlet des relations en une
seule opration depuis la bote de dialogue Afficher la table, utilisez lune des
mthodes suivantes :
j Si les noms sont contigus sur la liste des tables, cliquez sur le premier,
maintenez la touche [Maj] enfonce, puis cliquez sur le nom de la dernire
table slectionner, et cliquez sur le bouton Ajouter.
j Si les noms ne sont pas contigus sur la liste des tables, cliquez sur le
premier, maintenez la touche [Ctrl] enfonce, puis cliquez sur chaque nom
slectionner. Cliquez sur le bouton Ajouter.
j Double-cliquez sur le nom de chaque table ajouter.
5 Cliquez sur le bouton Fermer de la bote de dialogue Ajouter une
table.
Longlet Relations fait maintenant apparatre la nouvelle table qui y a
t ajoute. Toutefois, la relation ne peut pas encore tre trace. En
effet, aucun champ commun nexiste entre les tables Maisons ddi-
tion de disques et Disques. Il est donc ncessaire dajouter un champ
(indispensable la relation), nomm nomaisondisque, la structure
de la table Disques. Inutile de fermer longlet Relations pour effectuer
lopration : le mode Cration peut tre activ depuis la fentre.
Pourquoi stocker les numros des maisons ddition dans la table
des disques et non linverse ?
Pour rpondre, utilisez la petite astuce nonce dans la section prcdente
et posez-vous la question suivante : " une maison ddition, combien de
disques peut-on trouver en correspondance ?" La rponse est, bien videm-
ment, "plusieurs". La table des disques reprsente donc le ct plusieurs de la
relation.
linverse : " un disque, combien de maisons ddition peut-on trouver en
correspondance ?" La rponse est "une seule". La table des maisons ddition
reprsente donc le ct un de la relation.
Or la cl primaire (ici le champ N de la table Maisons ddition de disques)
est toujours utilise du ct un de la relation alors que la cl trangre (ici le
champ nomaisondisque de la table Disques) reprsente toujours le ct
plusieurs. Vous tes donc maintenant certain du bien fond du choix du sens
de la relation que vous tes en train de dnir : les valeurs des cls primaires
de la table des maisons ddition doivent tre dupliques dans un champ
ddi cet usage dans la table des disques.
6 Cliquez du bouton droit sur la table (ici Disques). Choisissez
Cration de table dans le menu contextuel qui apparat.
242 4. Contrler la cohrence des donnes
7 Ajoutez le nouveau champ de type de donnes Numrique (ici,
nomaisondisque) la structure de la table. Fermez cette dernire et
acceptez son enregistrement.
Dans longlet Relations, vous allez maintenant dnir la relation entre
les tables Disques et Maisons ddition de disques.
8 Pour crer la relation entre les deux tables, cliquez sur la cl
primaire N de la table Maisons ddition de disques, maintenez le
bouton de la souris enfonc et tracez la relation en glissant le
champ N vers le champ nomaisondisque de la table Disques.
Figure 4.11 : Le mode Cration de table est activ depuis longlet Relations
Figure 4.12 : Lajout du champ nomaisondisque dans la structure de la table Disques
Figure 4.13 : Le trac de la
relation entre les deux
tables
243 4.3. Dfinir les relations entre les tables
La bote de dialogue Modier des relations saffiche. Celle-ci schma-
tise la relation tablie entre les deux tables sur le numro de la
maison de disque. Le type de relation est dcrit dans la zone Type de
relation.
9 Cliquez sur le bouton Crer.
Lillustration ci-aprs montre la schmatisation de la relation, telle
quelle apparat dans longlet Relations :
10 Fermez longlet Relations en cliquant sur son bouton Fermer. Ac-
ceptez lenregistrement de la mise en forme dans la bote de
dialogue qui apparat.
Construire des relations plusieurs plusieurs
Ce type de relation est caractris par le fait quun enregistrement de
la premire table peut tre en relation avec plusieurs enregistre-
ments de la seconde et, inversement, quun enregistrement de la
seconde peut tre en relation avec plusieurs enregistrements de la
premire.
Il nest pas possible de dnir une telle relation sans avoir recours
une troisime table, dite table de jonction. Ce type de table permet de
mettre en relation les cls primaires des deux tables. La table de
jonction contient une rplique des valeurs des deux cls primaires
Figure 4.14 : Le type de
relation apparat dans la
bote de dialogue
Figure 4.15 : La relation un
plusieurs entre les deux
tables est schmatise
dans longlet Relations
244 4. Contrler la cohrence des donnes
qui, une fois combines, forment un identiant unique pouvant tre
lui-mme utilis comme cl primaire.
Il apparat alors quune relation plusieurs plusieurs nest autre que
deux relations un plusieurs tablies entre les deux tables lier
(reprsentant chacune les cts un des relations) et la table de
jonction (reprsentant le ct plusieurs pour chacune des deux rela-
tions).
Dans lexemple utilis ici, deux relations plusieurs plusieurs peu-
vent tre dnies, la premire entre les tables Disques et Chansons, la
seconde entre les tables Artistes et Chansons.
Dtaillons la premire relation, plusieurs plusieurs, entre les tables
Disques et Chansons. Vous pourrez ensuite appliquer le mme prin-
cipe pour dvelopper la relation entre Chansons et Artistes.
La structure de la table Disques est montre dans lillustration qui
suit :
De mme, la structure de la table Chansons est montre dans lillus-
tration suivante :
1 Vriez que toutes les tables sont fermes car il nest pas possible
de crer une relation lorsque les tables quelle utilise sont ouver-
tes.
2 Affichez longlet des relations en cliquant sur longlet Outils de
base de donnes puis sur le bouton Relations du groupe Relations.
Vous allez commencer par ajouter la table Chansons dans longlet
des relations.
Figure 4.16 : La structure de la table Disques
Figure 4.17 : Structure de la table Chansons
245 4.3. Dfinir les relations entre les tables
3 Cliquez sur le bouton Afficher la table du groupe Relations de
longlet Crer ou encore cliquez du bouton droit dans longlet
Relations et choisissez Afficher la table dans le menu contextuel qui
apparat.
La bote de dialogue Afficher la table est affiche.
4 Dans la bote de dialogue Afficher la table, slectionnez longlet
Table, cliquez sur la table (dans cet exemple Chansons) puis sur le
bouton Ajouter et sur le bouton Fermer.
Dans longlet Relations, vous allez vous intresser la structure des
tables Disques et Chansons, qui apparaissent comme le montre cette
illustration :
Rsistez la tentation de tracer la relation entre les tables Disques et
Chansons comme vous lavez fait pour les relations un plusieurs,
car cela ne fonctionne pas. En effet, lutilisation dune cl primaire du
ct de la table Chansons dans la relation impose lunicit de la
valeur du champ. La cl primaire ne peut donc pas tre utilise dans
un ct plusieurs.
Analysons la relation plusieurs plusieurs entre les tables Disques et
Chansons.
Un disque peut contenir plusieurs chansons. Par consquent, cha-
que enregistrement de la table Disques peut tre reli plusieurs
enregistrements de la table Chansons. Mais ce nest pas tout : une
chanson apparat dans plusieurs disques, chaque enregistrement de
la table Chansons peut donc tre reli plusieurs enregistrements de
la table Disques.
Les deux tables Disques et Chansons entretiennent donc une relation
plusieurs plusieurs. Si vous essayez de crer la relation entre les
deux tables en ajoutant le champ numro chanson dans la table
Disques, pour pouvoir crer un disque de plusieurs chansons, la table
Disques doit contenir plusieurs enregistrements par disque. Pour
chaque enregistrement se rapportant ce disque, vous devez rpter
les mmes informations relatives au disque, ce qui est le signe dune
Figure 4.18 : La structure des deux tables,
dans longlet Relations
246 4. Contrler la cohrence des donnes
structure inefficace entranant des erreurs. De plus, lunicit de la cl
primaire sur le champ nodisque vous empche de rpter le numro
du disque autant de fois quil y a de chansons dans ce disque.
Lillustration qui suit montre le rsultat qui serait obtenu :
Le mme problme se rpterait si vous placiez un champ numro
disque dans la table Chansons qui contiendrait alors plusieurs enre-
gistrements par chanson.
Si vous essayez de crer la relation entre les deux tables en ajoutant
cette fois le champ numro disque dans la table Chansons, pour
pouvoir faire gurer une chanson dans plusieurs disques, la table
Chansons doit contenir plusieurs enregistrements par chansons.
Pour chaque enregistrement se rapportant cette chanson, vous
devez rpter les mmes informations relatives la chanson, ce qui
est encore le signe dune structure inefficace entranant des erreurs.
De plus, lunicit de la cl primaire sur le champ nochanson vous
empche de rpter le numro de la chanson autant de fois quil y a
de disques contenant cette chanson.
Figure 4.19 : La saisie des chansons dun disque dans une telle table rvlerait de graves anomalies
structurelles
Figure 4.20 : La relation est impossible
247 4.3. Dfinir les relations entre les tables
Lillustration qui suit montre le rsultat qui serait obtenu :
Pour rsoudre ce problme, vous allez crer une troisime table an
de couper la relation plusieurs plusieurs en deux relations un
plusieurs. Cette troisime table est appele "table de jonction" car
elle agit comme jonction entre les deux tables. La cl primaire de
chacune des deux tables est place dans la table de jonction, cest-
-dire quelle combine la fois la cl primaire de la table Disques et
celle de la table Chansons. La combinaison des deux cls donne un
identiant unique qui permettra, de faon certaine, de retrouver
toutes les chansons utilises dans un disque, mais galement, dans
lautre sens, tous les disques faisant mention dune chanson donne.
Chaque enregistrement de la table de jonction reprsente donc une
des chansons dun disque.
Figure 4.21 : La saisie des
disques sur lesquels se
trouve la chanson dans une
telle table rvlerait
galement de graves
anomalies structurelles
Figure 4.22 : Cette relation
est galement impossible
Figure 4.23 : La forme relle dune relation plusieurs plusieurs
248 4. Contrler la cohrence des donnes
Vous devez crer la table de jonction compose des deux cls pri-
maires des tables, que vous nommerez Jonction-Disques-Chansons.
5 Depuis longlet Relations, cliquez sur longlet Crer du Ruban puis
cliquez sur le bouton Cration de table du groupe Tables.
Longlet Table1 apparat.
6 Crez la structure de la table Jonction-Disques-Chansons compose
des champs nodisque et nochanson, tous deux de type numrique.
La cl primaire de la table de jonction sera compose de deux
champs (nodisque et nochanson), qui sont les cls des deux autres
tables. Ces dernires sont appeles "cls trangres".
7 Pour crer la cl primaire compose des deux champs, slection-
nez les lignes nodisque et nochanson, puis cliquez sur le bouton Cl
primaire du groupe Outils de longlet Cration.
Un symbole de cl primaire apparat sur chaque ligne. Cela ne
signie pas que vous avez cr deux cls primaires sur la table (une
table ne peut contenir quune cl primaire) mais que vous avez cr
une seule cl primaire en associant les deux champs.
Figure 4.24 : Une nouvelle table va tre cre en mode Cration
Figure 4.25 : La cl primaire est compose sur les deux champs
249 4.3. Dfinir les relations entre les tables
8 Fermez et enregistrez la table avec le nom Jonction-Disques-
Chansons. Dans longlet Relations, ajoutez la table de jonction
Jonction-Disques-Chansons laide du bouton Afficher la table du
groupe Relations de longlet Crer.
La relation un plusieurs entre les tables Disques et Jonction-
Disques-Chansons peut tre traduite de la faon suivante :
Un disque de la table Disques peut contenir plusieurs chansons de
la table Jonction-Disques-Chansons.
Chaque chanson de la table Jonction-Disques-Chansons corres-
pond un seul disque de la table Disques.
9 Tracez la relation entre les champs nodisque des tables Disques et
Jonction-Disques-Chansons. Dans la bote de dialogue Modier des
relations qui apparat, cliquez sur le bouton Crer pour fermer la
bote de dialogue et retourner dans longlet Relations.
Il vous reste tablir la relation un plusieurs entre les tables
Chansons et Jonction-Disques-Chansons. Elle devra traduire la situa-
tion suivante :
Figure 4.26 : La table de jonction est ajoute dans longlet Relations
250 4. Contrler la cohrence des donnes
Une chanson de la table Chansons peut apparatre dans plusieurs
disques de la table Jonction Disques Chansons.
Chaque disque de la table Jonction Disques Chansons correspond
une seule chanson de la table Chansons.
10 Tracez la relation entre les champs nochanson des tables Chansons
et Jonction-Disques-Chansons.
Lillustration qui suit montre la reprsentation de la relation plusieurs
plusieurs entre les tables Disques et Chansons, dont la table de
jonction est Jonction-Disques-Chansons :
Vous savez maintenant dnir une relation plusieurs plusieurs. Le
mme type de relation pourrait tre tabli entre les tables Chansons
et Artistes. Le raisonnement est identique.
11 Appliquez le mme mode opratoire pour crer la table de jonc-
tion Jonction-Chansons-Artistes et les relations un plusieurs entre
les tables an darriver au rsultat suivant :
12 Fermez longlet Relations et enregistrez les modications appor-
tes.
Construire des relations un un
Utilisez ces relations lorsque vous souhaitez enregistrer des informa-
tions relatives un sujet, mais que ces informations ne concernent
Figure 4.27 : La relation plusieurs plusieurs, gure dans longlet Relations
Figure 4.28 : Les deux relations de type plusieurs plusieurs, gures dans longlet Relations
251 4.3. Dfinir les relations entre les tables
pas tous les enregistrements de la table. Il vous faudra alors cons-
truire et mettre en relation une deuxime table, paralllement la
premire. Seuls les enregistrements concerns dans la table princi-
pale utiliseront la table secondaire pour y stocker des informations.
Cette technique vite le gaspillage de place dans la table principale
par des champs laisss vides.
Les relations un un, peu courantes, possdent une particularit :
elles sont relies de cl primaire cl primaire.
Voici un exemple dutilisation dune relation un un dans la gestion
des disques. Certains disques font lobjet dune promotion jusqu
une date dtermine. Pendant la priode de promotion, ils sont
vendus un prix infrieur au prix public (appliqu aprs expiration
de la date qui marque la n de la priode promotionnelle). Lutilisa-
tion dune relation un un entre la table Disques et la table Promo-
tions est justie.
Vous tes ici dans une situation nouvelle : ces informations sont
propres aux disques mais tous les disques ne font pas lobjet dune
priode promotionnelle.
Devant ce cas de gure, vous pourriez tre tent de modier la table
Disques et dy ajouter certains champs qui permettraient de stocker
les informations relatives la promotion. Il ne sagirait pas dune
erreur danalyse, puisque les informations ont bien comme sujet les
disques. Pourtant, dans de nombreux enregistrements de la table
Disques, des champs resteraient vides, ce qui occuperait inutilement
de lespace sur votre disque dur et ralentirait vos traitements (les
temps de traitements sont plus importants dans les grandes tables
que dans les petites).
Figure 4.29 : La structure de la table Disques
Figure 4.30 : La structure de
la table Promotions
252 4. Contrler la cohrence des donnes
La table Promotions nutilise pas, comme laccoutume, un champ
de type NumroAuto comme cl primaire, mais cette dernire (cre
sur le champ nodisque) est constitue par les valeurs de la cl
primaire de la table Disques qui y sont reportes. Procdez ainsi :
1 Vriez que toutes les tables sont fermes car il nest pas possible
de crer une relation lorsque les tables que cette dernire utilise
sont ouvertes.
Vous allez crer la relation entre les tables Disques et Promotions.
2 Affichez longlet des relations en cliquant sur longlet Outils de
base de donnes puis sur le bouton Relations du groupe Relations.
Vous allez ajouter la table Promotions dans longlet des relations.
3 Cliquez sur le bouton Afficher la table du groupe Relations de
longlet Crer ou encore cliquez du bouton droit dans longlet
Relations. Choisissez Afficher la table dans le menu contextuel qui
apparat.
4 Dans la bote de dialogue Afficher la table, slectionnez longlet
Table, cliquez sur la table Promotions, puis sur le bouton Ajouter et
sur le bouton Fermer.
La structure des deux tables apparat dans longlet Relations.
La relation entre les cls primaires (nommes ici toutes deux nodis-
que) des deux tables doit tre dnie. Le sens du trac est important
lors de la cration de la relation.
5 Glissez la cl primaire nodisque de la table Disques vers la cl
primaire de la table Promotions. Cliquez sur le bouton Crer de la
bote de dialogue Modier des relations.
Vous devez remplir la table Promotions partir de la table Disques et
non linverse. La table dite matresse ou principale est la table Dis-
ques.
Figure 4.31 : Une relation
un un va tre cre
253 4.3. Dfinir les relations entre les tables
Voici la reprsentation schmatique de la relation un un entre les
tables Disques et Promotions, affiche dans longlet Relations :
Lillustration qui suit montre, cette fois, lensemble des relations
appliques entre les tables, dans longlet Relations :
6 Fermez et enregistrez longlet Relations.
Modier une relation
Une relation peut tre modie aprs sa cration. Pour ce faire :
1 Vriez que toutes les tables sont fermes. En effet, il nest pas
possible de modier une relation lorsque les tables quelle utilise
sont ouvertes.
2 Affichez les relations existantes dans longlet des relations en
cliquant sur longlet Outils de base de donnes puis sur le bouton
Relations du groupe Relations.
Figure 4.32 : La relation un un
entre les deux tables, affiche
dans longlet Relations
Figure 4.33 : Lensemble des relations entre les tables dans longlet Relations
254 4. Contrler la cohrence des donnes
Longlet Relations est affich.
3 Double-cliquez sur la ligne symbolisant la relation que vous sou-
haitez modier ou cliquez sur le bouton Modier des relations du
groupe Outils de longlet Crer. Vous pouvez galement cliquer du
bouton droit sur la relation modier dans longlet Relations, puis
choisir Modier une relation dans le menu contextuel qui apparat.
4 Modiez les paramtres de la bote de dialogue Modier des rela-
tions. Cliquez sur le bouton OK de la bote de dialogue.
Afficher seulement les relations spcifiques une table
Pour visualiser uniquement les relations dnies sur
une table dans longlet Relations, commencez par
masquer toutes les relations et toutes les tables en cliquant sur le bouton
Effacer la mise en page du groupe Outils de longlet Crer.
Cette action ne supprime pas les tables et les relations ; seulement leur
affichage dans longlet Relations. Conrmez la suppression en cliquant sur le
bouton Oui propos dans la bote de dialogue qui apparat. Ajoutez la table de
votre choix au moyen du bouton Afficher la table du groupe Relations de
longlet Crer. Cliquez sur le bouton Afficher les relations directes du groupe
Relations de longlet Crer.
Supprimer une relation
Pour supprimer une relation, utilisez le mode opratoire dcrit ci-
aprs :
1 Vriez que toutes les tables sont fermes car il nest pas possible
de supprimer une relation lorsque les tables quelle utilise sont
ouvertes.
Figure 4.34 : La modication dune relation
Figure 4.35 : Le bouton Afficher les relations directes du groupe
Relations
255 4.3. Dfinir les relations entre les tables
2 Affichez les relations existantes dans longlet des relations en
cliquant sur longlet Outils de base de donnes puis sur le bouton
Relations du groupe Relations.
3 Cliquez sur la relation que vous souhaitez supprimer puis appuyez
sur la touche [Suppr]. Vous pouvez galement cliquer du bouton
droit sur la relation modier dans longlet Relations, puis choisir
Supprimer dans le menu contextuel qui apparat.
4 Lorsque Access demande une conrmation de la suppression,
acceptez en cliquant sur le bouton Oui de la bote de dialogue qui
apparat.
Supprimer une table de longlet Relations
Pour ne plus afficher une table dans longlet Relations, cliquez sur la table
supprimer, puis utilisez la touche [Suppr]. Cette opration ne supprime pas la
table dans la base de donnes mais seulement son affichage dans longlet
Relations.
4.4. Appliquer des rgles dintgrit
rfrentielle
Les rgles dintgrit rfrentielle sont des actions trs puissantes de
mise jour des donnes renfermes dans les tables de la base de
donnes et qui assurent la cohrence des informations. Elles utili-
sent les relations dnies entre les tables.
Comprendre lutilit des rgles dintgrit
rfrentielle
Dans le chapitre prcdent, nous avons insist sur limportance de
protger lintgrit des donnes au niveau de la table par des rgles
Figure 4.36 : La suppression dune relation
depuis le menu contextuel
256 4. Contrler la cohrence des donnes
de validation sur les champs et sur la table. Lintgrit rfrentielle
uvre dans le mme esprit, mais un niveau suprieur, celui des
relations entre les tables.
Imaginez, dans un systme de facturation, que lutilisateur de la base
de donnes puisse supprimer un enregistrement de la table des
clients alors que le numro du client concern est utilis dans la table
des factures. Les consquences dune telle action pourraient tre
dramatiques pour le service comptable qui ne saurait plus qui
imputer le document. Le rle de lintgrit rfrentielle est demp-
cher quune telle situation puisse se produire, en appliquant des
rgles au niveau des relations. Cette fonctionnalit protge les don-
nes des incohrences qui pourraient natre entre les tables.
Lapplication de lintgrit rfrentielle est sans nul doute lopration
la plus importante que vous puissiez et deviez appliquer sur une base
de donnes. En effet, elle interdit les actions qui ne respectent pas les
rgles dnies, quel que soit le moyen daccs aux tables utilis.
La saisie de donnes sans rgles dintgrit rfrentielle
Voici un exemple de donnes saisies dans la table Disques. La rela-
tion un plusieurs est tablie entre les tables Maisons ddition de
disques et Disques sans application de lintgrit rfrentielle.
La table Maisons ddition de disques contient, supposons-le, quatre
enregistrements.
Pour chaque disque de la table Disques, le numro de la maison de
disque doit tre saisi. Pour cela, les cls primaires de la table Maisons
ddition de disques doivent tre utilises dans la colonne nomaison-
disque de la table des Disques.
Une erreur est alors commise lors de la saisie de la cl primaire dans
la colonne nomaisondisque du deuxime disque.
Figure 4.37 : Les enregistrements renferms dans la table des maisons ddition
Figure 4.38 : Un numro de maison de disques inexistant est saisi dans la table des disques
257 4.4. Appliquer des rgles dintgrit rfrentielle
Le deuxime disque de la table Disques fait appel, dans la colonne
nomaisondisque, une maison de disques portant le numro 31. Or,
cette valeur ne gure pas dans la table Maisons ddition de disques.
Access accepte toutefois dans ce cas la saisie dune cl primaire
nexistant pas dans la table Maisons ddition de disques. Selon le
terme consacr, lintgrit des donnes de la base est viole.
Une donne incohrente a donc pu tre introduite dans la table
Disques puisque la maison de disques portant le numro 31 nexiste
pas. Cette saisie aberrante doit tre empche tout prix car les
traitements ultrieurs en seront perturbs, voire impossibles. Imagi-
nez, par exemple, que vous (ou lun de vos collaborateurs) dvelop-
piez dans quelques mois un traitement statistique qui rfrence les
pourcentages des disques par maison de disques : le rsultat de
lenqute sera obligatoirement faux puisque les donnes le sont
initialement.
La saisie de donnes avec des rgles dintgrit
rfrentielle
Reprenons le mme cas de gure et changeons lhypothse de
dpart : la relation un plusieurs est tablie entre les tables Maisons
ddition de disques et Disques avec application de lintgrit rfren-
tielle.
Aprs validation de la saisie de la valeur 31 dans la colonne nomai-
sondisque du deuxime disque dans la table Disques, un message
indiquant une erreur dintgrit apparat car aucune maison de dis-
que nutilise la valeur 31 comme cl primaire dans la table Maisons
ddition de disques. La saisie est alors impossible car Access emp-
che loprateur de poursuivre.
Ainsi, il apparat que si lintgrit rfrentielle est applique, la saisie
de donnes incohrente est impossible. Le systme s"autoprotge"
contre les saisies aberrantes.
Figure 4.39 : La donne aberrante est refuse lorsque lintgrit rfrentielle est applique
258 4. Contrler la cohrence des donnes
Appliquer lintgrit rfrentielle
Voyez comment appliquer des rgles dintgrit rfrentielle entre
deux tables en relation pour empcher la saisie de donnes incoh-
rentes. Pour cela :
1 Vriez que toutes les tables sont fermes. En effet, il nest pas
possible de modier une relation lorsque les tables quelle utilise
sont ouvertes.
2 Affichez longlet Relations en cliquant sur longlet Outils de base de
donnes puis sur le bouton Relations du groupe Relations.
Dans cet exemple, vous choisissez la relation un plusieurs qui lie
les tables Maisons ddition de disques et Disques.
3 Double-cliquez sur la ligne symbolisant la relation entre les deux
tables ou cliquez sur le bouton Modier des relations du groupe
Outils de longlet Crer. Vous pouvez galement cliquer du bouton
droit sur la relation modier dans longlet Relations, puis choisir
Modier une relation dans le menu contextuel qui apparat.
La bote de dialogue Modier des relations saffiche.
4 Cochez la case Appliquer lintgrit rfrentielle. Cliquez sur OK
pour fermer la bote de dialogue.
Dans longlet Relations, lintgrit rfrentielle est reprsente par
les symboles 1 et , ajouts au schma de la relation.
Figure 4.40 : Lintgrit
rfrentielle est applique
sur la relation
Figure 4.41 : La
symbolisation de
lapplication de lintgrit
rfrentielle
259 4.4. Appliquer des rgles dintgrit rfrentielle
Lintgrit ne peut tre applique que sur des donnes cohrentes
Access refuse dappliquer lintgrit rfrentielle sur des donnes incoh-
rentes. Il faut donc corriger les incohrences dans les donnes avant dappli-
quer lintgrit rfrentielle. Cliquez sur OK dans la bote de dialogue du
message de Microsoft Access. Dans la bote de dialogue Modier des rela-
tions, dcochez la case Appliquer lintgrit rfrentielle puis cliquez sur OK.
Corrigez les donnes aberrantes dans les tables et tentez une nouvelle appli-
cation de lintgrit rfrentielle sur la relation.
5 Fermez longlet Relations.
Appliquer lintgrit rfrentielle en cascade
Lintgrit rfrentielle permet daller encore plus loin dans la pro-
tection de la cohrence des donnes en ralisant des mises jour
automatiques entre des tables lies. Ces oprations sont dsignes
par le terme "cascades".
Vous avez dj remarqu que lintgrit rfrentielle vous empchait
dutiliser des numros de cls primaires inexistants dans la table
connexe. Lintgrit rfrentielle vous empche galement de com-
mettre une incohrence dans les donnes en vous interdisant de
modier un numro de cl primaire dans une table ou de supprimer
un enregistrement dune table rattache des lignes dune autre
table en relation.
Voici un exemple de donnes saisies dans la table Disques. La rela-
tion un plusieurs est tablie entre les tables Maisons ddition de
disques et Disques avec application de lintgrit rfrentielle sans
cascade.
Le premier enregistrement de la table Disques utilise la valeur de cl
primaire 1 (colonne nomaisondisque) comme maison ddition de
disques.
Figure 4.42 : Les donnes incohrentes devront tre corriges dans les tables avant que lintgrit
rfrentielle puisse tre applique
260 4. Contrler la cohrence des donnes
Si vous tentez de supprimer le premier enregistrement (dont la cl
primaire est 1) de la table Maisons ddition de disques, Access affiche
un message interdisant la suppression de lenregistrement.
Une fois encore, lintgrit rfrentielle empche lutilisateur de la
base de commettre une incohrence dans les donnes en interdisant
de supprimer une maison de disque rattache des lignes de la table
Disques.
Prendre le temps de dfinir les rgles dintgrit rfrentielle
Ne vous attelez pas la construction des formulaires et des tats avant
davoir correctement et intgralement appliqu les rgles dintgrit rfren-
tielle entre les tables. Vous risquez autrement de perdre beaucoup de temps
reconstruire des donnes illogiquement enregistres car mal protges par
des saisies aberrantes.
Deux cas de gures vont vous permettre de comprendre cette notion
de cascade.
Imaginez quun numro de chanson soit modi dans la table Chan-
sons. Ce nest pas possible actuellement puisque le numro est de
type NumroAuto et quAccess ne vous autorise pas le modier.
Mais si la cl primaire de la table des chansons est gnre manuel-
lement avec des numros uniques du type SRV1979-003 et sil vous
est demand de modier lun dentre eux ? Si vous effectuez une
telle modication, toutes les lignes de la table de jonction liant la
Figure 4.43 : La saisie de la valeur de la cl primaire de la table des maisons de disques, dans le
champ nomaisondisque de la table des disques
Figure 4.44 : La suppression de lenregistrement, dans la table des maisons de disques, est interdite
par lintgrit rfrentielle car la valeur de sa cl primaire est utilise dans la table des disques
261 4.4. Appliquer des rgles dintgrit rfrentielle
table des chansons avec celle des artistes et utilisant ce numro
deviendront incohrentes puisque le numro nexistera plus dans la
table des chansons. Lintgrit rfrentielle, applique seule, ne pro-
tge donc pas les donnes contre ce type dincohrence. Si la mise
jour en cascade est applique, la modication de la cl primaire dans
la table Chansons va entraner une mise jour automatique des
valeurs des cls correspondantes dans la table Jonction-Chansons-
Artistes. On parle alors de cascade de mise jour de la table princi-
pale vers la table connexe.
Autre situation type : grce lintgrit rfrentielle, il vous est
impossible de supprimer une chanson dans la table Chansons si
celle-ci est attache des lignes de la table Jonction-Chansons-
Artistes. Mais comment traiter le cas de gure dans lequel une
chanson aurait t saisie deux fois ? Comment effacer litration,
devenue inutile, dans la table Chansons ? Lintgrit rfrentielle,
applique seule, empche la suppression dune chanson dans la
table des chansons, interdisant ainsi que des enregistrements de la
table de jonction liant la table des chansons celle des artistes
utilisent un numro de chanson nexistant plus. Si la mise jour en
cascade est applique, la suppression de lenregistrement de la
chanson dans la table Chansons devient possible, mais entrane la
suppression des enregistrements correspondants dans la table
Jonction-Chansons-Artistes. On parle alors de suppression en cas-
cade des enregistrements de la table connexe.
Ces deux exemples mettent en vidence limportance des cascades
dans lapplication de lintgrit rfrentielle.
Vous allez dcouvrir comment mettre cette thorie en application
dans Access. Procdez ainsi :
Figure 4.45 : La relation plusieurs
plusieurs entre la table des chansons
et celle des artistes
262 4. Contrler la cohrence des donnes
1 Vriez que toutes les tables sont fermes car il nest pas possible
de modier une relation lorsque les tables quelle utilise sont
ouvertes.
2 Affichez longlet Relations en cliquant sur longlet Outils de base de
donnes puis sur le bouton Relations du groupe Relations. Double-
cliquez sur la relation entre les deux tables.
La bote de dialogue Modier des relations apparat.
Dans cet exemple, vous vous intresserez la relation un plusieurs
entre les tables Chansons et Jonction-Chansons-Artistes.
3 Dans la bote de dialogue Modier des relations, cochez les cases
Mettre jour en cascade les champs correspondants et Effacer en
cascade les enregistrements correspondants.
4 Fermez la bote de dialogue en cliquant sur OK.
Depuis longlet des relations, appliquez les intgrits en cascade aux
relations, lorsque cela savre ncessaire uniquement. Si, par exem-
ple, une maison de disques nexiste plus, vous pouvez la supprimer
de la table Maisons ddition de disques. Dans ce cas, les disques de
cette maison de disques dans la table Disques doivent-ils tre sup-
prims ? Question importante car si vous rpondez "oui", vous ne
pourrez plus grer le stock de disques restants. Il est srement plus
raisonnable de conserver la maison de disques en mmoire dans la
table des disques.
Figure 4.46 : Lapplication
des cascades dans la
relation
Figure 4.47 : Lapplication
des cascades nest pas
systmatique sur toutes les
relations
263 4.4. Appliquer des rgles dintgrit rfrentielle
4.5. Imprimer les relations
Il est souvent utile dimprimer longlet des relations an de le conser-
ver sous les yeux pendant le travail sur lapplication. Procdez ainsi :
1 Affichez longlet Relations en cliquant sur longlet Outils de base de
donnes puis sur le bouton Relations du groupe Relations.
2 Cliquez sur le bouton Rapport de relations du groupe Outils de
longlet Crer.
Un tat est gnr et apparat en mode Aperu avant impression. Il
est dot dun nom par dfaut et dun en-tte comprenant la date de
cration de ltat.
3 Modiez ventuellement la mise en page en cliquant sur les bou-
tons du groupe Mise en page de longlet Aperu avant impression.
4 Pour imprimer ltat, cliquez sur le bouton Imprimer de longlet
Aperu avant impression ou sur le bouton Office puis sur Imprimer.
Figure 4.48 : Le bouton Rapport de relations du groupe Outils
Figure 4.49 : Laperu des relations
264 4. Contrler la cohrence des donnes
5 Enregistrez ltat en cliquant sur longlet Fichier puis sur
Enregistrer lobjet sous.
Ltat sera alors conserv en tant quobjet de la base de donnes et
apparatra dans la catgorie dobjets Etats du volet de navigation.
6 Fermez la fentre de ltat en utilisant le bouton Fermer laperu
avant impression de longlet Aperu avant impression.
Tlchargement de la base de donnes
Vous trouverez la base de donnes nalise dans ce chapitre, Gestion des
disques4-nale.accdb, sur le site de Micro Application (www.microapp.com) dans
le dossier Chapitre04.
4.6. Cas pratique
Vous allez maintenant oprer quelques manipulations pratiques.
Vous tudierez un cas concret dapplication utilisant plusieurs tables
quil vous faudra lier par des relations sur lesquelles lintgrit rf-
rentielle et lapplication des rgles de cascade seront mises en u-
vre.
Dans les cas pratiques des chapitres prcdents, les tables suivantes
ont t cres dans lapplication de gestion des livres que vous avez
commenc dvelopper :
j Livres ;
Figure 4.50 : Ltat affichant les relations classes dans le
volet de navigation
265 4.6. Cas pratique
j Collections ;
j Types ;
j Auteurs ;
j Contacts.
Vous allez continuer le dveloppement et vous intresser en particu-
lier la facturation des ouvrages. terme, votre objectif est de
pouvoir grer les factures produites par lditeur.
Voici les lments types apparaissant sur une facture :
Tableau 4.1 : Les informations renfermes sur une facture
lment de la facture Champ Table du champ
Numro de la facture nofacture Factures
Date de la facture datefacture Factures
Socit du client societe Contacts
Nom du client nom Contacts
Prnom du client prenom Contacts
Adresse du client adresse Contacts
Code postal du client cp Contacts
Ville du client ville Contacts
Pays du client pays Contacts
Rfrence du livre nolivre Livres
Titre du livre titre Livres
Quantit de livres Le mode de stockage de cet lment est expli-
qu plus loin (il sera enregistr dans une table
de jonction entre la table des factures et celle
des livres).
Code TVA des livres tva Taxes
Prix unitaire hors taxe
du livre
prixht Livres
Montant hors taxe de la
ligne
Valeur calcule
Total hors taxe de la
facture
Valeur calcule
Total de la TVA de la
facture
Valeur calcule
Total toutes taxes com-
prises de la facture
Valeur calcule
Montant du rglement montantreglement Reglements
Mode de rglement nomreglement Modesreglement
266 4. Contrler la cohrence des donnes
Ce tableau vous montre que dautres tables sont ncessaires. Vous
allez devoir crer la structure des tables suivantes :
j Factures ;
j Taxes ;
j Reglements ;
j Modereglements.
Les montants totaux HT, TTC et de TVA seront calculs en fonction de
la quantit. Vous le verrez bientt, ces montants peuvent tre recal-
culs tout moment (inutile de stocker le montant hors taxe dune
ligne de facture quand celui-ci peut tre calcul par la multiplication
de la quantit par le montant hors taxe du produit).
Les valeurs calcules
Il faut viter de stocker des informations dans des champs quand celles-ci
peuvent tre calcules depuis des valeurs contenues dans dautres champs.
Cette dmarche vite le gaspillage de place sur le disque dur et diminue les
risques derreurs. Seuls des cas particuliers peuvent vous amener trans-
gresser cette rgle.
Tlchargement de la base de donnes
Vous trouverez la base de donnes utilise dans ce chapitre, Facturation
livres4 initiale.accdb, sur le site de Micro Application (www.microapp.com) dans
le dossier Chapitre04.
Dnir des relations un plusieurs
Commencez par appliquer lintgrit rfrentielle sur les relations un
plusieurs dj cres dans la base de donnes. Vous ajouterez
ensuite les relations de ce type qui manquent dans la base.
Voir les relations existantes et appliquer lintgrit
rfrentielle
Vous allez afficher les relations existantes dans longlet des relations.
Pour cela :
1 Ouvrez la base de donnes Facturation livres4 initiale.accdb.
2 Vriez que toutes les tables sont fermes car il nest pas possible
de modier une relation lorsque les tables quelle utilise sont
ouvertes.
267 4.6. Cas pratique
3 Cliquez sur longlet Outils de base de donnes puis sur le bouton
Relations du groupe Relations.
4 Si longlet Relations est vide, cliquez sur le bouton Afficher toutes
les relations du groupe Relations de longlet Crer.
Les deux relations qui apparaissent ont t cres lors de ltablis-
sement dune liste de choix pour les champs collection et type de la
table Livres.
La premire relation traduit quune collection de livres (Le Poche,
Superpoche) de la table Collections est utilise pour plusieurs
livres de la table Livres, alors quun livre de la table Livres nest
commercialis que dans une seule collection de la table Collections.
La seconde relation traduit quun type de livre (Bureautique, Pro-
grammation) de la table Types est utilis pour plusieurs livres de la
table Livres, alors quun livre de la table Livres nest commercialis
que dans un seul type de la table Types.
Vous allez vrier le type de relation entre les tables Collections et
Livres :
5 Double-cliquez sur le lien entre les tables Collections et Livres de
longlet Relations.
La fentre Modier des relations montre la relation un plusieurs de
la table Collections vers la table Livres entre le champ nocollection de
la table Collections et le champ collection de la table Livres.
Pour chaque livre de la table Livres, le numro de la collection doit
tre stock. Les cls primaires de la table Collections seront utilises
dans la colonne collection de la table des Livres.
Vous allez appliquer lintgrit rfrentielle et une mise jour en
cascade :
Figure 4.51 : Longlet Relations
268 4. Contrler la cohrence des donnes
6 Dans la bote de dialogue Modier des relations, cochez la case
Appliquer lintgrit rfrentielle.
Pour cette relation, la modication de la cl primaire dans la table
Collections entranera une mise jour des cls correspondantes dans
la table Livres. La suppression dun enregistrement de la collection
dans la table Collections nentranera toutefois pas la suppression
des enregistrements correspondants dans la table Livres.
7 Dans la bote de dialogue Modier des relations, cochez la case
Mettre jour en cascade les champs correspondants et dcochez la
case Effacer en cascade les enregistrements correspondants. Cliquez
sur le bouton OK.
8 Dans longlet des relations, appliquez la mme intgrit rfren-
tielle en cascade entre les tables Types et Livres.
Figure 4.52 : Lapplication
de lintgrit rfrentielle
en cascade entre les tables
Collections et Livres
Figure 4.53 : Lapplication
de lintgrit rfrentielle
entre la table des types et
celle des livres
269 4.6. Cas pratique
Crer une relation un plusieurs
Une facture est produite chaque fois quune personne ralise un
achat de livres.
Vous allez tudier la relation entre les tables Contacts et Factures.
Un client de la table Contacts est utilis pour plusieurs factures de la
table Factures alors quune facture de la table Factures nest gnre
que pour un seul client de la table Contacts. Vous allez donc crer la
relation un plusieurs entre les tables Factures et Contacts.
Commencez par crer la structure de la table Factures :
1 Dans longlet des relations, cliquez sur longlet Crer du
Ruban puis cliquez sur le bouton Cration de table du groupe
Tables.
2 Dans longlet Table1 qui saffiche, crez la structure de la table
Factures compose des champs nofacture de type NumroAuto et
datefacture de type Date/Heure.
3 Utilisez lAssistant pour affecter le masque de saisie Date, abrg
au champ datefacture de type de donnes Date/heure.
La cl primaire doit tre dnie sur le champ nofacture.
4 Placez le pointeur dans la ligne nofacture. Cliquez sur le bouton Cl
primaire du groupe Outils de longlet Cration.
Chaque client ne sera enregistr quune fois dans la table des
contacts, et il suffit de faire appel sa rfrence dans la table des
factures pour le dsigner. Autrement dit, le numro de lidentiant de
la facture est stock dans la table des contacts ; lorsque vous aurez
besoin de connatre son adresse, vous irez la chercher dans la table
des contacts.
Pour mettre en relation les deux tables, vous devez disposer dune
information commune. Vous utiliserez pour cela le champ nocontact
de la table Contacts, que vous dupliquerez dans la table Factures. Il
sera donc possible, dans une facture donne, de faire rfrence un
client uniquement par son numro.
5 Ajoutez le champ nocontact de type Numrique la structure de la
table Factures (voir Figure 4.54).
6 Fermez la table Factures.
Le numro du client se trouve dsormais dans les deux tables.
Toutefois, il ne gure quune fois dans la table des clients (cest la cl
primaire), alors quil peut apparatre plusieurs fois dans la table des
270 4. Contrler la cohrence des donnes
factures (une facture ntant adresse qu un seul client alors quun
client peut apparatre sur plusieurs factures). Vous allez reproduire
cette relation un plusieurs :
7 De retour dans longlet des relations, cliquez sur le bouton
Afficher la table du groupe Relations de longlet Crer.
8 Dans la bote de dialogue Afficher la table, slectionnez longlet
Table, cliquez sur la table Contacts, puis sur le bouton Ajouter.
Ajoutez de la mme faon la table Factures et fermez la bote de
dialogue.
La structure des deux tables est maintenant reprsente de faon
simplie dans longlet Relations (seuls les noms des champs appa-
raissent dans les tables). La cl primaire de la table Contacts (le
champ nocontact) nest pas dnie. Vous allez dnir la cl primaire
de cette table.
9 Ouvrez la table Contacts en mode Cration en cliquant du bouton
droit sur la table, puis sur Cration de table dans le menu contex-
tuel qui apparat.
Figure 4.54 : La structure de la table Factures, aprs sa cration
Figure 4.55 : La table
Contacts va tre modie
271 4.6. Cas pratique
10 Dnissez la cl primaire en vous plaant sur la ligne nocontact,
sur le bouton Cl primaire du groupe Outils de longlet Cration.
Une cl se dessine gauche du champ nocontact.
11 Sous longlet Gnral, vriez que la zone Index prend automati-
quement la valeur Oui - Sans doublons. Fermez et enregistrez la
table Contacts.
12 Pour crer la relation entre les deux tables, cliquez sur le champ
nocontact de la table Contacts dans longlet des relations. Mainte-
nez le bouton de la souris enfonc et glissez vers le champ nocon-
tact de la table Factures.
La bote de dialogue Modier des relations saffiche. Celle-ci schma-
tise la relation entre les deux tables sur le numro de contact. Cest
dans cette bote de dialogue que vous dnirez lintgrit rfren-
tielle.
13 Cochez la case Appliquer lintgrit rfrentielle. Cliquez sur Crer
pour fermer la bote de dialogue.
Lintgrit est applique. Remarquez la modication qui sest opre
dans longlet Relations : le ct un est symbolis par le chiffre 1 et le
ct plusieurs est, lui, symbolis par le symbole .
Figure 4.56 : La relation un plusieurs est symbolise entre les deux tables, aprs lapplication de
lintgrit rfrentielle
272 4. Contrler la cohrence des donnes
14 Fermez longlet Relations en utilisant le bouton Fermer de longlet
Crer. Enregistrez la mise en forme.
Vous allez tester lintgrit rfrentielle. La premire tape de cette
opration consistera vrier les numros de cls primaires existants
dans la table Contacts et qui seront utiliss dans la table Factures.
15 Ouvrez la table Contacts en mode Feuille de donnes. Cette table
renferme deux contacts, portant les cls primaires respectives 1
et 2.
16 Aprs avoir referm la table Contacts, ouvrez la table Factures en
mode Feuille de donnes et tentez de saisir, dans le champ nocon-
tact, un numro de client qui nexiste pas dans la table Contacts ; le
numro 722455 par exemple.
Lorsque vous essayez de vous placer sur un autre enregistrement,
Access vous linterdit et affiche un message vous signalant quun
enregistrement associ est requis dans la table Contacts.
Votre tentative de transgression des rgles dintgrit rfrentielle a
chou : vous ne pourrez dsormais quitter lenregistrement en
cours quen saisissant un numro de contact existant.
17 Fermez la bote de dialogue Microsoft Office Access vous indiquant
que lajout de lenregistrement est impossible, en cliquant sur le
bouton OK. Saisissez un numro de client qui existe dans la table
Contacts, le numro 2 par exemple, ainsi quune date de facture
dans la colonne datefacture. Fermez la table Factures.
Figure 4.57 : La table Contacts ne compte que deux clients
Figure 4.58 : La saisie dun mauvais numro de contact dans la table Factures
273 4.6. Cas pratique
Vous allez essayer de supprimer dans la table Contacts le contact qui
vient dtre utilis dans la table Factures.
18 Ouvrez la table Contacts en mode Feuille de donnes et tentez de
supprimer lenregistrement ayant la cl primaire numro 2.
Une fois encore, lintgrit rfrentielle refuse dautoriser une inco-
hrence dans les donnes en interdisant de supprimer un contact qui
est rattach des factures. Lintgrit rfrentielle empchait dutili-
ser des numros de cls primaires inexistants dans la table connexe
(comme un numro de contact inexistant dans la table Contacts
appel depuis la table Factures). Cet exemple montre quil est gale-
ment impossible de dtruire un contact dj rattach des factures,
comme dans cet exemple. Vous constatez quel point lapplication
des rgles dintgrit rfrentielle est importante, ds le dbut de la
construction de votre base.
19 Cliquez sur le bouton OK de la bote de dialogue. Fermez la table
Contacts.
Dnir des relations plusieurs plusieurs
Vous allez tudier la relation entre les tables Factures et Livres. Un
livre peut apparatre sur plusieurs factures, mais une facture peut
galement contenir plusieurs livres. Vous tes donc face une rela-
tion de type plusieurs plusieurs.
Vous utiliserez une troisime table de jonction, qui combinera la
fois la cl primaire de la table Factures et celle de la table Livres. La
combinaison des deux cls donnera un identiant unique qui per-
mettra de faon certaine de retrouver tous les livres utiliss dans une
facture, mais galement, dans lautre sens, toutes les factures faisant
mention dun livre donn.
Figure 4.59 : La suppression du contact est impossible dans la table Contacts
274 4. Contrler la cohrence des donnes
Vous allez dabord crer la table de jonction nomme Facturelignes.
Elle contiendra les lignes de facture (une facture contiendra au moins
une ligne, mais pourra en contenir plusieurs). Il y aura autant de
lignes de facture que de livres facturs sur la facture. La table Factu-
res ne contient que des en-ttes de facture, cest--dire le numro de
la facture, sa date et le numro du client. chaque en-tte de facture
correspondront une ou plusieurs lignes de facture. Une ligne de
facture, quant elle, sera associe un en-tte de facture et contien-
dra les informations relatives la facturation dun livre (le numro de
facture auquel la ligne est rattache, le numro du livre et la quantit
de livres).
1 En mode Cration, crez la table Facturelignes compose des
champs nofacture et nolivre de type Numrique.
La cl primaire sera compose de deux champs, nofacture et nolivre,
qui sont les cls des deux autres tables, appeles "cls trangres".
2 Pour crer la cl primaire compose des deux champs, slection-
nez ces derniers et cliquez sur le bouton Cl primaire du groupe
Outils de longlet Cration.
Un symbole de cl primaire apparat sur chaque ligne.
Observez cette nouvelle cl primaire compose de plusieurs
champs. Lexemple simpli suivant va mettre son caractre unique
en vidence : la table des factures contient deux factures, numro-
tes 1 et 2 ; la table des livres contient, elle, trois livres, numrots 7,
8 et 9. Dressez une table de toutes les combinaisons des cls :
Tableau 4.2 : Combinaisons entre les deux cls primaires
Numro de facture
(nofacture)
Numro du livre
(nolivre)
Combinaison des deux numros (cl primaire
dans la table Facturelignes)
1 7 17
1 8 18
1 9 19
Figure 4.60 : La cl primaire de la table Facturelignes est compose de deux champs
275 4.6. Cas pratique
Tableau 4.2 : Combinaisons entre les deux cls primaires
Numro de facture
(nofacture)
Numro du livre
(nolivre)
Combinaison des deux numros (cl primaire
dans la table Facturelignes)
2 7 27
2 8 28
2 9 29
Ce tableau met en vidence lunicit de chaque combinaison des
deux numros qui formeront la cl primaire dans la table des lignes
de facture.
3 Ajoutez galement la structure le champ quantite de type Num-
rique. Il est li au livre factur dans la ligne de la facture puisquil
contiendra la quantit de produit facture.
4 Fermez et enregistrez la table Facturelignes.
Vous allez maintenant crer les relations entre les trois tables.
5 Ouvrez longlet Relations en cliquant sur longlet Outils de base de
donnes puis sur le bouton Relations du groupe Relations. Ajoutez
la table Facturelignes dans longlet Relations en utilisant le bouton
Afficher la table du groupe Relations. Dans la bote de dialogue
Afficher la table, cliquez sur longlet Tables, puis slectionnez la
table Facturelignes. Cliquez sur le bouton Ajouter puis fermez la
bote de dialogue en utilisant le bouton Fermer (voir Figure 4.62).
Entre les tables Facture et Facturelignes, vous allez tracer la relation
un plusieurs que lon peut traduire de la faon suivante :
Une facture de la table Factures peut contenir plusieurs lignes de
facture de la table Facturelignes.
Chaque ligne de factures de la table Facturelignes correspond un
seul en-tte de facture de la table Factures.
6 Dans longlet Relations, tracez la relation entre les champs nofac-
ture des tables Factures et Facturelignes. Dans la bote de dialogue
Modier des relations, appliquez lintgrit rfrentielle en cochant
la case Appliquer lintgrit rfrentielle.
Figure 4.61 : La structure de la table Facturelignes
276 4. Contrler la cohrence des donnes
7 Appliquez lintgrit en cascade. Cochez les cases Mettre jour en
cascade les champs correspondants et Effacer en cascade les enregis-
trements correspondant de la bote de dialogue Modier des rela-
tions.
8 Fermez la bote de dialogue en cliquant sur le bouton Crer pour
retourner dans longlet Relations.
Figure 4.62 : La table Facturelignes est ajoute dans longlet des relations
Figure 4.63 : La mise jour
et la suppression en cascade
entre les tables Factures et
Facturelignes
277 4.6. Cas pratique
Il vous reste tablir la relation entre les tables Livres et Factureli-
gnes. Elle devra traduire la situation suivante :
Un livre de la table Livres peut apparatre dans plusieurs lignes de
facture de la table Facturelignes ;
Chaque ligne de facture de la table Facturelignes correspond un
seul livre de la table Livres.
9 Tracez la relation entre les champs nolivre des tables Livres et
Facturelignes.
Vous allez appliquer lintgrit en cascade pour la mise jour seule-
ment. En effet, la modication de la cl primaire dans la table Livres
doit entraner une mise jour des cls correspondantes dans la table
Facturelignes mais la suppression de lenregistrement dun livre dans
la table Livres ne doit pas entraner la suppression des enregistre-
ments correspondants dans la table Facturelignes.
10 Dans la bote de dialogue Modier des relations, appliquez lint-
grit rfrentielle et la mise jour en cascade en cochant les cases
Appliquer lintgrit rfrentielle et Mettre jour en cascade les
champs correspondants.
Dans longlet des relations, la relation plusieurs plusieurs entre les
tables Factures et Livres est traduite par deux relations un plusieurs
avec la table de jonction Facturelignes.
Figure 4.64 : La relation un plusieurs entre les
tables Factures et Facturelignes
Figure 4.65 : La relation
plusieurs plusieurs et
lapplication de lintgrit
rfrentielle entre les
tables Livres et
Facturelignes
278 4. Contrler la cohrence des donnes
11 Fermez et enregistrez les modications apportes dans longlet
Relations.
Vous allez enn pouvoir saisir la facture de deux livres. Len-tte de la
facture est saisir dans la table Factures.
12 Ouvrez la table Factures en mode Feuille de donnes. Vriez
quun en-tte de facture existe dans la table. Si ce nest pas le cas,
saisissez une date de facture dans la colonne datefacture, puis un
numro de client dans la colonne nocontact (le numro du contact
saisi doit exister dans la table Contacts).
Vous allez saisir les lignes de cette facture dans la table Factureli-
gnes :
13 Sans fermer la fentre, visualisez lindicateur de dveloppement +,
gauche du numro de facture (sur lillustration ci-aprs, le nu-
mro de facture utilis est 1). Cliquez sur lindicateur de dvelop-
pement.
Une fentre sans barre de titre apparat.
Il sagit dune sous-feuille de donnes permettant de saisir les livres
et leurs quantits qui doivent gurer sur la facture. Cette sous-feuille
de donnes, qui sappuie sur la relation entre les deux tables, affiche
les lignes dans la table Facturelignes qui correspondent la facture
dans la table Factures. Le numro de la facture nest pas indiqu dans
la sous-feuille de donnes puisquil est indiqu dans le champ nofac-
ture de la feuille de donnes principale (affichant la table Factures).
Une sous-feuille de donnes ?
Cest une feuille de donnes qui simbrique dans une autre feuille de
donnes et contient des donnes lies la premire. Vous pouvez y diter des
donnes connexes (cest--dire lies par une relation). Par exemple, la table
Factures possde une relation un plusieurs avec la table de jonction Factu-
relignes. Cela signie que pour chaque ligne de la table Factures affiche en
mode Feuille de donnes, vous pouvez afficher et modier les lignes conne-
xes de la table Facturelignes dans une sous-feuille de donnes.
14 Saisissez la valeur dune cl primaire dun livre dans la colonne
nolivre de la premire ligne vide de la sous-feuille de donnes,
Figure 4.66 : La saisie dun en-tte de facture
dans la table Factures
279 4.6. Cas pratique
puis un entier dans la colonne quantite de cette mme ligne.
Ajoutez de mme dautres lignes la facture.
15 La saisie termine, faites disparatre la sous-feuille de donnes en
cliquant sur lindicateur de dveloppement -, gauche du numro
de facture dans la feuille de donnes de la table Factures.
Dans la table Factures en mode Feuille de donnes, vous allez vrier
les donnes dans la table Facturelignes.
16 Fermez la table Factures, puis ouvrez en mode Feuille de donnes
la table Facturelignes et vriez que les lignes de la facture ont t
saisies.
Dans la table Factures en mode Feuille de donnes, vous allez sup-
primer la facture et constater que les lignes de la facture seront
galement effaces dans la table Facturelignes.
17 Fermez la table Facturelignes, puis ouvrez en mode Feuille de
donnes la table Factures.
18 Cliquez dans la ligne de la facture et sur le bouton Supprimer du
groupe Enregistrements de longlet Feuille de donnes. Lorsque
Access demande la conrmation de la suppression de la ligne
dans la table Factures et dans la table lie Facturelignes, cliquez sur
le bouton Oui.
Lintgrit rfrentielle ninterdit pas de supprimer la facture puisque
vous avez appliqu la suppression en cascade entre les tables Factu-
res et Facturelignes.
Figure 4.67 : La saisie de lignes de facture
dans la sous-feuille de donnes
Figure 4.68 : Les lignes de la premire facture
280 4. Contrler la cohrence des donnes
19 Fermez la table Factures et ouvrez la table Facturelignes.
Celle-ci ne contient plus les lignes correspondant la facture suppri-
me.
Dveloppez de mme la relation plusieurs plusieurs entre les tables
Auteurs et Livres (nommez la table de jonction Jonction-Auteurs-
Livres).
Dnir des relations un un
Vous allez maintenant construire une relation de type un un entre la
table des livres et une nouvelle table, que vous nommerez Commu-
nication. Cette dernire sera utilise pour indiquer si une campagne
de communication est effectue lors du lancement du livre. Elle
contiendra les champs ncessaires au stockage des informations
suivantes :
j le numro du livre ;
j un court slogan publicitaire ;
j une information boolenne (pouvant prendre les valeurs Oui ou
Non) pour indiquer si une campagne publicitaire est lance sur les
radios ;
j une information boolenne pour indiquer si une campagne publi-
citaire est lance sur les chanes tlvises ;
Figure 4.69 : Lapplication de la suppression en cascade entre les tables Factures et Facturelignes
Figure 4.70 : La relation plusieurs plusieurs entre les tables Auteurs et Livres
281 4.6. Cas pratique
j une information boolenne pour indiquer si une campagne publi-
citaire est lance dans la presse ;
j le budget allou la campagne de communication.
Procdez ainsi :
1 Construisez la table Communication avec la structure indique
dans lillustration qui suit :
Les cls primaires de la table Communication seront enregistres
dans le champ nolivre, de type Numrique. Elles seront constitues
des valeurs des cls primaires de la table Livres qui y seront repor-
tes, lorsque le livre bnciera dune campagne de communication.
La relation un un est ici justie par le fait que les informations sont
propres aux livres, mais que tous les livres ne bncient pas de
campagne de communication.
Vous allez crer la relation entre les tables Livres et Communication.
2 Fermez la table Communication si celle-ci est ouverte. Affichez
longlet Relations et ajoutez la table Communication dans longlet.
Tracez la relation entre les cls primaires nolivre des deux tables en
glissant la cl primaire nolivre de la table Livres vers la cl primaire
de la table Communication.
3 Appliquez lintgrit rfrentielle, la mise jour et la suppression
en cascade (voir Figure 4.72).
Vous obtenez la relation un un entre les deux tables dans longlet
Relations. Remarquez la symbolique utilise par Access : le carac-
tre 1 gure des deux cts de la relation.
4 Fermez et enregistrez longlet Relations.
Vous allez saisir les informations relatives la communication effec-
tue pour le lancement dun livre, titre dexemple.
Figure 4.71 : La structure de la table
Communication
282 4. Contrler la cohrence des donnes
5 Ouvrez la table Livres en mode Feuille de donnes pour y saisir les
donnes relatives la communication effectue pour certains li-
vres. Depuis sur longlet Accueil cliquez sur le bouton Plus du
groupe Enregistrements puis Sous-feuille de donnes et nouveau
sur Sous-feuille de donnes.
La bote de dialogue Insertion sous-feuille de donnes apparat.
6 Choisissez, sous longlet Tables, la table Communication. Cliquez
sur le bouton OK.
Figure 4.72 : La dnition de lintgrit rfrentielle, de la mise jour et de la suppression en cascade
entre les tables Livres et Communication
Figure 4.73 : Laccs au choix de la table de la Sous-feuille de donnes
283 4.6. Cas pratique
7 Dans la feuille de donnes de la table Livres, cliquez sur lindica-
teur de dveloppement +, gauche du numro du livre pour
lequel des informations relatives la communication doivent tre
saisies (sur lillustration, le numro du livre est 1).
Une sous-feuille de donnes apparat.
8 Saisissez une ligne dans la sous-feuille de donnes. Rptez ven-
tuellement lopration pour dautres livres.
Si vous tentez de saisir deux lignes dans la sous-feuille de donnes,
Access vous interdit de continuer (un seul enregistrement de la table
Figure 4.74 : Le choix de la table devant
tre ouverte dans la Sous-feuille de
donnes
Figure 4.75 : Ici, deux livres bncient dune campagne de communication
284 4. Contrler la cohrence des donnes
Communication peut tre li un enregistrement de la table Livres,
par la nature de la relation un un).
9 Cliquez dans ce cas sur le bouton OK de la bote de dialogue qui
apparat. Utilisez la touche [chap] pour annuler la saisie de la
deuxime ligne.
10 Fermez et enregistrez la table Livres. Affichez la table Communica-
tion en mode Feuille de donnes pour y vrier la saisie.
Il est possible de visualiser le livre pour chaque communication en
cliquant sur lindicateur de dveloppement + des lignes de la feuille
de donnes de la table Communication.
Lorsquune seule relation est dfinie
Inutile de dnir la table de la sous-feuille de donnes lorsque la table est
en relation avec une seule autre table (Access propose dans ce cas automa-
tiquement dans la Sous-feuille de donnes lunique table mise en relation).
11 Fermez la table Communication.
Quelques oprations annexes
Avant de clore ce chapitre, vous allez encore effectuer quelques
oprations complmentaires ; elles vous seront utiles dans les cha-
Figure 4.76 : Au plus, un seul enregistrement de la table Communication peut tre associ un
enregistrement de la table Livres
Figure 4.77 : La table Communication, visualise en mode Feuille de donnes
285 4.6. Cas pratique
pitres suivants pour vous permettre de dvelopper une application
nalise. Ces manipulations nintroduisent pas de nouveaux
concepts ; il sagit uniquement de crer quelques relations un
plusieurs faisant appel de nouvelles tables an de pouvoir grer les
assujettissements la TVA, les rglements et les modes de rgle-
ments. Procdez ainsi :
1 Crez trois tables possdant les structures suivantes :
la table Taxes, qui contiendra les taux de TVA en vigueur ;
la table Reglements, qui contiendra les informations concernant
les rglements ;
Figure 4.78 : La structure de la table Taxes
Figure 4.79 : La structure de la table Reglements
286 4. Contrler la cohrence des donnes
la table Modesreglement, qui contiendra les diffrents modes de
rglement (chque, espces, virement ou avoir).
Il vous faut crer les relations un plusieurs entre les nouvelles
tables. Pour chaque relation, vous allez appliquer les rgles dint-
grit rfrentielle avec mises jour en cascade et, ventuellement
suppressions en cascade.
Pour pouvoir enregistrer le taux de TVA auquel un livre est soumis,
vous allez mettre en relation les tables Taxes et Livres. Vous devrez
ajouter un champ la table des livres. Le rle de ce champ sera de
stocker les valeurs des cls primaires de la table des taxes.
2 Modiez la structure de la table Livres en lui ajoutant le champ
notva, de type Numrique.
3 Dans longlet des relations, tracez la relation entre les tables Taxes
et Livres (la relation utilisera les champs notva). Appliquez lint-
grit rfrentielle avec mise jour en cascade sur la relation.
Figure 4.80 : La structure de
la table Modesreglement
Figure 4.81 : Lapplication
de lintgrit rfrentielle
avec mise jour en cascade
entre les tables Taxes et
Livres
287 4.6. Cas pratique
La table des rglements sera utilise pour enregistrer les rglements
(ou les avoirs) intervenant pour une facture. Il sera ainsi possible
denregistrer un nombre non dni de rglements dune facture (en
cas de paiements fractionns).
4 Dans longlet des relations, crez la relation entre les tables Factu-
res et Rglements en utilisant le champ nofacture de la table Factu-
res et celui du mme nom, dni la cration de la table Regle-
ments. Appliquez lintgrit rfrentielle avec mise jour et
suppression en cascade.
Enn, la table des modes de rglement va permettre dindiquer le
moyen de rglement utilis. Lutilisation dune telle table, mme si le
nombre denregistrements quelle renferme est restreint, est plus
judicieuse quune liste de valeurs car elle autorise lajout dun nou-
veau mode de rglement, initialement non prvu, comme le paie-
ment par carte bancaire.
An de faciliter la saisie dans la table des rglements, vous utiliserez
une liste de choix pour oprer la slection du mode de rglement.
5 Modiez la structure de la table Reglements en crant une liste de
choix sur le champ nomodereglement dont la source est la table
Modesreglement.
Figure 4.82 : Lapplication de lintgrit rfrentielle avec mise jour en cascade et suppression en
cascade entre les tables Factures et Reglements
288 4. Contrler la cohrence des donnes
6 Dans longlet des relations, modiez la relation un plusieurs
entre les tables Modesreglement et Reglements (qui a t cre lors
de la dnition de la liste de choix) an dappliquer lintgrit
rfrentielle avec mise jour en cascade.
Lillustration qui suit montre les relations dnies dans la base de
donnes :
Figure 4.83 : Le champ nomodereglement utilise une liste de choix dont la source de donnes est la
table Modesreglement
Figure 4.84 : Lapplication de lintgrit rfrentielle avec mise jour en cascade entre les tables
Modesreglement et Reglements
289 4.6. Cas pratique
Tlchargement de la base de donnes
Vous trouverez la base de donnes utilise dans ce chapitre, Facturation
livres4 nale.accdb, sur le site de Micro Application (www.microapp.com) dans le
dossier Chapitre04.
Figure 4.85 : Les relations de la base de donnes Facturation livres4 nale.accdb
290 4. Contrler la cohrence des donnes
C
H
A
P
I
T
R
E
5
EXTRAIRE
DESDONNES
Comprendre le rle des requtes ...................................................................... 293
Les requtes de slection ...................................................................................... 294
Utiliser lAssistant Requte ................................................................................... 333
Crer des requtes action ...................................................................................... 342
Ajouter des paramtres dans les requtes .................................................... 350
Cas pratique ................................................................................................................. 352
291
Dans ce chapitre, vous allez dcouvrir les requtes. Ces objets vous
permettront dafficher, de modier et danalyser des donnes et
seront utiliss comme sources de donnes dans les formulaires et
dans les tats.
5.1. Comprendre le rle des requtes
Stocker des donnes dans des tables est une chose. Interroger les
tables en est une autre. Avant lapparition du langage SQL, linterro-
gation des tables se faisait par le biais de programmes. Le travail
demandait beaucoup plus de temps et les bogues taient possibles,
surtout lorsque les donnes extraites taient stockes dans de volu-
mineuses et complexes bases de donnes qui ntaient pas, cette
poque, protges par des fonctionnalits dintgrit rfrentielle.
Lapparition du langage SQL, dans les annes 1990, a vritablement
donn une autre dimension aux bases de donnes. SQL (Structured
Query Language) nest pas proprement parler un langage de pro-
grammation comme Visual Basic ou C++ ; cest un langage spcialis
dans linterrogation des bases de donnes. Access nest donc pas la
seule base pouvoir utiliser ce langage dinterrogation. Toutes les
bases de donnes modernes lemploient aujourdhui.
Comme vous le dcouvrirez dans ce chapitre, fondamentalement,
une phrase, nomme requte, en SQL ressemble ceci : <sujet>
<verbe> <complment>. Avec un peu de pratique, le langage sacquiert
vite. Il est donc conseill de passer quelques heures ltudier an
de mieux comprendre sa structure. Heureusement, cette tape nest
plus obligatoire car Access 2011 met la disposition des plus pres-
ss un puissant outil, le Gnrateur de requtes, qui effectue le
travail dcriture de la requte automatiquement, aprs quelle a t
"compose" en insrant les diffrents lments de la phrase dans
une grille dont la forme rappelle celle dune feuille de donnes.
Les extractions de donnes effectues par les requtes ont une
courte dures de vie ; elles nexistent que pendant leur excution.
Elles disparaissent la fermeture de la requte. Ce mode de fonc-
tionnement fait de la requte un outil puissant, peu coteux en
espace disque et capable de ltrer et trier des donnes sur plusieurs
tables ou deffectuer des calculs.
Lexemple de donnes de ce chapitre concerne des horaires de
trains. Vous allez voir comment en extraire diffrentes informations.
293 5.1. Comprendre le rle des requtes
Tlchargement de la base de donnes
Vous retrouverez la base de donnes BaseTrains.accdb, utilise dans ce
chapitre, sur le site de Micro Application (www.microapp.com) dans le dossier
Chapitre05.
5.2. Les requtes de slection
Lexpression "requtes slection" dsigne des requtes qui extraient
des donnes de tables sans y apporter de modication.
Vous voulez par exemple consulter les horaires des trains en par-
tance de Paris vers diffrentes villes de province. Vous allez consti-
tuer une petite base de donnes dont le nombre denregistrements
sera limit an de pouvoir y pratiquer les manipulations qui suivent.
Noubliez pas que vous pouvez galement tlcharger la base depuis
Internet.
La base de donnes BaseTrains.accdb est compose de trois tables :
Villes-arrivee, Horaires et Trains. Les relations sont les suivantes :
j Une relation un plusieurs entre les tables Villes-arrivee et Horai-
res. Une ville de destination est accessible diffrents horaires
alors quun dpart donn, une heure donne, ne correspond
qu une seule ville de destination.
j Une relation un plusieurs entre les tables Trains et Horaires. Un
mme train peut partir plusieurs horaires alors quun horaire
donn nest affect qu un train.
Lillustration suivante vous prsente le schma des relations de la
base de donnes quil vous est possible dafficher au moyen de
longlet Outils de base de donnes puis en utilisant le bouton Rela-
tions.
Figure 5.1 : Les trois tables et leurs relations
294 5. Extraire des donnes
Quelques rudiments de SQL
Lobjectif de ces premires manipulations est de dcouvrir les points
les plus importants de la syntaxe SQL. Vous nen utiliserez que mieux
le Gnrateur de requtes.
La structure dune requte
Lorsque vous composez une phrase dans le langage usuel, vous
respectez des rgles de composition telles que <sujet> <verbe>
<complment>.
La syntaxe de SQL nest gure loigne du langage courant. Ainsi,
pour traduire la phrase "Je veux connatre toutes les villes.", vous
direz en SQL : SELECT * FROM Villes.
Vous voyez ici les deux instructions (ou clauses) minimales pour
crire une requte : SELECT et FROM. Les autres clauses sont optionnel-
les. Elles gurent entre crochets sur la liste qui suit.
Tableau 5.1 : Principales clauses SQL
Clause Description
SELECT Liste des champs qui saffichent dans le rsultat de la requte
FROM Listes des tables
[WHERE] Critres de recherche
[GROUP BY] Dnition du regroupement
[ORDER BY] Dnition dun tri
Les clauses optionnelles vous permettent dexprimer des phrases
plus complexes, comme : "Je veux les horaires des trains en par-
tance pour Nancy et Paris entre 18 heures et 22 heures."
Le premier exemple de requte trait ici aura pour objectif dafficher
toutes les villes de la table Villes-arrivee. Procdez ainsi :
1 Ouvrez la base de donnes BaseTrains.accdb en cliquant
sur longlet Crer puis sur le bouton Cration de requte du
groupe Macros et code.
La bote de dialogue Afficher la table apparat.
2 Fermez cette bote de dialogue (elle ne vous sera pas utile dans
limmdiat) en cliquant sur son bouton Fermer.
295 5.2. Les requtes de slection
Longlet Requte1 est affich.
3 Cliquez sur le bouton SQL du groupe Rsultats de longlet
Outils de requte/Crer.
Cet onglet vous servira saisir le code SQL des requtes.
4 la suite de linstruction SELECT, saisissez le caractre * puis ajou-
tez la clause FROM et le nom de la table Villesarrivee.
Lastrisque est un caractre de substitution qui permet dindiquer
dans la requte que toutes les colonnes de la table sont slection-
nes.
Figure 5.2 : La bote de dialogue Afficher la table
Figure 5.3 : Longlet de la saisie du code SQL de la requte
296 5. Extraire des donnes
La requte, une fois saisie, est donc :
SELECT * FROM [Villes-arrivee];
Il est ncessaire dencadrer de crochets les noms des tables ou des
champs qui contiennent des espaces et des caractres spciaux (tels
que des tirets), sous peine de constater des erreurs dinterprtation
lors de lexcution de la requte par Access.
Modifier la police de caractres utilise dans les requtes SQL
La taille et la police des caractres utilises pour crire les requtes, dans
les modes SQL et Cration dune requte, sont modiables, permettant ainsi
damliorer la lisibilit.
Cliquez pour ce faire sur longlet Fichier puis sur le bouton Options. Dans la
bote de dialogue Options Access qui est affiche, cliquez sur Concepteurs
dobjets. la rubrique Cration de requte, dnissez la police et sa taille
dans la zone Police de cration de requtes.
La modication de la mise en forme sera visible uniquement sur les requtes
saisies en mode SQL qui seront ouvertes aprs cette modication de la police
(et non dans les onglets de requtes dj ouverts).
5 Pour visualiser le rsultat de la requte, cliquez sur longlet Outils
de requte/Crer. Dans le groupe Rsultats, cliquez sur le bouton
Excuter ou sur le bouton Affichage.
Le rsultat de la requte est affich en mode Feuille de donnes.
Figure 5.4 : La modication
de la police utilise dans les
requtes et de la taille des
caractres
Figure 5.5 : La requte de
slection de toutes les villes
de la table Villes-arrivee va
tre excute
297 5.2. Les requtes de slection
6 Enregistrez la requte (en cliquant sur le bouton Enregistrer de la
barre doutils Accs rapide) sous le nom Liste des villes SQL via
longlet Fichier/Enregistrer.
Donnes enregistres lors de lenregistrement dune requte
Aucune donne nest enregistre lors de lenregistrement dune requte.
Aussi surprenant que cela puisse paratre, seul le code SQL est enregistr. Les
rsultats des requtes nexistent que pendant leur excution et disparaissent
leur fermeture. Le rsultat de la requte pouvant varier dun jour lautre,
en fonction de lvolution des donnes contenues dans les tables, ce principe
les rend trs puissantes et fort peu coteuses en espace disque.
Avant lapparition du langage SQL, les bases de donnes taient interroges
par des copies partielles des tables dans dautres tables, temporaires ou non.
Les traitements taient beaucoup plus longs et consommaient de lespace sur
les disques durs.
Vous venez dcrire et dexcuter votre premire requte. Toutefois,
vous avez peut-tre constat que votre interrogation de la base
manquait de pertinence : crire une requte pour afficher tous les
champs dune table, cest se donner beaucoup de mal pour compli-
quer ce que lon aurait pu faire simplement en consultant la table en
mode Feuille de donnes.
Le deuxime objectif est maintenant dafficher les noms de la ville et
de son dpartement, stocks dans la table Villes-arrivee, sans faire
apparatre les informations des autres colonnes.
Figure 5.6 : Le rsultat de la requte, dans la
feuille de donnes
298 5. Extraire des donnes
7 Revenez en mode SQL en cliquant sur la che du bouton
Affichage de longlet Accueil puis en choisissant Mode SQL dans la
liste dactions qui vous est propose.
Accs rapide au mode SQL
Vous pouvez galement cliquer sur le bouton Mode SQL prsent en bas et
droite de la fentre dAccess, dans la Barre dtat.
8 Remplacez lastrisque par ville, departement pour obtenir le code
suivant :
SELECT ville, departement FROM [Villes-arrivee];
Linstruction SELECT est suivie du nom des champs de la table qui
correspondent aux colonnes devant tre affiches dans le rsultat de
la requte.
Le rsultat obtenu, lorsquon clique sur le bouton Excuter, est pr-
sent dans lillustration qui suit :
Figure 5.7 : Le retour au mode SQL
Figure 5.8 : Le bouton Mode SQL
Figure 5.9 : Le code SQL de la
requte
299 5.2. Les requtes de slection
La prsentation des donnes extraites par la requte peut tre am-
liore en renommant les en-ttes des colonnes affiches en mode
Feuille de donnes. Dans cet exemple, len-tte de la colonne ville
sera ainsi chang en Nom de la ville et len-tte de la colonne
departement en N de dpartement.
La mention AS, suivie du nouveau nom de len-tte de colonne,
permet de changer le nom de len-tte de colonne dans le rsultat de
la requte.
9 Dans longlet renfermant la feuille de donnes, affichez la requte
en mode SQL en cliquant du bouton droit sur le nom de longlet
puis en choisissant Mode SQL dans le menu contextuel qui appa-
rat (cette mthode daffichage du code SQL est une variante de
celle prcdemment utilise).
10 Modiez la syntaxe de la requte : saisissez AS [Nom de la ville]
aprs le champ ville et AS [N de dpartement] aprs le champ
departement.
Figure 5.10 : Le rsultat de la requte
Figure 5.11 : Une autre mthode daffichage du
code SQL
300 5. Extraire des donnes
Noubliez pas les crochets qui encadrent les noms des colonnes.
La syntaxe SQL de la requte est donc :
SELECT ville AS [Nom de la ville],
departement AS [N de dpartement]
FROM [Villes-arrivee];
11 Visualisez le rsultat en mode Feuille de donnes.
12 Enregistrez la requte sous le nom Villes et dpartements SQL en
utilisant longlet Fichier puis en choisissant Enregistrer sous.
La syntaxe dune requte de slection effectuant un tri
Vous allez dcouvrir maintenant comment classer le rsultat dune
requte.
Pour classer les lignes dans le rsultat dune requte, la clause ORDER
BY est suivie du nom de la colonne trier. Procdez ainsi :
1 Affichez la requte prcdente en mode SQL et ajoutez ORDER BY
ville la n de la syntaxe de la requte.
Le code SQL de la requte devient :
SELECT ville AS [Nom de la ville],
departement AS [N de dpartement]
FROM [Villes-arrivee]
ORDER BY ville;
2 Fermez et enregistrez la requte sous le nom Villes tries SQL.
Figure 5.12 : Le code SQL de la requte
Figure 5.13 : Le rsultat de la requte en
mode Feuille de donnes
Figure 5.14 : Le code SQL de la requte
301 5.2. Les requtes de slection
La syntaxe dune requte de slection sur plusieurs
tables
Voyez maintenant comment extraire des donnes de plusieurs ta-
bles. Pour chaque ville est tabli un horaire de train. Vous souhaitez
extraire le nom de la ville, le jour du dpart, lheure de dpart et
lheure darrive. Ces donnes sont stockes dans plusieurs tables.
Procdez ainsi :
1 Affichez comme prcdemment la fentre de saisie du code SQL
dune nouvelle requte.
Vous allez interroger les deux tables Villes-arrivee et Horaires.
2 Saisissez le code SQL suivant :
SELECT [Villes-arrivee].ville, Horaires.jour,
Horaires.[heure dpart], Horaires.[heure fin]
FROM [Villes-arrivee], Horaires
WHERE [Villes-arrivee].noville = Horaires.noville ;
Dans la clause SELECT, pour diffrencier sans quivoque lorigine dun
champ (deux tables distinctes pouvant contenir des champs de
mme nom), vous avez fait prcder chaque champ du nom de la
table qui le contient. Cette association est nomme "alias".
La clause WHERE vrie lgalit de valeurs entre les champs com-
muns aux deux tables. Remarquez la syntaxe utilise pour dsigner
les champs : dans la clause WHERE, lobjet champ noville, par exem-
ple, est prcd de son conteneur, lobjet table Villesarrivee. Les
deux objets sont spars par un point.
La clause FROM permet ici dnumrer les tables utilises dans la
requte : Villes-arrivee et Horaires.
Produit cartsien
La source de la requte est, dans ce cas, appele "produit cartsien des
tables dnies dans la clause FROM". Access recherche toutes les lignes de la
table Villes-arrivee associes la table Horaires qui rpondent la clause
WHERE.
3 Visualisez le rsultat en mode Feuille de donnes.
Figure 5.15 : Le code SQL de la requte
302 5. Extraire des donnes
4 Pour trier sur la date, ajoutez ORDER BY Horaires.jour la n de la
syntaxe de la requte en mode SQL.
5 Visualisez le rsultat en mode Feuille de donnes.
6 Fermez et enregistrez la requte sous le nom Villes Horaires SQL.
La syntaxe dune requte de slection avec critres
Imaginons dsormais que vous souhaitiez faire connatre les gares
de la rgion parisienne. Vous devez alors insrer un critre, dit de
slection, sur le dpartement de la requte Villes et dpartements -
SQL. Pour cela :
1 Dans la liste des objets du Volet de navigation, cliquez du bouton
droit sur la requte Villes et dpartements SQL. Choisissez Mode
Cration dans le menu contextuel qui apparat.
2 Cliquez sur le bouton Affichage puis sur Mode SQL si le code SQL
nest pas affich. Ajoutez la clause WHERE la n de la requte suivie
de la condition departement=75.
Le code SQL de la requte devient :
SELECT ville AS [Nom de la ville],
departement AS [N de dpartement]
Figure 5.16 : Le code SQL de la requte
Figure 5.17 : Le rsultat de la
requte
303 5.2. Les requtes de slection
FROM [Villes-arrivee]
WHERE departement=75;
Le critre est mentionn dans la clause WHERE. En permettant dtablir
une comparaison, la clause WHERE va slectionner les lignes qui r-
pondent la condition, et uniquement ces lignes.
Une comparaison est dnie de la faon suivante :
<expression> <oprateur relationnel> <expression>
<expression> est un champ de la table dnie dans la clause FROM,
une constante ou une expression numrique.
<oprateur relationnel> dsigne les oprateurs =, >, <, <=, >=, <, >.
3 Enregistrez la requte sous le nom Villes 75 SQL puis fermez la
requte.
Vous allez maintenant raliser une requte de slection sur plusieurs
tables avec le mme critre que prcdemment, en utilisant la re-
qute Villes Horaires SQL et en ajoutant au code SQL un nouveau
type dlments de syntaxe : loprateur logique ET (AND) dans la
clause WHERE.
4 Affichez le code SQL de la requte Villes Horaires SQL. Ajoutez AND
[Villesarrivee].departement=75 la n de la clause WHERE.
Le code SQL de la requte devient :
SELECT [Villes-arrivee].ville, Horaires.jour,
Horaires.[heure dpart], Horaires.[heure fin]
FROM [Villes-arrivee], Horaires
WHERE [Villes-arrivee].noville=Horaires.noville
AND [Villes-arrivee].departement=75
ORDER BY Horaires.jour;
Figure 5.18 : Le code SQL de la requte
Figure 5.19 : Le code SQL de la requte
304 5. Extraire des donnes
Loprateur logique OU entre dans la mme famille que le prcdent.
Il va vous permettre de connatre les horaires de Paris ainsi que ceux
du 15 janvier 2011. Utilisez cette requte pour ajouter un autre cri-
tre, sur la date cette fois :
5 Affichez le code SQL de la requte en mode SQL. Modiez la
requte en saisissant ([Villesarrivee].departement=75 OR Horai-
res.jour=#15/01/2011#) aprs loprateur AND de la clause WHERE
(sans oublier les parenthses).
La date, en mode SQL, doit tre encadre par des dises.
Le code SQL de la requte est donc le suivant :
SELECT [Villes-arrivee].ville, Horaires.jour,
Horaires.[heure dpart], Horaires.[heure fin]
FROM [Villes-arrivee], Horaires
WHERE [Villes-arrivee].noville=Horaires.noville
AND ([Villes-arrivee].departement=75
OR Horaires.jour=#15/01/2011#)
ORDER BY Horaires.jour;
Vous allez maintenant limiter lextraction une tranche horaire sur
les heures de dpart allant de 6 heures 10 heures, indpendam-
ment du dpartement.
Figure 5.20 : Le rsultat de la
requte
Figure 5.21 : Le code SQL de la requte
Figure 5.22 : Le rsultat de la
requte
305 5.2. Les requtes de slection
Le prdicat "entre" est traduit par Between qui est linstruction permet-
tant dtablir une comparaison entre deux bornes.
6 Affichez le code SQL de la requte en mode SQL, puis modiez la
requte en saisissant (Horaires.[heure dpart] Between #06:00:00#
And #10:00:00#) aprs loprateur AND de la clause WHERE (sans
oublier les parenthses).
Loprateur logique AND permet ici de lier les deux dates.
Le code SQL de la requte devient donc :
SELECT [Villes-arrivee].ville, Horaires.jour,
Horaires.[heure dpart], Horaires.[heure fin]
FROM [Villes-arrivee], Horaires
WHERE [Villes-arrivee].noville=Horaires.noville
AND (Horaires.[heure dpart] Between #06:00:00#
And #10:00:00#)
ORDER BY Horaires.jour;
7 Enregistrez la requte sous le nom Villes 06H 10H SQL. Fermez la
requte.
La syntaxe dune requte de slection
avec regroupement
Vous allez maintenant aborder la notion de regroupement en affi-
chant le nombre de trajets par ville.
Le regroupement sur la ville est traduit par la clause GROUP BY.
Figure 5.23 : Le code SQL de la requte
Figure 5.24 : Le rsultat de la
requte
306 5. Extraire des donnes
Lopration de dnombrement des trajets est traduite par la fonction
COUNT().
1 Affichez comme prcdemment la fentre de saisie du code SQL
dune nouvelle requte, puis saisissez le code suivant :
SELECT [Villes-arrivee].ville,
Count(Horaires.noville) AS Nb_trajets
FROM [Villes-arrivee], Horaires
WHERE [Villes-arrivee].noville=Horaires.noville
GROUP BY [Villes-arrivee].ville;
Deux nouvelles oprations sont ralises ici.
La premire, traite par la clause GROUP BY, regroupe les noms de
villes identiques, dans ce que nous appellerons "un groupe". la
diffrence dExcel, SQL na pas besoin de disposer denregistre-
ments pralablement tris pour grouper les informations : les grou-
pes sont bien constitus mais ils ne sont pas tris. Un regroupement
sur des noms de famille, par exemple, pourrait parfaitement faire
apparatre le groupe des Masson avant celui des Durand, si le nom
Masson tait rencontr en premier dans la table par la requte, lors
du regroupement. Dans cet exemple, le groupe est constitu sur le
champ ville de la table Villes-arrivee. La clause GROUP BY est galement
utile lors de la ralisation de totaux.
La deuxime opration consiste, pour chaque groupe, utiliser la
fonction COUNT(), qui comptera, dans cet exemple, pour chaque ville,
le nombre de trajets.
2 Enregistrez la requte sous le nom Villes Nb trajets SQL.
Figure 5.25 : Le code SQL
de la requte
Figure 5.26 : Le rsultat de la requte
307 5.2. Les requtes de slection
Les exemples abords lors de cette section vous convaincront sans
doute de lintrt du langage SQL. Ce chapitre constitue un bon point
de dpart pour votre apprentissage. Les rudiments de syntaxe SQL
exposs ici sont suffisants pour comprendre les mcanismes de
fonctionnement des requtes.
Vous allez maintenant dcouvrir que la plupart des requtes peuvent
tre cres beaucoup plus facilement en mode Cration, mode que
vous utiliserez dans les sections suivantes.
Travailler en mode Cration
Le mode Cration est le mode le plus couramment utilis. Il permet
de dvelopper ou de modier efficacement les types de requtes les
plus frquents, sans connaissance spcique du langage SQL.
Crer une requte
1 Cliquez sur longlet Crer puis sur le bouton Cration de requte du
groupe Macros et code.
La bote de dialogue Afficher la table apparat.
2 Sous longlet Table, choisissez une table utiliser dans la requte.
Cliquez sur le bouton Ajouter puis sur Fermer.
Longlet Requte1 saffiche.
Figure 5.27 : Le choix de la
table qui sera utilise dans
la requte
308 5. Extraire des donnes
En mode Cration, la requte apparat sous la forme dun onglet
compos de deux parties :
La partie suprieure affiche la liste des tables ou des requtes
intervenant dans la requte ; ici la table Villes-arrivee.
La partie infrieure est la grille de cration ; elle fait apparatre les
lignes Champ, Table, Tri, Afficher, Critres et Ou.
Voici la description des fonctions de ces diffrentes lignes.
Champ : colonne du champ qui apparat dans le rsultat de la
requte. Pour choisir le champ, il suffit de cliquer dans la cellule et
de le slectionner dans la liste des champs. Une fois le champ
choisi, vous pouvez lui appliquer diffrents paramtres.
Table : il sagit de la table qui contient le champ choisi dans la ligne
Champ. La ligne Table peut tre masque ou affiche par longlet
Affichage/Noms des tables.
Tri : dnition du tri appliqu sur la colonne du champ choisi dans
la ligne Champ.
Afficher : permet dafficher (case coche) ou de masquer (case
dcoche) la colonne du champ qui apparat dans le rsultat de la
requte.
Critres : dnit des restrictions sur les valeurs du champ choisi
dans la ligne Champ.
Ou : dnit dautres restrictions sur les valeurs du champ choisi
dans la ligne Champ.
La premire tape dutilisation du mode Cration de requtes
consiste ajouter les colonnes que vous souhaitez voir apparatre
dans le rsultat de la requte.
Figure 5.28 : Longlet du mode Cration
309 5.2. Les requtes de slection
3 Dans la ligne Champ de la grille de cration, choisissez les champs
au moyen des listes droulantes de chaque colonne.
Vous pouvez galement les glisser depuis les tables vers les lignes
Champ.
Afficher le rsultat dune requte
Depuis le mode Cration, utilisez lune des mthodes suivantes pour
visualiser le rsultat de la requte dans une feuille de donnes :
j Cliquez sur longlet Outils de
requte/Crer puis, dans le
groupe Rsultats, sur le bouton
Excuter ou encore sur le bouton
Affichage.
j Cliquez du bouton droit sur la partie suprieure de longlet de la
requte, puis choisissez Mode Feuille de donnes dans le menu
contextuel qui apparat.
Figure 5.29 : Lajout des
champs utiliss dans la
requte
Figure 5.30 : Le groupe
Rsultat
Figure 5.31 : Laffichage du
rsultat de la requte
depuis le menu contextuel
310 5. Extraire des donnes
j Vous pouvez galement cliquer sur le bouton Mode Feuille de
donnes prsent en bas et droite de la fentre dAccess, dans la
Barre dtat.
Afficher le rsultat dune requte sans avoir recours au mode Cration
Si la requte nest pas ouverte en mode Cration, son rsultat peut tre
visualis directement en mode Feuille de donnes. Dans le volet de naviga-
tion, vriez que la catgorie Requtes est dveloppe sur la liste des objets,
double-cliquez sur la requte ou cliquez du bouton droit sur celle-ci et choi-
sissez Ouvrir dans le menu contextuel qui apparat.
Ouvrir une requte en mode Cration
Depuis le mode Feuille de donnes, utilisez lune des mthodes
suivantes pour modier la requte en mode Cration :
j Cliquez sur le bouton Affichage de longlet Accueil.
j Cliquez du bouton droit sur le nom de longlet de la requte.
Choisissez Mode Cration dans le menu contextuel qui apparat.
j Vous pouvez galement cliquer sur le bouton Mode Cration pr-
sent en bas et droite de la fentre dAccess, dans la Barre dtat.
Figure 5.32 : Le bouton Mode Feuille de donnes
Figure 5.33 : Diffrentes
faons pour accder au
mode Cration depuis le
mode Feuille de donnes
311 5.2. Les requtes de slection
Ouvrir une requte en mode Cration sans utiliser le mode Feuille
de donnes
Si la requte nest pas ouverte en mode Feuille de donnes, elle peut tre
affiche en mode Cration depuis le volet de navigation. Vriez que la
catgorie Requtes est dveloppe dans la liste des objets, cliquez du bouton
droit sur la requte puis choisissez Mode Cration.
Modier la requte en mode Cration
Pour ajouter des colonnes que vous souhaitez voir apparatre dans le
rsultat de la requte, utilisez lune des mthodes suivantes :
j Choisissez dans la ligne Champ de la grille de cration un champ
au moyen de la liste droulante des colonnes vides.
j Double-cliquez sur un champ de la table pour quil apparaisse
dans la premire colonne vide.
j Slectionnez un ou plusieurs champs depuis la table en utilisant la
touche [Maj] pour slectionner des champs mitoyens ou la touche
[Ctrl] pour slectionner des champs non contigus. Glissez la slec-
tion vers la ligne Champs.
j Double-cliquez sur lastrisque, dans la liste des champs de la
table, ou choisissez le nom de la table suivi dun astrisque lors-
que vous droulez une liste dans la ligne Champ si vous dsirez
afficher tous les champs de la table dans le rsultat de la requte.
Lastrisque
Si vous choisissez cet lment de la liste, Access insre tous les champs de la
table dans le rsultat de la requte, vous vitant ainsi de les glisser un un.
Pour slectionner une ou plusieurs colonnes, utilisez lune des m-
thodes suivantes :
j Placez le pointeur sur len-tte dune colonne, puis cliquez lorsque
le curseur prend lapparence dune che verticale dirige vers le
bas. La colonne apparat en vido inverse ;
Figure 5.34 : La colonne va tre slectionne
312 5. Extraire des donnes
j Pour choisir plusieurs colonnes contigus, slectionnez la pre-
mire colonne en cliquant sur son en-tte, maintenez la touche [Maj]
enfonce puis cliquez sur len-tte de la dernire colonne slec-
tionner.
Pour insrer une colonne, oprez comme suit :
1 Placez le point dinsertion dans la colonne qui sera positionne
aprs la colonne insre.
2 Cliquez sur le bouton Insrer des colonnes du groupe Paramtrage
de requte de longlet Outils de requte/Crer ou utilisez la touche
[Inser]. Dans ce dernier cas, slectionnez la colonne qui sera place
aprs la colonne insre.
Pour supprimer une ou plusieurs colonnes, oprez comme suit :
1 Slectionnez les colonnes supprimer.
2 Cliquez sur le bouton Supprimer colonnes du groupe Paramtrage
de requte de longlet Outils de requte/Crer ou utilisez la touche
[Suppr].
Pour masquer une colonne, oprez comme suit :
3 Dcochez la case de la ligne Afficher de la colonne masquer.
Pour changer lordre des colonnes, oprez comme suit :
1 Slectionnez la colonne dplacer en cliquant sur son en-tte.
2 Cliquez une seconde fois sur son en-tte en maintenant le bouton
de la souris enfonc et glissez len-tte vers la droite ou vers la
gauche.
Figure 5.35 : Le bouton Insrer des colonnes
Figure 5.36 : La colonne ne sera pas affiche
dans le rsultat de la requte
Figure 5.37 : La premire
colonne va tre dplace
entre les deux suivantes
313 5.2. Les requtes de slection
Fermer et enregistrer une requte
Pour enregistrer une requte, utilisez lune des mthodes suivantes :
j Cliquez sur le bouton Enregistrer de la barre doutils Accs rapide.
j Cliquez sur longlet Fichier puis choisissez Enregistrer.
j Utilisez la combinaison de touches [Ctrl]+[S].
Pour fermer une requte, utilisez lune des mthodes suivantes :
j Cliquez sur le bouton Fermer (la croix place en haut et droite de
longlet de cration de requte).
j Utilisez la combinaison de touches [Ctrl]+[F4] ou [Ctrl]+[W].
j Cliquez du bouton droit sur le nom de longlet. Choisissez Fermer
dans le menu contextuel qui apparat.
Afficher uniquement les premires valeurs dans
une requte
Si le nombre de lignes affiches par une requte vous parat trop
important, vous pouvez limiter laffichage aux premires lignes :
1 Affichez la requte en mode Cration.
2 Cliquez sur la liste Premires valeurs (assigne la zone Renvoyer)
du groupe Paramtrage de requte de longlet Outils de requte
/Crer. Choisissez un pourcentage ou une valeur sur la liste pro-
pose. Initialement, la valeur de la liste est Tout.
Une valeur peut galement tre saisie manuellement dans la zone.
Sil sagit dun pourcentage, vous devez ajouter le signe de pourcen-
tage (%) aprs le nombre.
Autre mthode de limitation du rsultat de la requte
Pour limiter le rsultat de la requte un nombre ou un pourcentage
denregistrements, vous pouvez aussi cliquer sur le bouton Feuille des
proprits du groupe Afficher/Masquer de longlet Outils de requte/Crer.
Dans la fentre des proprits qui saffiche, cliquez dans la ligne Premires
Valeurs et choisissez ou saisissez un pourcentage ou une valeur.
Figure 5.38 : Ici, seuls 25 %des lignes seront
affiches dans le rsultat de la requte
314 5. Extraire des donnes
Pour voir toutes les proprits de la requte dans la Feuille des proprits,
cliquez dans la partie suprieure de la requte sans cliquer sur une table.
Pour fermer la feuille des proprits, cliquez nouveau sur le bouton Feuille
des proprits du groupe Afficher/Masquer.
Crer une requte trie
Le rsultat dune requte peut tre tri an dordonnancer les don-
nes affiches.
1 Affichez la requte en mode Cration.
2 Dans la ligne Tri de la colonne trier, choisissez Croissant sur la
liste.
Si un tri est cr sur plusieurs champs, lordre du tri dpend de
lordre des champs dans la grille de cration. Les champs placs
gauche sont prioritaires sur ceux de droite.
Figure 5.39 : La limitation du rsultat de la requte est signie au moyen de la proprit
Premires valeurs
Figure 5.40 : Un tri sur deux colonnes
315 5.2. Les requtes de slection
Supprimer un tri
Pour supprimer un tri dni sur une colonne, choisissez lentre (Non tri)
sur la liste de la ligne Tri.
Crer une requte sur plusieurs tables
Une requte peut tre applique sur plusieurs tables. Dans cet exem-
ple, vous utiliserez les trois tables de la base de donnes BaseTrain-
s.accdb. Un traitement analogue peut tre effectu sur un nombre
plus important de tables.
Vous souhaitez faire apparatre, pour chaque ville de destination, les
horaires et le train utilis. Le rsultat doit tre tri par date.
Noubliez pas le schma des relations de la fentre Relations : il
permet de connatre les tables qui interviennent dans la requte.
Procdez ainsi :
1 Cliquez sur longlet Crer puis sur le bouton Cration de requte du
groupe Macros et code.
La bote de dialogue Afficher la table apparat.
2 Dans la bote de dialogue, choisissez la premire table utiliser
dans la requte, la table Villes-arrivee par exemple, puis cliquez sur
le bouton Ajouter. Choisissez la deuxime table, la table Horaires
dans cet exemple, et cliquez sur le bouton Ajouter. Enn, slection-
nez la troisime table, ici la table Trains, et cliquez sur Ajouter, puis
sur Fermer.
Vous pouvez utiliser la touche [Maj] pour slectionner toutes les ta-
bles, puis cliquer sur les boutons Ajouter, puis Fermer.
Figure 5.41 : Les relations entre les trois tables utilises ici
316 5. Extraire des donnes
Longlet Requte1 saffiche. Sur la liste des tables, les trois tables
ajoutes apparaissent avec les relations cres depuis la fentre
Relations. Dans une requte, vous ne parlerez pas de relations mais
de jointures.
Jointure dans une requte
Ce terme, synonyme de relation, est rserv pour dsigner les liaisons
entre les tables (ou les requtes) dans une requte. Une jointure est toutefois
diffrente dune relation en ceci quelle nest pas permanente : elle existe
uniquement pendant la dure de vie de la requte. On parle de "relation
temporaire".
Ajouter des tables ultrieurement
Lorsque vous crez une nouvelle requte, la bote de dialogue Afficher la
table saffiche automatiquement, an de vous permettre de slectionner les
tables que vous souhaitez utiliser dans la requte. Pour ajouter une table
aprs la fermeture de cette bote de dialogue, utilisez lune des mthodes
suivantes.
Cliquez sur le bouton Afficher la table du groupe Paramtrage de
requte de longlet Outils de requte/Crer.
Figure 5.42 : Trois tables seront utilises dans la requte
317 5.2. Les requtes de slection
Cliquez du bouton droit dans la partie suprieure de longlet de la requte
et choisissez Afficher la table dans le menu contextuel qui apparat.
Vous allez ajouter les colonnes faire apparatre dans le rsultat de la
requte.
3 Dans la ligne Champ de la grille de cration, choisissez les champs
qui doivent gurer dans la requte. Crez ici les colonnes ville,
jour, heure dpart, heure n et train au moyen des listes ou glissez-
les depuis les tables vers les lignes Champs.
4 Dans la ligne Tri de la colonne jour, choisissez Croissant sur la liste.
Laissez les cases de la ligne Afficher coches.
Suppression dune table de la liste
Pour supprimer une table dans la partie suprieure de la fentre, cliquez
dessus puis utilisez la touche [Suppr] ou cliquez du bouton droit sur la table et
choisissez Supprimez une table dans le menu contextuel qui apparat. Les
colonnes correspondantes sont effaces de la grille de cration.
5 Visualisez le rsultat en utilisant le bouton Affichage du groupe
Rsultats de longlet Outils de requte/Crer.
6 Enregistrez la requte sous le nom VillesHorairesTrains Requte.
Figure 5.43 : Les paramtres de la requte multitable
318 5. Extraire des donnes
Crer une requte utilisant des critres
Les critres permettent de limiter les extractions de donnes cer-
taines informations.
Dans lexemple qui suit, seuls les horaires des trains destination de
Metz doivent tre affichs par la requte.
1 Affichez la requte Villes-Horaires-Trains Requte prcdemment
dnie en mode Cration.
2 Saisissez le critre dans la ligne Critres de la colonne du champ
concern. Dans cet exemple, tapez Metz dans la ligne Critres du
champ ville.
Des guillemets sont insrs automatiquement aprs la validation de
la saisie.
Access utilise une syntaxe qui varie en fonction des types de don-
nes que renferme le champ. Ces types sont les suivants :
texte : le critre est entour de guillemets ;
nombre : le critre doit tre saisi sans symbole, ni sparateur de
milliers ;
date : le critre, saisi sous la forme jj/mm/aa, est entour de dises ;
oui/non : le critre doit uniquement contenir les valeurs Oui, Vrai,
Actif, Non, Faux ou Inactif.
3 Visualisez le rsultat en mode Feuille de donnes.
4 Enregistrez la requte sous le nom Critres 01 et fermez la re-
qute.
Loprateur logique ET
Vous rencontrerez souvent loprateur logique ET en informatique. Il
est directement issu de la mise en application de la branche des
mathmatiques dveloppe par le mathmaticien anglais George
Boole (1815-1864). Loprateur ET se nomme dailleurs galement
Figure 5.44 : La saisie du critre
319 5.2. Les requtes de slection
oprateur boolen. Pour comprendre son fonctionnement, il faut
dresser sa table de vrit.
Une table de vrit est un tableau qui rpertorie toutes les combinai-
sons possibles des tats de vrit (vrai ou faux) dune ou de plusieurs
propositions. Une proposition est une affirmation vriable, comme
8 = 4 + 4 (qui est une proposition vraie) ou 8 = 5 (qui est une propo-
sition dont ltat de vrit est faux). Si vous disposez de deux propo-
sitions, nommes "proposition 1" et "proposition 2", vous pouvez
constituer une troisime proposition, que vous nommerez "Proposi-
tion 1 ET Proposition 2".
Tableau 5.2 : Table de vrit de loprateur boolen ET
Proposition 1 Proposition 2 Proposition 1 ET Proposition 2
VRAI VRAI VRAI
VRAI FAUX FAUX
FAUX VRAI FAUX
FAUX FAUX FAUX
Dans une requte, la manire la plus simple de traduire loprateur
ET est de saisir les critres sur la mme ligne dans le Gnrateur de
requtes.
Retrouvez la requte Villes-Horaires-Trains Requte et affichez les ho-
raires des trains destination de Metz le 15 janvier 2011. Au sens
boolen, votre demande se traduit par : (ville = Metz) et (jour = 15/01/
2011).
1 Affichez la requte Villes-Horaires-Trains Requte en mode Cra-
tion.
2 Saisissez le premier critre, Metz, dans la ligne Critres de la co-
lonne ville.
La chane de caractres saisie est encadre de guillemets aprs
validation.
3 Saisissez le second critre qui est la date, 15/01/2011, dans la ligne
Critres de la colonne jour.
Les dises autour de la date saisie sont insrs automatiquement
aprs la validation de la saisie.
320 5. Extraire des donnes
La traduction de loprateur boolen ET dans une requte
La proposition Proposition 1 ET Proposition 2 nest vraie que lorsque les
deux autres sont vraies. La requte va retourner les enregistrements pour
lesquels Proposition 1 ET Proposition 2 sont vraies. Dans cet exemple, la
proposition 1 snonce ainsi : le champ ville est gal Metz. La proposition 2
snonce comme ceci : le champ date est gal 15/01/2011. Loprateur ET est
traduit par la position des deux propositions sur la mme ligne de critre de
la requte. Vous verrez un peu plus loin que la faon la plus simple de traduire
loprateur OU est de changer de ligne.
4 Visualisez le rsultat en mode Feuille de donnes.
5 Enregistrez la requte sous le nom Critres 02 et fermez la re-
qute.
Loprateur logique OU
Loprateur boolen OU fonctionne sur le mme principe que lop-
rateur ET, mais sa table de vrit est diffrente. La proposition Pro-
position 1 OU Proposition 2 est vraie lorsque lune des deux proposi-
tions au moins est vraie.
Tableau 5.3 : Table de vrit de loprateur boolen OU
Proposition 1 Proposition 2 Proposition 1 OU Proposition 2
VRAI VRAI VRAI
VRAI FAUX VRAI
FAUX VRAI VRAI
Figure 5.45 : La prsence des deux critres sur la
mme ligne traduit un oprateur logique ET
Figure 5.46 : Le rsultat de la requte
321 5.2. Les requtes de slection
Tableau 5.3 : Table de vrit de loprateur boolen OU
Proposition 1 Proposition 2 Proposition 1 OU Proposition 2
FAUX FAUX FAUX
Dans une requte, la manire la plus simple de traduire loprateur
OU est de crer une nouvelle ligne dans le Gnrateur de requtes.
Retrouvez la requte Villes-Horaires-Trains Requte et affichez les ho-
raires pour Metz, quelle que soit la date de dpart ainsi que les
horaires de dpart pour toutes les villes, la date du 15 janvier 2011.
1 Affichez la requte Villes-Horaires-Trains Requte en mode Cra-
tion.
2 Saisissez le premier critre, ici Metz, dans la ligne Critres de la
colonne ville.
3 Saisissez le second critre, ici la date 15/01/2011, dans la ligne Ou
de la colonne jour.
4 Visualisez le rsultat en mode Feuille de donnes.
Figure 5.47 : La prsence des deux critres
sur deux lignes traduit un oprateur logique
OU
Figure 5.48 : Le rsultat de la requte
322 5. Extraire des donnes
5 Enregistrez la requte sous le nom Critres 03 puis fermez la
requte.
Il existe une autre manire de traduire loprateur OU : lintrieur
dun critre cette fois. Votre nouvel objectif est dafficher les horaires
pour Metz et pour Toulouse, et pour toutes les villes en date du
15 janvier 2011 dans la requte Villes-Horaires-Trains Requte.
1 Affichez la requte Villes-Horaires-Trains Requte en mode Cra-
tion.
2 Saisissez le premier critre, ici Metz Ou Toulouse, dans la ligne
Critres de la colonne ville.
3 Saisissez le second critre, la date 15/01/2011, dans la ligne Ou de
la colonne jour
4 Visualisez le rsultat en mode Feuille de donnes.
Figure 5.49 : Cette requte utilise deux
oprateurs logiques OU, traduits
diffremment
Figure 5.50 : Le rsultat de la requte dans la feuille de donnes
323 5.2. Les requtes de slection
5 Enregistrez la requte sous le nom Critres 04 et fermez la re-
qute.
Utiliser simultanment les oprateurs ET et OU
Les deux oprateurs logiques peuvent tre combins pour traduire
une proposition plus complexe que les prcdentes.
Vous devez maintenant afficher les horaires pour Metz du 15 jan-
vier 2011 et pour Metz aprs 12 heures dans la requte Villes-
Horaires-Trains Requte. Pour cela :
1 Affichez la requte Villes-Horaires-Trains Requte en mode Cra-
tion.
2 Sur la ligne Critres, saisissez Metz dans la colonne ville, puis la
date 15/01/2011 dans la colonne jour.
Vous venez de dnir la premire partie de la proposition. Il vous
reste la seconde partie crire.
3 Sur la ligne Ou, saisissez Metz dans la colonne ville, puis >12:00
dans la colonne heure dpart.
4 Visualisez le rsultat en mode Feuille de donnes.
Figure 5.51 : La dnition des critres de la requte
Figure 5.52 : Le rsultat de la requte dans la Feuille de donnes
324 5. Extraire des donnes
5 Enregistrez la requte sous le nom Critres 05 et fermez la re-
qute.
Utiliser des prdicats
Access met votre disposition un outil complet, le Gnrateur dex-
pression, qui vous permet de saisir facilement des expressions com-
plexes, sans risque derreur de syntaxe.
Clause de prdicat
Vous venez de voir que les oprateurs de comparaison sont utiliss dans
les lignes Critres et Ou. Il est galement possible dy employer dautres
clauses dites de prdicats :
j ENTRE valeur1 ET valeur2 permet dexprimer une fourchette de va-
leurs.
j DANS (valeur1, valeur2, valeur3) permet dexprimer une liste de
valeurs.
j COMME expression permet dexprimer une chane recherche.
Pour connatre les horaires compris entre 10 heures et 12 heures
dans la requte Villes-Horaires-Trains Requte, procdez comme suit.
1 Ouvrez la requte Villes-Horaires-Trains Requte en mode Cration.
Pour saisir la clause de prdicat dans la ligne Critres, vous pouvez
utiliser le Gnrateur dexpression.
2 Placez-vous dans la ligne Critres de la colonne heure
dpart et cliquez sur le bouton Gnrateur du groupe Paramtrage
de requte de longlet Outils de requte/Crer, ou utilisez le bouton
droit de la souris, puis slectionnez le menu contextuel Crer.
La bote de dialogue Gnrateur dexpression est affiche.
3 Choisissez llment dexpression Oprateurs puis Comparaison.
Double-cliquez sur la valeur dexpression Entre. Dans la zone
ddition, double-cliquez sur les chanes Expr pour les rempla-
cer par les valeurs 10:00 et 12:00, comme le montre lillustration
suivante : (voir Figure 5.53)
4 Cliquez sur le bouton OK pour fermer le Gnrateur dexpression.
Dans la ligne Critres, validez lexpression en appuyant sur la
touche [] (voir Figure 5.54).
325 5.2. Les requtes de slection
5 Visualisez le rsultat en mode Feuille de donnes.
6 Enregistrez la requte sous le nom Critres between.
Crer une requte utilisant des oprations
Somme, moyenne, extraction dune valeur minimale ou maximale,
dnombrement, calcul dcart type ou de variance sont les exemples
les plus signicatifs des oprations quil vous est possible de raliser
dans une requte.
Dans ce qui suit, les nombres de trajets destination de chacune des
villes vont tre calculs. Ce dnombrement sera effectu par un
comptage des horaires correspondants chacune des villes.
1 Cliquez sur longlet Crer puis sur le bouton Cration de requte du
groupe Macros et code. Dans la bote de dialogue Afficher la table,
Figure 5.53 : La saisie de la clause de prdicat dans le Gnrateur dexpression
Figure 5.54 : Le critre utilisant la clause de prdicat a t saisi au moyen du Gnrateur dexpression
326 5. Extraire des donnes
choisissez les tables Horaires et Villes-arrivee, cliquez sur le bouton
Ajouter, puis sur Fermer.
Longlet Requte1 saffiche, avec les tables Horaires et Villes-arrivee
dans la zone suprieure, rserve laffichage des tables.
Ajoutez maintenant le nom de la ville et le numro la liste de
champs que vous souhaitez voir apparatre dans le rsultat de la
requte.
2 Glissez le champ ville de la table Villes-arrivee et le champ noville
de la table Horaires dans la ligne Champ.
3 Cliquez sur le bouton Totaux du groupe Afficher/Masquer de lon-
glet Outils de requte/Crer ou cliquez du bouton droit dans une
colonne. Choisissez Totaux dans le menu contextuel qui apparat.
La ligne Opration apparat dans la grille de cration entre les lignes
Table et Tri.
4 Dans les listes proposes la ligne Opration, il vous faut choisir
une opration. titre dexemple, slectionnez lopration Compte
la ligne Opration de la colonne noville.
5 Visualisez le rsultat en mode Feuille de donnes.
Figure 5.55 : La cration
dune opration de
dnombrement
327 5.2. Les requtes de slection
Le nom de la colonne du nombre de trajets par ville nest pas
signicatif. La mthode suivante permet de renommer une colonne
dune requte.
6 Affichez la requte en mode Cration, puis les proprits de la
colonne renommer en plaant le point dinsertion dans la co-
lonne (ici la colonne noville), puis en cliquant sur le bouton Feuille
des proprits du groupe Afficher/Masquer de longlet Outils de
requte/Crer. Dans la fentre Feuille des proprits, saisissez Nb de
trajets dans la proprit Lgende.
7 Visualisez le rsultat de la requte en mode Feuille de donnes.
8 Fermez la requte et enregistrez-la sous le nom Nombre de trajets
par ville.
Figure 5.56 : Le rsultat de la requte, obtenu dans la
Feuille de donnes
Figure 5.57 : La lgende du champ noville en mode Cration
328 5. Extraire des donnes
Suppression des oprations dfinies dans la requte
Pour ne plus effectuer les oprations dnies, cliquez nouveau sur le
bouton Totaux du groupe Afficher/Masquer de longlet Outils de requte
/Crer. La ligne Opration disparat de la grille de cration de la requte.
Dnir des formats dans une requte
Le format des diffrentes colonnes utilis dans le rsultat des requ-
tes est celui des champs dnis dans les structures des tables. Il est
galement possible de modier un format initialement dni dans la
table depuis une requte.
Dans lexemple suivant, vous supprimerez de laffichage dans la
requte Villes-Horaires-Trains Requte les secondes qui apparaissent
dans les colonnes heure dpart et heure n et qui sont inutiles. Pour
cela :
1 Ouvrez la requte Villes-Horaires-Trains Requte en mode Cration.
2 Cliquez dans la colonne formater, ici heure dpart. Cliquez sur le
bouton Feuille des proprits du groupe Afficher/Masquer de lon-
glet Outils de requte/Crer ou cliquez du bouton droit dans la
colonne et choisissez Proprits dans le menu contextuel.
Le volet Feuille des proprits saffiche.
3 Choisissez un format propos dans la liste de la proprit Format,
par exemple Heure, abrg.
Figure 5.58 : Laffectation dun format daffichage, qui sera utilis dans le rsultat de la requte
329 5.2. Les requtes de slection
Vous pouvez modier les autres proprits que vous avez dj utili-
ses au niveau de la dnition dun champ dans la structure des
tables. Les proprits que vous dnissez dans la requte viendront
remplacer temporairement, pendant son excution, les proprits
dnies au niveau des champs. En voici la liste :
Description : proprit facultative servant dcrire le champ. Le
contenu de cette zone sera affich, par exemple, dans la barre
dtat en mode Feuille de donnes.
Masque de saisie : proprit permettant de contrler la saisie des
donnes, pour, par exemple, rendre la saisie dun nombre de
chiffres obligatoire.
Lgende : proprit personnalisant les en-ttes des colonnes des
champs lorsquune table ou une requte est affiche en mode
Feuille de donnes.
4 Excutez la requte pour visualiser le rsultat.
5 Enregistrez la requte sous le nom Format Requte.
Utiliser les jointures dune requte
Les jointures dune requte peuvent tre utilises pour obtenir cer-
tains rsultats. Il existe trois types de jointures.
Pour apprhender ces trois types de jointures, vous allez crer une
requte permettant dextraire les villes de la table Villes-arrivee et les
jours des horaires de la table Horaires. La requte sera trie par villes
et nomme Villes-arrivee et jours des horaires. Procdez ainsi :
1 Dnissez en mode Cration une nouvelle requte utilisant les
tables Villes-arrivee et Horaires sur la liste des tables de la requte.
2 Affichez les champs noville et ville de la table Villes-arrivee, ainsi
que le champ jour de la table Horaires dans la ligne Champ. Affec-
tez un tri croissant la colonne ville.
3 Enregistrez la requte sous le nom Villesarrivee et jours des
horaires.
Figure 5.59 : Le rsultat de la requte, aprs modication du format daffichage des heures
330 5. Extraire des donnes
4 Double-cliquez sur la ligne de jointure qui relie les champs des
deux tables.
La bote de dialogue Proprits de la jointure apparat. Loption 1 est
coche par dfaut. Il sagit du type de jointure le plus courant. La
requte affichera dans ce cas uniquement les villes de la table Villes-
arrivee qui ont un ou plusieurs horaires dans la table Horaires. On
parle alors de "jointure interne".
5 Cliquez sur le bouton OK de la bote de dialogue.
Si vous affichez le code SQL correspondant par le bouton Mode SQL
situ en bas de la fentre, vous constatez que ce type de jointure est
traduit par la clause INNER JOIN.
6 Vriez le rsultat en excutant la requte en mode Feuille de
donnes.
Figure 5.60 : La jointure
interne est le type le plus
frquent de jointure
Figure 5.61 : La traduction
de la jointure interne en
mode SQL
Figure 5.62 : Le rsultat de la requte utilisant
une jointure interne
331 5.2. Les requtes de slection
Vous allez vous intresser maintenant au deuxime type de jointure.
7 Affichez la requte en mode Cration. Double-cliquez sur la ligne
de jointure pour retourner dans la bote de dialogue Proprits de
la jointure et cochez loption 2. Fermez la bote de dialogue en
utilisant le bouton OK.
Vous venez de dnir une jointure externe gauche. La requte va
alors afficher toutes les villes de la table Villes-arrivee, quelles aient
ou non des horaires associs dans la table Horaires.
Si vous affichez le code SQL correspondant, vous constatez que ce
type de jointure est traduit par la clause LEFT JOIN.
8 Vriez le rsultat en excutant la requte en mode Feuille de
donnes.
Toutes les villes sont affiches, y compris celles qui nont pas dho-
raire, comme Alenon et Arcachon.
Il vous reste un troisime type de jointure dcouvrir.
Figure 5.63 : Une jointure
externe gauche
Figure 5.64 : La traduction
de la jointure externe
gauche en mode SQL
Figure 5.65 : Le rsultat dune requte utilisant
une jointure externe gauche
332 5. Extraire des donnes
9 Affichez la requte en mode Cration. Double-cliquez sur la ligne
de jointure pour retourner dans la bote de dialogue Proprits de
la jointure et cochez loption 3. Fermez la bote de dialogue en
cliquant sur le bouton OK.
Vous venez de dnir une jointure externe droite. La requte va alors
afficher tous les horaires de la table Horaires, quils aient ou non des
villes associes dans la table Villes-arrivee.
Si vous affichez le code SQL correspondant, vous constatez que ce
type de jointure est traduit par la clause RIGHT JOIN.
Ce dernier type de jointure offre ici peu dintrt ; tous les horaires de
la table Horaires tant rattachs une ville de la table Villes-arrivee, il
ny a pas de diffrence avec le rsultat de la premire jointure.
10 Fermez et enregistrez la requte.
5.3. Utiliser lAssistant Requte
Les requtes de slection tant frquentes, lAssistant Requte vous
sera fort utile pour crer facilement la plus grande majorit dentre
elles.
Crer une requte simple avec lAssistant
Dans la requte qui va suivre, qui ne portera que sur une seule table,
toutes les villes de la table Villes-arrivee seront extraites laide de
lAssistant Requte.
Figure 5.66 : Une jointure
externe droite
Figure 5.67 : La traduction de la jointure externe droite en mode SQL
333 5.3. Utiliser lAssistant Requte
1 Reprenez la base exprimentale BaseTrains.accdb, cliquez
sur le bouton Assistant Requte du groupe Macros et code
de longlet Crer.
La bote de dialogue Nouvelle requte est affiche.
2 Dans cette bote de dialogue, slectionnez Assistant Requte simple
puis cliquez sur le bouton OK.
3 Dans la premire tape de lAssistant Requte simple, choisissez
le nom de la table sur la liste Tables/Requtes, par exemple la table
Villes-arrivee.
4 Cliquez sur le bouton >> pour glisser tous les champs de la liste
Champs disponibles sur la liste Champs slectionns.
Voici la liste des boutons proposs cette tape de lAssistant :
Ce bouton a pour effet dajouter le champ choisi dans la liste
Champs disponibles la liste Champs slectionns.
Ce bouton ajoute tous les champs de la table dans la liste
Champs slectionns.
Ce bouton supprime le champ slectionn de la liste Champs
slectionns.
Ce bouton supprime tous les champs de la liste Champs
slectionns.
5 Cliquez sur le bouton Suivant pour passer ltape suivante de
lAssistant.
Figure 5.68 : LAssistant
Requte simple est choisi
dans la bote de dialogue
Nouvelle requte
Figure 5.69 : La slection
des champs qui
constitueront la structure de
la nouvelle requte
334 5. Extraire des donnes
La bote de dialogue suivante saffiche si un champ de type Numri-
que a t choisi ltape prcdente.
6 Cochez loption Dtaille pour que la requte affiche tous les enre-
gistrements, ou cochez loption Synthse puis cliquez sur le bou-
ton Options de synthse pour que la requte ralise des totaux et
des regroupements.
Si vous avez choisi la seconde option, la bote de dialogue Options de
synthse saffiche.
7 Cochez une case pour effectuer le calcul qui devra tre ralis pour
un champ donn. Cochez ventuellement la case Compter les
enregistrements dans pour effectuer le dnombrement denregis-
trement par regroupement. Cliquez sur le bouton OK pour fermer
la bote de dialogue.
8 De retour dans lAssistant Requte simple, cliquez sur le bouton
Suivant.
La bote de dialogue suivante saffiche si un champ de loption de
synthse est de type Date.
9 Cochez lune des options proposes pour effectuer un regroupe-
ment sur une date. Cliquez sur le bouton Suivant.
Figure 5.70 : Cette tape est propose si un champ numrique ou de type date gure dans la liste des
champs slectionns
Figure 5.71 : Les options des
oprations et des
regroupements effectus
dans la requte
335 5.3. Utiliser lAssistant Requte
La dernire tape de lAssistant saffiche. Dans la premire zone,
Access propose un nom pour la requte : Villes-arrivee Requte.
10 Saisissez ventuellement un autre nomsi vous dsirez en changer.
Dans la seconde partie de la bote de dialogue, loption Ouvrir la
requte pour afficher les informations permet dafficher le rsultat de la
requte en mode Feuille de donnes.
11 Dans cet exemple, conservez loption coche.
Loption Modier la structure de la requte permet dafficher la requte
en mode Cration an dapporter une modication sa structure.
12 Cliquez sur le bouton Terminer.
Le rsultat de la requte est affich en mode Feuille de donnes.
Mme si lAssistant est utilis, gardez en tte quune requte est
gnre en langage SQL. Le code SQL de la requte peut donc tre
Figure 5.72 : Les options de
regroupements proposes sur
les dates
Figure 5.73 : La dernire tape de lAssistant
336 5. Extraire des donnes
visualis. titre dexemple, vous consulterez celui de la requte qui
vient dtre cre.
13 Cliquez sur le bouton Mode SQL, situ en bas droite de la fentre.
Le code suivant saffiche dans la fentre :
SELECT [Villes-arrivee].noville,
[Villes-arrivee].ville,
[Villes-arrivee].departement
FROM [Villes-arrivee];
Linstruction SELECT est suivie du nom des champs de la table corres-
pondant aux colonnes du rsultat de la requte. Dans le code gnr,
chaque champ est prcd du nom de sa table an dviter une
confusion dans la provenance des champs lorsque la requte fait
appel plusieurs tables quand la clause FROM fait rfrence des
champs possdant la mme orthographe.
14 Fermez la requte.
Requtes sur plusieurs tables au moyen de lAssistant
LAssistant Requte simple permet galement de raliser une requte sur
plusieurs tables. Choisissez les tables et les champs correspondants dans la
premire tape de lAssistant puis poursuivez les tapes comme pour une
requte utilisant une seule table.
Crer une requte sur les doublons
La recherche denregistrements renfermant des valeurs en double
dans une table peut tre effectue par une requte.
1 Cliquez sur le bouton Assistant Requte du groupe Macros et codes
de longlet Crer.
La bote de dialogue Nouvelle requte est affiche.
2 Dans cette bote de dialogue, slectionnez Assistant Requte trou-
ver les doublons puis cliquez sur le bouton OK.
Figure 5.74 : Le code SQL de la requte gnre avec lAssistant
337 5.3. Utiliser lAssistant Requte
3 Dans la premire tape de lAssistant Requte trouver les dou-
blons, choisissez le nomde la table sur la liste propose, ici la table
Horaires. Cliquez sur le bouton Suivant.
4 Dans ltape suivante, slectionnez dans la zone Champs disponi-
bles le champ pouvant contenir des doublons inclure dans la
requte. Cliquez sur le bouton > pour le glisser dans la zone Re-
chercher les doublons dans. Rptez ventuellement lopration
pour dautres champs, puis cliquez sur le bouton Suivant.
Si aucun champ supplmentaire nest ajout la requte, celle-ci
prsentera le nombre ditrations trouves pour chaque enregistre-
Figure 5.75 : LAssistant Requte trouver les doublons est choisi
Figure 5.76 : Le choix de la table dans laquelle sera effectue la recherche de doublons
Figure 5.77 : La slection des champs dans lesquels la recherche de doublons sera effectue
338 5. Extraire des donnes
ment concern par la recherche de doublons. Ltape suivante de
lAssistant vous permet dindiquer des champs supplmentaires,
purement informatifs, et qui ninterfreront pas sur la recherche des
doublons. Tous les enregistrements redondants de la table seront
alors prsents et les champs informatifs seront galement affichs.
5 Slectionnez les champs informatifs puis cliquez sur le bouton
Suivant.
Dans la premire zone de la dernire tape, Access propose un nom
pour la requte.
6 Saisissez ventuellement un autre nom si vous dsirez le changer.
Dans la seconde partie de la bote de dialogue, loption Afficher le
rsultat permet dafficher le rsultat de la requte en mode Feuille de
donnes.
7 Conservez ici loption coche.
Loption Modier la structure permet dafficher la requte en mode
Cration an dapporter une modication sa structure.
8 Cliquez sur le bouton Terminer.
Le rsultat est affich en mode Feuille de donnes. Il diffre si vous
avez choisi dafficher ou non des champs en plus de ceux contenant
des doublons.
Lillustration qui suit montre une recherche de doublons sur les
quatre premires colonnes. La dernire est ajoute titre informatif.
Figure 5.78 : La slection
des champs informatifs
Figure 5.79 : Le rsultat
obtenu lorsque des champs
informatifs, autres que ceux
utiliss pour la recherche de
doublons, ont t ajouts
la requte
339 5.3. Utiliser lAssistant Requte
Lillustration qui suit montre une recherche de doublons sur les
quatre premires colonnes et ne contient pas de champ informatif.
Crer une requte sur la non-correspondance
entre des tables
Une requte peut tre utilise pour effectuer une recherche de non-
correspondance entre deux tables. Ainsi, un client appartenant une
table des clients sera localis par la requte si aucune facture ne lui
a t associe dans la table des factures.
Dans lexemple qui suit, une recherche des trains de la table Trains
qui ne sont pas utiliss dans la table Horaires est effectue par la
requte de recherche de non-correspondance.
1 Cliquez sur le bouton Assistant Requte du groupe Macros et code
de longlet Crer.
La bote de dialogue Nouvelle requte est affiche.
2 Dans cette bote de dialogue, slectionnez Assistant Requte de
non-correspondance puis cliquez sur le bouton OK.
3 Dans la premire tape de lAssistant Requte de non-
correspondance, choisissez le nom de la table contenant les
champs inclure dans la requte, ici la table Trains. Cliquez sur le
bouton Suivant.
4 Dans ltape suivante, choisissez le nom de la table qui sera
utilise pour la recherche. Conservez ici la table Horaires. Cliquez
sur le bouton Suivant.
Figure 5.80 : Le rsultat obtenu lorsquaucun champ informatif na t ajout la requte
Figure 5.81 : LAssistant Requte de non-correspondance est slectionn
340 5. Extraire des donnes
La table propose par dfaut est celle qui a une relation avec la table
choisie ltape prcdente.
5 Dans ltape suivante, slectionnez, pour chaque table, le champ
commun. Cliquez sur le bouton Suivant.
Par dfaut, Access propose le champ commun utilis dans la relation
qui unit les deux tables.
6 Dans ltape suivante, slectionnez les champs inclure dans le
rsultat de la requte. Cliquez sur le bouton Suivant.
Figure 5.82 : La table en relation avec la premire est slectionne
Figure 5.83 : Le champ propos par Access
341 5.3. Utiliser lAssistant Requte
Dans la premire zone de la dernire tape, Access propose un nom
pour la requte.
7 Saisissez ventuellement un autre nomsi vous dsirez en changer.
Dans la seconde partie de la bote de dialogue, loption Afficher le
rsultat permet dafficher le rsultat de la requte en mode Feuille de
donnes.
8 Conservez loption coche.
Loption Modier la structure permet dafficher la requte en mode
Cration an dapporter une modication sa structure.
9 Cliquez sur le bouton Terminer.
Le rsultat obtenu est affich en mode Feuille de donnes.
5.4. Crer des requtes action
Une requte action ne se contente pas seulement dafficher des
donnes, elle est aussi capable de modier ou de dplacer des
enregistrements en une seule opration. Il existe quatre types de
requtes action : les requtes Cration de table, Ajout, Suppression et
Mise jour.
Crer une requte action de type cration de table
Une requte de cration de table effectue la cration de la structure
dune table. Il est possible de reprendre des donnes issues dautres
tables dans la table cre.
Le mode opratoire utilis pour construire une telle requte utilise
deux tapes : la premire consiste en la cration dune classique
requte de slection qui est ensuite transforme, dans la seconde
tape, en une requte action de type cration de table.
Figure 5.84 : Le rsultat de la requte
342 5. Extraire des donnes
Prenez lexemple dune requte qui va rechercher tous les horaires
de la table Horaires du 15 janvier 2011 et demandez-lui de crer une
table contenant uniquement les horaires trouvs, que vous appelle-
rez Horaires150111.
Commencez par crer la requte de slection qui extrait les horaires
du 15 janvier 2011.
1 Crez une requte en mode Cration utilisant la table Horaires sur
la liste des tables. Dans la ligne Champ de la premire colonne,
choisissez Horaires.* pour insrer tous les champs de la table.
Glissez le champ jour dans la seconde colonne. Dans la ligne
Critres de cette colonne, saisissez la valeur 15/01/11.
Vous ne souhaitez pas afficher la seconde colonne jour car son
affichage est dj implicitement demand par la syntaxe utilise
dans la premire colonne. La seconde colonne a pour unique fonc-
tion de permettre la dnition du critre sur la date du 15 jan-
vier 2011.
2 Dcochez la case Afficher dans la colonne jour. Enregistrez la
requte sous le nom Horairescreationtable.
Un critre ne peut tre dfini dans une colonne utilisant un astrisque
Un critre ne peut pas tre pos sur une colonne utilisant lastrisque dans
la ligne Champ. En effet, dans ce cas, tous les champs de la table sont
affichs, il nest pas possible den choisir un en particulier pour y appliquer le
Figure 5.85 : La requte de slection
343 5.4. Crer des requtes action
critre. Il faut alors ajouter les champs qui dnissent les critres et
dsactiver leur case cocher Afficher an quils napparaissent pas dans le
rsultat.
Jusqualors, la requte dnie est une simple requte de slection
comme le conrme lactivation du bouton Slection du groupe Type
de requte de longlet Outils de requte/Crer. Elle va maintenant tre
convertie en une requte action de type cration de table.
3 Cliquez sur le bouton Cration de table du groupe Type de
requte de longlet Outils de requte/Crer ou cliquez du
bouton droit dans la partie suprieure de longlet de la
requte puis survolez le menu Type de requte puis Requte
Cration de table dans le menu contextuel qui apparat.
4 Dans la zone Nom de la table, saisissez le nomde la table crer, ici
Horaires150111, dans la bote de dialogue Cration de table et cli-
quez sur le bouton OK.
5 Testez la requte en cliquant sur le bouton Excuter du groupe
Rsultats de longlet Outils de requte/Crer.
Diffrence entre lexcution et laffichage
Si vous cliquez sur le bouton Excuter, symbolis par un point dexclama-
tion, laction demande dans la requte (ici, la cration dune table) est
ralise. Si, par contre, vous passez en mode Feuille de donnes, vous vous
contentez de demander laffichage des donnes dnies dans la grille de
cration, sans excuter laction (ici, la cration de la table).
6 Validez le message de conrmation qui apparat.
La structure de la table Horaires150111 est cre et les enregistre-
ments trouvs lors de lexcution de la requte y sont ajouts.
Figure 5.86 : La saisie du
nomde la table crer
344 5. Extraire des donnes
7 Fermez et enregistrez la requte. Vriez que la table Horai-
res150111 a t cre sur la liste des tables et ouvrez-la en mode
Feuille de donnes pour consulter les enregistrements ajouts.
8 Fermez la table ouverte.
Si vous excutez nouveau la requte, la table dj cre par la
requte est remplace par la nouvelle.
Crer une requte action de type ajout
Voici maintenant un deuxime type daction quil est possible de
faire excuter une requte : lajout denregistrements dans une
table existante.
Comme prcdemment, le mode opratoire utilis pour construire
une telle requte fait appel deux tapes : la premire est la cration
dune classique requte de slection et la seconde transforme la
requte en une requte de type ajout.
Lexemple qui suit est celui dune requte qui recherche tous les
horaires de la table Horaires lorsque la date est antrieure au 15 jan-
vier 2011 et les ajoute dans la table Horaires150111, prcdemment
cre.
Commencez par constituer la requte de slection qui doit extraire
les horaires antrieurs au15 janvier 2011.
1 Crez une requte en mode Cration utilisant la table Horaires sur
la liste des tables. Dans la ligne Champ de la premire colonne,
choisissez Horaires.* pour insrer tous les champs de la table.
Glissez le champ jour dans la seconde colonne. Dans la ligne
Critres de cette colonne, saisissez la valeur <15/01/11.
Jusqualors la requte dnie est une simple requte de slection,
comme le conrme lactivation du bouton Slection du groupe Type
de requte de longlet Outils de requte/Crer. Elle va maintenant tre
convertie en une requte action de type ajout.
2 Cliquez sur le bouton Ajout du groupe Type de requte de
longlet Outils de requte/Crer ou cliquez du bouton droit
dans la partie suprieure de longlet de la requte puis
survolez le menu Type de requte et cliquez sur Requte Ajout dans
le menu contextuel qui apparat.
3 Dans la zone Nom de la table, slectionnez la table laquelle les
enregistrements seront ajouts sur la liste droulante de la bote
345 5.4. Crer des requtes action
de dialogue Ajout. Ici ajoutez-les la table Horaires150111. Cliquez
sur le bouton OK.
La ligne Afficher est remplace par la ligne Ajouter dans la grille de
cration. La premire colonne (Horaires.*) traduit que toutes les
colonnes du rsultat de la requte seront ajoutes la table Horai-
res150111.
4 la ligne Ajouter , supprimez jour dans la colonne jour, sinon
Access tentera dajouter nouveau le champ jour la table et cela
provoquera une erreur.
Voici lexplication de ce dernier point : la ligne Ajouter permet
dindiquer le champ de la table de destination qui recevra lopration
dnie dans la colonne. tant donn que la deuxime colonne ne
sert qu dnir un critre, la ligne Ajouter doit tre vide dans cette
deuxime colonne.
5 Testez la requte en cliquant sur le bouton Excuter du groupe
Rsultats de longlet Outils de requte/Crer. Lorsque Access vous
demande conrmation avant dajouter les enregistrements la
table Horaires150111, cliquez sur le bouton Oui.
Figure 5.87 : Le nomde la
table dans laquelle seront
ajouts les
enregistrements
Figure 5.88 : La dsactivation de
lajout dans la colonne du critre
346 5. Extraire des donnes
Une requte ajout ne doit pas tre excute plusieurs fois
Si vous excutez plusieurs fois la mme requte dajout, des enregistre-
ments identiques seront renregistrs.
6 Fermez et enregistrez la requte sous le nom HorairesAjout. Vri-
ez dans la table Horaires150111 lajout des horaires antrieurs au
15 janvier 2011.
7 Fermez la table ouverte.
Crer une requte action de type suppression
Voici le troisime type dopration possible dans une requte action :
la suppression denregistrements dans une table existante.
Une fois encore, le mode opratoire utilis pour construire une telle
requte se droule en deux tapes : la premire est la cration dune
requte de slection et la seconde transforme la requte en une
requte de type suppression.
Imaginons quune erreur de saisie soit constate : il ne devrait pas
exister dhoraires en fvrier 2011. Les horaires de ce mois doivent
donc tre supprims dans la table Horaires.
Commencez par crer la requte de slection qui extrait les horaires
de fvrier 2011.
1 Crez une requte en mode Cration utilisant la table Horaires sur
la liste des tables. Dans la ligne Champ de la premire colonne,
choisissez Horaires.* pour insrer tous les champs de la table.
Glissez le champ jour dans la seconde colonne. Dans la ligne
Critres de cette colonne, saisissez Comme */02/2011.
Vous pouvez aussi obtenir le prdicat Comme dans le gnrateur dex-
pression laide du bouton Gnrateur du groupe Paramtrage de
requte.
Jusqualors la requte dnie est une simple requte de slection.
Elle va maintenant tre convertie en une requte action de type
suppression.
2 Cliquez sur le bouton Suppression du groupe Type de re-
qute de longlet Outils de requte/Crer ou cliquez du
bouton droit dans la partie suprieure de longlet de la
requte puis survolez le menu Type de requte et cliquez sur
Requte Suppression dans le menu contextuel qui apparat.
347 5.4. Crer des requtes action
La ligne Afficher est remplace par la ligne Supprimer dans la grille de
cration.
3 Testez la requte en cliquant sur le bouton Excuter du groupe
Rsultats de longlet Outils de requte/Crer. Lorsque Access vous
demande conrmation avant de supprimer les enregistrements de
la table Horaires, cliquez sur Oui.
4 Fermez et enregistrez la requte sous le nom Horairessuppression.
Vriez que les horaires de fvrier nexistent plus dans la table
Horaires en mode Feuille de donnes en y lanant la recherche.
Lintgrit rfrentielle reste inviolable
Les requtes action de type suppression ne pourront pas transgresser des
rgles dintgrit rfrentielle qui interdiraient la suppression des donnes.
Ne perdez pas de vue que lintgrit rfrentielle veillera toujours au maintien
de la cohrence des donnes des tables. Une requte de suppression qui
entrerait en conit avec des rgles dintgrit rfrentielle ne pourrait sex-
cuter.
Crer une requte action de type mise jour
Dernire action possible : la mise jour des donnes dune table
depuis une requte.
Comme dans les trois cas prcdents, le mode opratoire utilis
pour construire une telle requte fait appel deux tapes : la cration
dune classique requte de slection et sa transformation en une
requte de type mise jour.
Figure 5.89 : La requte
Suppression
348 5. Extraire des donnes
Il faut par exemple remplacer la date 14 janvier 2011 par le 27 f-
vrier 2011 dans les enregistrements concerns de la table Horaires.
Commencez par crer la requte de slection qui extrait les horaires
du 14 janvier 2011.
1 Crez une requte en mode Cration utilisant la table Horaires sur
la liste des tables. Dans la ligne Champ, glissez le champ jour dans
la premire colonne.
Comme toujours, la requte dnie est une simple requte de slec-
tion. Elle sera convertie en une requte action de type mise jour.
2 Cliquez sur le bouton Mise jour du groupe Type de requte
de longlet Outils de requte/Crer ou cliquez du bouton droit
dans la partie suprieure de longlet de la requte puis sur-
volez le menu Type de requte et cliquez sur Requte Mise jour
dans le menu contextuel qui apparat.
La ligne Afficher est remplace par la ligne Mise jour dans la grille de
cration. Cette ligne doit contenir la valeur mettre jour.
3 Dans la ligne Mise jour, saisissez la date 27/02/2011. Dans la ligne
Critres, saisissez la date modier : 14/01/2011.
4 Excutez la requte en cliquant sur le bouton Excuter du groupe
Rsultats de longlet Outils de requte/Crer. Lorsque Access vous
demande conrmation avant de supprimer les enregistrements de
la table Horaires, cliquez sur Oui.
5 Fermez et enregistrez la requte sous le nom Horairesmaj. Vriez
que les dates des horaires ont t modies dans la table Horaires.
Figure 5.90 : La requte Mise jour
349 5.4. Crer des requtes action
Dsactivation des messages lexcution des requtes action
Lors de lexcution de ces requtes, il est possible de ne plus afficher les
messages de conrmation en les dsactivant en utilisant longlet Fichier puis
le bouton Options. Dans la bote de dialogue Options Access, cliquez sur
Paramtres du client puis dcochez la case Requtes action.
5.5. Ajouter des paramtres dans
les requtes
Il vous est possible daller plus loin dans vos requtes en utilisant des
paramtres. Un paramtre est une valeur qui est demande lutili-
sateur au moment de lexcution de la requte. Le paramtre peut
diffrer dune requte lautre en fonction de la situation.
La requte Critres 01, qui extrait les horaires destination de la ville
de Metz, va tre modie en ce sens :
1 Ouvrez la requte Critres 01 en mode Cration et enregistrez-la
sous le nom Critres 01 avec paramtre.
Le paramtre doit maintenant tre dni.
2 Cliquez sur le bouton Paramtres du groupe Afficher/Mas-
quer de longlet Outils de requte/Crer ou cliquez du bou-
ton droit dans la partie suprieure de la fentre de la
requte et choisissez Paramtres dans le menu contextuel qui
apparat.
La bote de dialogue Paramtres de la requte est affiche.
Figure 5.91 : La dsactivation des messages lexcution des requtes action
350 5. Extraire des donnes
3 Saisissez le nom du paramtre dans la premire cellule vide de la
colonne Paramtre, ici nomville.
4 Slectionnez le type de donnes du paramtre dans la liste de la
colonne Type de donnes. Ici, conservez le type Texte propos par
dfaut. Fermez la bote de dialogue en utilisant le bouton OK.
Le critre doit tre modi dans longlet de cration de la requte.
5 Dans la ligne Critres, remplacez la chane de caractres Metz par
[nomville].
Noubliez pas les crochets pour indiquer Access quil sagit dune
variable et non dune chane de caractres.
Figure 5.92 : La dnition
du paramtre
Figure 5.93 : Le paramtre est ici visible dans la ligne de critres
351 5.5. Ajouter des paramtres dans les requtes
La syntaxe des paramtres
Comme le nom des champs, un paramtre doit tre encadr par des
crochets.
6 Excutez la requte. Saisissez la valeur du paramtre dans la bote
de dialogue Entrer la valeur du paramtre qui apparat, Toulouse par
exemple, puis cliquez sur OK.
Le rsultat est affich en mode Feuille de donnes.
Tlchargement de la base de donnes
Vous retrouverez la base de donnes nalise BaseTrains-nale.accdb,
utilise dans ce chapitre, sur le site de Micro Application (www.microapp.com)
dans le dossier Chapitre05.
5.6. Cas pratique
Passez maintenant la pratique. Pour obtenir des rsultats suffisam-
ment signicatifs, vous devrez disposer dun minimum de donnes
dans les tables. Saisissez de nouveaux produits dans la table Livres
en mode Feuille de donnes, et crez des factures accompagnes de
leurs lignes dans la table Factures ou tlchargez la base Facturation
livres5.accdb depuis Internet. Cette base contient suffisamment de
donnes pour vous permettre de raliser les ateliers qui vont suivre.
Tlchargement de la base de donnes
Vous trouverez la base de donnes Facturation livres5.accdb utilise dans
ce chapitre sur le site de Micro Application (www.microapp.com) dans le dossier
Chapitre05.
Figure 5.94 : La saisie du paramtre, lors de lexcution de
la requte
352 5. Extraire des donnes
Crer des requtes de slection en mode SQL
Votre premier objectif est dafficher, depuis la table Contacts et en
mode SQL, le nom du contact, son prnom et son dpartement.
Voici la liste des champs de la table Contacts cre dans les cas
pratiques prcdents.
1 Ouvrez la base de donnes Facturation livres5.accdb. Cliquez sur
longlet Crer puis sur le bouton Cration de requte du groupe
Macros et code. Fermez la bote de dialogue Afficher la table (najou-
tez pas de table).
Longlet Requte1 est affich.
2 Cliquez sur le bouton SQL du groupe Rsultats de longlet Outils de
requte/Crer.
3 Pour extraire certaines colonnes de la table Contacts, saisissez
aprs la clause SELECT la liste des champs nom, prenom et departement,
spars par des virgules, puis tapez FROM Contacts. Respectez la
syntaxe SQL suivante :
SELECT nom, prenom, departement
FROM Contacts ;
Ces champs reprsentent les colonnes qui safficheront dans le r-
sultat de la requte.
Figure 5.95 : Les champs de la table Contacts
Figure 5.96 : La requte qui affiche le nom,
le prnomet le dpartement de chaque
client de la table contacts
353 5.6. Cas pratique
4 Visualisez le rsultat en utilisant le bouton Excuter du groupe
Rsultats de longlet Outils de requte/Crer.
Ce rsultat a t obtenu facilement. Faites maintenant gurer le nom
et le prnom dans une seule colonne ; cette opration sappelle une
"concatnation".
5 Revenez en mode SQL en cliquant sur la che du bouton
Affichage de longlet Accueil puis en choisissant Mode SQL dans la
liste dactions qui vous est propose. Dans la liste des champs,
concatnez les champs nom et prenom au moyen du caractre & :
SELECT nom & " " & prenom, departement
FROM Contacts;
6 Visualisez le rsultat en utilisant le bouton Excuter du groupe
Rsultats de longlet Outils de requte/Crer.
Le nom quAccess affecte len-tte de la colonne nest pas trs
signicatif : Expr1000. Vous allez renommer cette colonne.
7 Revenez en mode SQL en cliquant sur la che du bouton
Affichage de longlet Accueil puis en choisissant Mode SQL dans la
liste dactions qui vous est propose. Pour changer le nom de
len-tte de colonne dans le rsultat de la requte, ajoutez, aprs le
nom du champ, la mention AS suivie du nouveau nom de len-tte
de colonne, Contact :
SELECT nom & " " & prenom AS Contact, departement
FROM Contacts;
8 Visualisez le rsultat en utilisant le bouton Excuter du groupe
Rsultats de longlet Outils de requte/Crer.
Figure 5.97 : La requte affichant
le nomet le prnomdu contact
dans une mme colonne
Figure 5.98 : Le rsultat de la requte
Figure 5.99 : La modication du nomde len-tte de colonne
354 5. Extraire des donnes
Modiez maintenant la requte an quelle affiche uniquement les
contacts habitant Paris. Vous allez ajouter un critre dit de slection
sur la ville.
9 Revenez en mode SQL en cliquant sur la che du bouton
Affichage de longlet Accueil puis en choisissant Mode SQL dans la
liste dactions qui vous est propose. Ajoutez dabord la ville la
liste des champs, puis la clause WHERE la n de la requte, suivie
de la condition ville = Paris.
Vous obtenez la requte suivante :
SELECT nom & " " & prenom AS Contact, departement, ville
FROM Contacts
WHERE ville = "Paris";
Noubliez pas dencadrer la chane de caractres Paris de guillemets
pour quAccess ninterprte pas le critre comme un paramtre.
10 Visualisez le rsultat en utilisant le bouton Excuter du groupe
Rsultats de longlet Outils de requte/Crer.
11 Enregistrez la requte sous le nom ContactsParisSQL en utilisant
longlet Fichier puis en choisissant Enregistrer sous.
Modiez prsent la requte de telle sorte quelle affiche unique-
ment les contacts nhabitant pas Paris et classs par villes.
Le critre sur la ville sera modi et la clause ORDER BY ajoute.
Figure 5.100 : Le rsultat de la requte
Figure 5.101 : La requte qui
affiche les contacts de Paris
Figure 5.102 : Le rsultat de la requte
355 5.6. Cas pratique
12 Revenez en mode SQL en cliquant sur la che du bouton
Affichage de longlet Accueil puis en choisissant Mode SQL dans la
liste dactions propose. Modiez la clause WHERE la n de la
requte, en saisissant Not [ville]="Paris".
13 Pour classer les lignes dans le rsultat dune requte sur la vile,
utilisez la clause ORDER BY, la n de la requte, suivie du champ
ville :
SELECT nom & " " & prenom AS Contact, departement, ville
FROM Contacts
WHERE Not ville="Paris"
ORDER BY ville;
14 Visualisez le rsultat en utilisant le bouton Excuter du groupe
Rsultats de longlet Outils de requte/Crer.
15 Cliquez sur longlet Fichier, choisissez Enregistrer lobjet sous et
sauvegardez la requte sous le nom ContactshorsParisSQL. Fer-
mez la requte.
Figure 5.103 : Le code SQL de la
requte, aprs ajout de la clause
Figure 5.104 : Le rsultat de la
requte
356 5. Extraire des donnes
Vous allez effectuer une interrogation sur les deux tables Contacts et
Factures an dextraire le nom, les numros et les dates de factures
de chaque contact.
Lillustration suivante vous rappelle la relation un plusieurs entre
les deux tables an de vous permettre de retrouver les champs
utiliser dans la requte.
16 Crez une nouvelle requte en mode SQL en cliquant sur longlet
Crer puis sur le bouton Cration de requte du groupe Macros et
code. Fermez la bote de dialogue Afficher la table (najoutez pas de
table). Cliquez sur le bouton SQL du groupe Rsultats de longlet
Outils de requte/Crer.
17 Saisissez le code suivant :
SELECT Contacts.nom, Factures.nofacture, Factures.datefacture
FROM Contacts, Factures
WHERE Contacts.nocontact = Factures.nocontact ;
Rappelons que la source de la requte est, dans ce cas, appele
"produit cartsien des tables dnies dans la clause FROM". Access re-
cherche toutes les lignes de la table Contacts associes la table
Factures qui rpondent la clause.
18 Visualisez le rsultat.
Figure 5.105 : La relation entre les tables
Contacts et Factures
Figure 5.106 : Le rsultat de la requte
357 5.6. Cas pratique
19 Enregistrez la requte sous le nom ContactsFacturesSQL.
20 Modiez la requte prcdente de telle sorte quelle affiche les
noms des contacts pour lesquels une ou plusieurs factures ont t
tablies, ainsi que le nombre de factures, au moyen de la clause
optionnelle GROUP BY et de la fonction count() :
21 Revenez en mode SQL en cliquant sur la che du bouton
Affichage de longlet Accueil puis en choisissant Mode SQL dans la
liste dactions qui vous est propose et enregistrez la requte sous
le nom ContactsNbFacturesSQL. Modiez la requte comme suit :
SELECT Contacts.nom, Count(*) AS [Nombre de factures]
FROM Contacts, Factures
WHERE Contacts.nocontact = Factures.nocontact
GROUP BY Contacts.nom ;
22 Visualisez le rsultat.
23 Fermez et enregistrez la requte.
Crer des requtes en mode Cration
Crer une requte sur une table et un critre
Dans la section prcdente, vous avez cr une requte sur une table
unique, Contacts-horsParis. Observez comment le Gnrateur de re-
qutes interprte cette requte en mode Cration.
1 Dans le volet de navigation, cliquez du bouton droit sur la requte
Contacts-horsParis-SQL. Choisissez Mode Cration dans le menu
contextuel affich.
Figure 5.107 : Le rsultat de la requte de dnombrement
358 5. Extraire des donnes
La requte apparat en mode SQL car cest le mode daffichage qui a
t utilis au dernier enregistrement de la requte.
2 Pour afficher la requte en mode Cration, cliquez sur la che du
bouton Affichage du groupe Rsultats de longlet Outils de requte
/Crer puis choisissez Mode Cration dans la liste dactions qui
vous est propose.
3 Fermez la requte Contacts-horsParis-SQL.
Crer une requte sur plusieurs tables et plusieurs
critres
La requte suivante va porter sur plusieurs tables.
Un livre a un dfaut. Vous voulez envoyer un courrier aux clients qui
ont achet ce produit pour leur annoncer quils peuvent, sils le
souhaitent, vous retourner un coupon-rponse pour recevoir un ou
plusieurs livres en remplacement de ceux qui seraient ventuelle-
ment dfectueux. Vous devez rechercher le nom du client partir des
Figure 5.108 : Laffichage de la requte en mode Cration
359 5.6. Cas pratique
lignes de factures de la table Factures. Le livre dfectueux est identi-
par son nom : Freebox.
Noubliez pas le schma des relations de la fentre Relations qui
permet de connatre les tables intervenant dans la requte. Suivez le
cheminement entre le nom du client que vous recherchez et le nom
du produit que vous connaissez. Vous devez traverser les tables
Contacts, Factures, Facturelignes et Livres. Toutes ces tables doivent
donc tre prsentes sur la liste des tables de la requte, mme si
seuls les champs des tables Contacts et Livres sont utiliss. Les
champs des tables Factures et Facturelignes doivent tre affichs car
celles-ci matrialisent le cheminement de la relation entre la table
des clients et celle des produits sur lesquels la requte va sappuyer
pour tablir ses jointures.
Vous allez crer la requte en mode Cration.
1 Cliquez sur longlet Crer puis sur le bouton Cration de requte du
groupe Macros et code. Sous longlet Table de la bote de dialogue
Afficher la table, ajoutez les tables Contacts, Factures, Facturelignes
et Livres.
Figure 5.109 : Les quatre tables, visualises dans la fentre Relations
Figure 5.110 : Lajout des quatre tables dans la
requte
360 5. Extraire des donnes
Longlet Requte1 saffiche avec les tables choisies prcdemment.
2 Enregistrez la requte sous le nom Livredfaut.
3 Double-cliquez sur les champs nom, adresse, cp et ville depuis la
table Contacts, ainsi que sur le champ titre depuis la table Livres,
an de les insrer dans la ligne Champ. Dans la ligne Critres de la
colonne titre, saisissez le titre du livre qui a un dfaut : Freebox.
Lorthographe est importante. Access ajoutera automatiquement des
guillemets qui encadreront les valeurs aprs validation de la zone,
lorsque vous appuierez sur la touche [].
4 Visualisez le rsultat de la requte en cliquant sur le bouton Affi-
chage.
5 Enregistrez la requte. Retournez en mode Cration en cliquant
sur le bouton Affichage.
Figure 5.111 : La requte
daffichage des clients
ayant reu un livre
dfectueux
Figure 5.112 : Le rsultat de
la requte daffichage des
clients ayant reu un livre
dfectueux
361 5.6. Cas pratique
ces clients, extraits par la requte, vous souhaitez dsormais
ajouter ceux qui ont achet un livre pour lequel une campagne de
communication a t lance simultanment dans la presse et par
radio ainsi que les clients dont le nom commence par la lettre M et
qui ont achet un livre pour lequel une campagne de communication
a t lance, la tlvision uniquement.
Pour mieux apprhender cette phrase, traduisez-la en pseudo-
langage : (titre = Freebox) OU (presse = VRAI ET radio = VRAI ET
tlvision = FAUX) OU (premire lettre du nom du contact = M ET
presse = FAUX ET radio = FAUX ET tlvision = VRAI).
6 Enregistrez la requte prcdente en mode Cration sous le nom
Livrescommunication.
7 Ajoutez la table Communication la liste des tables en cliquant sur
le bouton Afficher la table du groupe Paramtrage de requte de
longlet Outils de requte/Crer. Sous longlet Table de la bote de
dialogue Afficher la table, ajoutez la table Communication.
8 Supprimez la jointure cre tort par Access si celle-ci apparat
entre les tables Communication et Facturesligne (Access trace en
effet des jointures entre des champs portant des noms identiques,
ici nolivre). Conservez celle tablie entre les tables Livres et Com-
munication.
ce stade, vous serez certainement surpris, si vous avez la curiosit
de visualiser le rsultat de la requte en cliquant sur le bouton
Affichage du groupe Rsultats de longlet Outils de requte/Crer.
Vous constaterez que les clients ayant achet le livre Freebox ne sont
plus affichs, alors quils existent dans la base de donnes.
Ce problme est inhrent au fait quAccess applique par dfaut le
premier type de jointure, cest--dire la jointure interne, entre les
tables. Cette jointure naffiche que les enregistrements des tables
mis en relation par un champ identique. Or, aucun plan de commu-
nication nayant t dvelopp pour le livre dont le titre est Freebox,
aucune ligne de cette table nest restitue par la requte dans la
feuille de donnes.
Vous allez donc modier le type de jointure entre les tables Livres et
Communication.
9 En mode Cration, double-cliquez sur la jointure entre les tables
Livres et Communication. Dans la bote de dialogue Proprits de la
jointure, choisissez le type de jointure 2, puis cliquez sur le bouton
OK.
362 5. Extraire des donnes
En mode Cration, la jointure est traduite par une che allant de la
table Livres vers la table Communication.
Vous allez maintenant traduire la condition suivante : les contacts qui
ont achet un livre pour lequel une campagne de communication a
t lance simultanment dans la presse et par radio.
10 En mode Cration, ajoutez dans la ligne Champ de la grille de
cration les champs radio, presse et television de la table Commu-
nication. Dans la ligne Ou des colonnes radio et presse, saisissez
Oui. Enn, saisissez Non dans la colonne television de la mme
ligne.
Il vous reste traduire la condition suivante : les contacts dont le
nom commence par la lettre M et qui ont achet un livre pour lequel
une campagne de communication a t lance, la tlvision uni-
quement.
11 Dans la ligne situe en dessous de la ligne Ou, saisissez Comme "M*"
dans la colonne nom. Dans la mme ligne, saisissez Oui la
colonne television, puis Non dans les colonnes radio et presse.
12 Visualisez le rsultat de la requte en cliquant sur le bouton Affi-
chage.
En consultant les donnes en mode Feuille de donnes, vous cons-
tatez que la requte rpte plusieurs lignes lidentique. Un regrou-
pement des donnes sur les coordonnes du contact et le titre du
livre apportera une solution ce problme.
13 Retournez en mode Cration de la requte. Pour raliser un re-
groupement, cliquez sur le bouton Totaux du groupe Afficher/
Masquer de longlet Outils de requte/Crer. la ligne Opration
choisissez Premier sur la liste des colonnes radio, presse et televi-
sion an dliminer le regroupement sur ces trois champs.
Figure 5.113 : La modication de type de jointure
363 5.6. Cas pratique
Les colonnes radio, presse et television qui vous ont jusqualors
permis de vrier les rsultats obtenus nont plus de raison dappa-
ratre dans la feuille de donnes. Vous allez les masquer.
14 Dcochez la case Afficher des colonnes radio, presse et television.
15 Visualisez le rsultat de la requte en cliquant sur le bouton Affi-
chage.
16 Fermez et enregistrez la requte.
Crer une requte utilisant des totaux
Lobjectif est maintenant de calculer le montant total hors taxe de
chacune des factures. Une facture pouvant contenir plusieurs lignes,
vous devrez travailler en deux tapes. Dans la premire, vous calcu-
Figure 5.114 : Le regroupement est paramtr dans la requte
Figure 5.115 : Ces trois colonnes seront masques dans la feuille de donnes
364 5. Extraire des donnes
lerez le montant hors taxe de chacune des lignes. Vous calculerez
enn le montant total hors taxe de chaque facture.
La table Facturelignes contient les livres et les quantits de livres de
chaque facture. Nulle part na t calcul le montant de la ligne,
cest--dire le prix unitaire du livre multipli par la quantit de livres.
Calculez prsent cette valeur pour chaque ligne de facture au
moyen de champs calculs.
Noubliez pas le schma des relations de la fentre Relations. Il
montre que le prix dun livre se trouve dans la table Livres alors que
la quantit est stocke dans la table Facturelignes.
Vous allez crer une nouvelle requte en mode Cration, nomme
Calcul-ligneprixHT, qui va chercher toutes les lignes de la facture et
calculer le prix unitaire du livre achet multipli par la quantit
achete.
1 Cliquez sur longlet Crer puis sur le bouton Cration de requte du
groupe Macros et code. Dans la bote de dialogue Afficher la table
de la nouvelle requte, ajoutez les tables Livres et Facturelignes.
2 Dans la ligne Champ, affichez le champ nofacture de la table Factu-
relignes, puis le champ nolivre de la table Livres.
An dviter toute erreur dans la syntaxe du calcul du produit (que
vous pourriez saisir directement), utilisez le Gnrateur dexpres-
sion.
Figure 5.116 : Les deux tables
utilises dans la requte
365 5.6. Cas pratique
3 Placez le curseur dans la troisime colonne de la
ligne Champ. Affichez le Gnrateur dexpression
par un clic sur le bouton Gnrateur du groupe Paramtrage de
requte de longlet Outils de requte/Crer.
4 Dans la bote de dialogue du Gnrateur dexpression, dveloppez
llment dexpression Facturation livres5.accdb de la liste de gau-
che en cliquant sur le symbole + puis double-cliquez sur llment
dexpression Tables, slectionnez la table Facturelignes puis
double-cliquez sur le champ quantite dans la liste centrale. Saisis-
sez le caractre * puis slectionnez la table Livres de la liste des
lments dexpression et double-cliquez sur le champ prixHT de la
table Livres pour lajouter la formule dans la zone ddition.
5 Cliquez sur le bouton OK pour fermer le Gnrateur dexpression.
6 Dans longlet de cration de la requte, validez la troisime co-
lonne en cliquant dans une autre colonne.
La ligne champ de la troisime colonne contient donc la valeur
suivante :
Expr1: [Facturelignes]![quantite]*[Livres]![prixHT]
Figure 5.117 : Le calcul du produit dans le Gnrateur dexpression
Figure 5.118 : La troisime colonne contient maintenant le champ calcul du total hors taxe de la
ligne de facture
366 5. Extraire des donnes
Voyez les points de syntaxe importants de cette formule :
Expr1 dnit le nom de len-tte de la troisime colonne du rsultat
de la requte ;
le deux-points correspond la mention AS que vous avez vue dans
la partie traitant de SQL. Il permet daffecter un nom la colonne ;
remarquez la syntaxe utilise dans le calcul : un champ doit tre
prcd du nom de sa table et dun point dexclamation. Les
crochets encadrent les noms des tables et des champs ;
la ligne Table de cette colonne ne contient pas de table puisque le
calcul emploie des champs de plusieurs tables.
Le nom de len-tte de colonne ntant gure signicatif, vous allez le
renommer :
7 Remplacez Expr1 par lexpression Ligne Prix HT.
8 Visualisez le rsultat.
9 Enregistrez la requte sous le nom CalculligneprixHT.
Il reste dnir le montant total par facture. Vous avez vu, lors de la
cration de la base de donnes, quune facture pouvait avoir plu-
sieurs lignes de facture stockes dans la table Facturelignes. Dans le
rsultat de la requte prcdente, il apparat ainsi que plusieurs
numros de factures sont rpts plusieurs fois, chaque ligne cor-
respondant aux diffrents produits achets. Pour calculer le montant
factur pour chaque facture, vous allez effectuer un regroupement
puis une somme.
10 Affichez la requte cre prcdemment en mode Cration, puis
enregistrez-la sous le nom CalculfacturetotalHT.
Figure 5.119 : La modication du libell de len-tte de la troisime colonne
Figure 5.120 : Le rsultat de
la requte calculant le prix
HT pour chaque ligne de
facture
367 5.6. Cas pratique
Vous allez supprimer la colonne nolivre de la requte ; elle ne vous
sera plus utile.
11 Cliquez sur len-tte de la colonne nolivre.
Une fois slectionne, la colonne apparat en vido inverse.
12 Appuyez sur la touche [Suppr].
13 Renommez la deuxime colonne Ligne Prix HT en Total HT.
14 Pour raliser un regroupement, cliquez sur le bouton Totaux du
groupe Afficher/Masquer de longlet Outils de requte/Crer.
La ligne Opration est affiche dans la grille de cration.
15 Dans la liste, choisissez la fonction Somme comme opration de la
colonne Total HT.
16 Visualisez le rsultat.
Figure 5.121 : La requte effectuant la somme des lignes de facture
368 5. Extraire des donnes
17 Fermez et enregistrez la requte.
Crer une requte action
Compliquons quelque peu les choses en imaginant que le prix uni-
taire de tous les livres augmente de 1 %. Cette opration de mise
jour des donnes va se rvler fastidieuse et les risques derreurs
seront importants, moins dutiliser une requte Mise jour.
1 Crez une nouvelle requte de slection en cliquant sur longlet
Crer puis sur le bouton Cration de requte du groupe Macros et
code. Dans la bote de dialogue Afficher la table de la nouvelle
requte, ajoutez la table Livres sur la liste des tables. Dans la ligne
Champ, glissez le champ prixHT dans la premire colonne. Enre-
gistrez la requte sous le nom MajPrixLivres.
2 Cliquez sur le bouton Mise jour du groupe Paramtrage de
requte de longlet Outils de requte/Crer.
3 Dans la ligne Mise jour, saisissez la formule daugmentation
suivante :
[Livres]![prixHT]+([Livres]![prixHT]*0,01)
Figure 5.122 : Le rsultat de la
requte effectuant le total hors
taxe pour chaque facture
369 5.6. Cas pratique
Cette ligne peut galement tre gnre depuis le Gnrateur dex-
pression activ par le bouton Gnrateur du groupe Paramtrage de
requte de longlet Outils de requte/Crer.
4 Excutez la requte en cliquant sur le bouton Excuter du groupe
Rsultats.
5 Lorsque Access vous demande conrmation avant de mettre
jour le ou les enregistrements de la table Livres, cliquez sur OK.
6 Fermez et enregistrez la requte. Vriez que les prix des produits
ont t augments dans la table Livres.
Utiliser un paramtre dans la requte
La dernire requte utilise une constante. Imaginez que les prix des
livres augmentent priodiquement avec des taux diffrents. Il serait
alors plus pratique de paramtrer la dernire requte MajPrix-Livres,
an quelle demande, lorsquelle est excute, le pourcentage daug-
mentation.
1 Ouvrez la requte MajPrix-Livres en mode Cration. Cliquez
sur le bouton Paramtres du groupe Afficher/Masquer de
longlet Outils de requte/Crer.
2 Dans la bote de dialogue Paramtres de la requte, saisissez
Augmentation dans la premire cellule de la colonne Paramtre,
slectionnez le type de donnes Rel simple dans la liste pour
indiquer le type de donne du paramtre. Fermez la bote de
dialogue en utilisant le bouton OK.
Figure 5.123 : Ici, la formule est crite depuis le Gnrateur dexpression
370 5. Extraire des donnes
Le calcul du prix doit tre modi dans la fentre de cration de la
requte.
3 Sur la ligne Mise jour, remplacez dans lexpression la valeur 0,01
par [Augmentation]. Noubliez pas les crochets pour indiquer
Access quil sagit dune variable et non dune chane de caract-
res.
4 Excutez la requte en cliquant sur le bouton Excuter du groupe
Rsultats.
5 Saisissez laugmentation dans la bote de dialogue Entrer la valeur
de paramtre, par exemple 0,03 pour 3 %. Cliquez sur OK.
Access demande conrmation de la mise jour des enregistrements
de la table.
Figure 5.124 : La dnition du paramtre de la requte
Figure 5.125 :
Laugmentation est dnie
en tant que paramtre dans
la requte
Figure 5.126 : La saisie du
paramtre lors de
lexcution de la requte
371 5.6. Cas pratique
6 Cliquez sur OK pour continuer. Fermez et enregistrez la requte
sous le nom MajPrixLivresParamtre.
7 Vriez que les prix des livres sont augments de 3 %dans la table
Livres.
Crer une liste de choix avec requte
Vous allez rapidement vous rendre compte que la saisie de factures
dans la table Factures sera trs longue si vous devez, chaque fois,
rechercher le numro de client dans la table Contacts. Pour rendre la
saisie plus agrable, vous pouvez crer une liste de choix sur le
champ nocontact de la table Factures. Cette liste affichera les champs
nocontact, nom et societe de la table Contacts. Le contenu (ou la
source de donnes) de cette liste de choix sera obtenu par lexcu-
tion dune requte.
1 Ouvrez la table Factures en mode Cration et placez-vous sur le
champ nocontact. Sous longlet Liste de choix, placez-vous dans la
ligne Afficher le contrle et slectionnez Zone de liste droulante.
Dans la ligne Origine source, conservez Table/Requte. Dans la ligne
Contenu, cliquez sur les trois petits points pour lancer le Gnra-
teur de requte qui vous permettra de crer une requte, source
de la liste.
Figure 5.127 : La requte qui va tre saisie permettra dafficher la liste des contacts
372 5. Extraire des donnes
2 Dans la bote de dialogue Afficher la table, slectionnez la table
Contacts, cliquez sur le bouton Ajouter puis fermez la bote de
dialogue.
Longlet Factures : Gnrateur de requte saffiche. Il renferme la table
Contacts.
3 Dans la ligne Champ, ajoutez nocontact, nom et societe. Affectez le
tri croissant la colonne nom en choisissant Croissant sur la liste
de la ligne Tri.
4 Fermez le Gnrateur de requte et enregistrez les modications
apportes.
De retour en mode Cration de la table, sous longlet Liste de choix du
champ nocontact, le Gnrateur de requte a complt la ligne
Contenu par le code SQL de la requte.
5 Modiez la ligne Nbre colonnes en y saisissant la valeur 3.
Il sagit du nombre de colonnes afficher sur la liste. Vous voulez voir
apparatre le numro du contact (colonne nocontact de la requte), le
nom du contact (colonne nom de la requte) et le nom de sa socit
(colonne societe de la requte).
Figure 5.128 : La cration de la requte qui sera la source de la liste de choix
373 5.6. Cas pratique
La proprit Colonne lie
Lorsquun champ utilise une liste comme origine des donnes et que cette
liste contient plusieurs colonnes, la proprit Colonne lie permet de dnir
quelle colonne sera crite dans le champ. Il sera ainsi possible, par exemple,
de faire apparatre sur une liste plusieurs colonnes pour faciliter la lecture des
donnes, mais de ne stocker dans le champ que la cl primaire de la table
affiche dans la requte.
6 Affichez la table en mode Feuille de donnes et cliquez dans la
colonne nocontact pour visualiser le rsultat. Nhsitez pas
agrandir la largeur de la colonne nocontact pour visualiser les trois
colonnes sur la liste.
Figure 5.129 : Une requte est utilise comme source de donnes dune liste
Figure 5.130 : Le choix dun client sur la liste de choix de la colonne nocontact dans la table Factures
en mode Feuille de donnes
374 5. Extraire des donnes
Vous pouvez amliorer la prsentation de votre liste : le numro de
client napporte rien la saisie, bien au contraire, il lalourdit. Seul le
nom du client est signicatif.
7 Retournez en mode Cration de table de la table Factures. Sous
longlet Liste de choix du champ nocontact, dans la ligne Largeurs
colonnes, saisissez la valeur 0;3.
La premire colonne sera ainsi masque mais non supprime. Elle
est en effet indispensable car le champ nocontact quelle contient est
la base de la relation. La deuxime colonne aura une largeur de
3 cm.
Largeurs de colonnes sur une liste
Si la largeur dune colonne est 0, la colonne est masque. Lorsque plu-
sieurs largeurs sont dnies, le point-virgule est utilis comme sparateur. Si
des largeurs ne sont pas dnies, Access optimise ces largeurs en fonction de
lespace qui leur est allou au moment de laffichage. Par exemple, la valeur
5;;0;2 traduira une premire colonne de 5 cm, une deuxime utilisant une
largeur par dfaut, une troisime colonne masque et une quatrime colonne
de 2 cm.
Dans le champ nocontact de la table Factures, la premire colonne, contenant
le numro du contact, est masque (valeur 0), la deuxime colonne affichant
le nom du contact aura une largeur de 3 cm. La largeur de la troisime
colonne, affichant le nom de la socit, nest pas prcise : elle est donc
considre comme omise et prendra une largeur par dfaut.
Voici le rsultat de la liste dans la table Factures en mode Feuille de
donnes :
Figure 5.131 : La dnition de la largeur de la premire et de la deuxime colonne de la liste
375 5.6. Cas pratique
8 Fermez et enregistrez la table.
Il est conseill dutiliser les requtes comme sources de donnes sur
les listes de choix pour une saisie plus confortable, lorsquil faut
renseigner un champ utilisant les valeurs dune autre table.
Ces listes de choix vous faciliteront la tche dans les formulaires,
qui seront abords au chapitre 6 Amliorer la saisie.
Pour simplier votre travail, des listes du mme type ont t ajoutes
dans diffrentes tables de la base que vous pouvez tlcharger
depuis Internet. Voici la liste de ces tables :
j la table Livres utilise une liste de choix pour la slection du champ
notva ;
Figure 5.132 : La slection
du nomde client dans la
liste
Figure 5.133 : Dans la table
Livres, le choix du numro
de TVAse fera sur une liste
affichant les taux de TVAde
la table Taxes
376 5. Extraire des donnes
j la table Communication utilise une liste de choix pour la slection
du champ nolivre ;
j la table Jonction-Auteurs-Livres utilise des listes de choix pour la
slection des champs noauteur et nolivre.
Figure 5.134 : Dans la table Facturelignes, le choix du numro de livre se fera sur une liste affichant
les noms des livres de la table Livres
Figure 5.135 : Dans la table Communication, le choix du numro de livre se fera sur une liste affichant
les livres de la table Livres
Figure 5.136 : Dans la table Jonction-Auteurs-Livres, le choix du numro de lauteur se fera sur une
liste affichant les noms de la table Auteurs
377 5.6. Cas pratique
Tlchargement de la base de donnes
Vous retrouverez la base de donnes nalise Facturation livres5-
nale.accdb, utilise dans ce chapitre, sur le site de Micro Application (www
.microapp.com) dans le dossier Chapitre05.
Figure 5.137 : Dans la table Jonction-Auteurs-Livres, le choix du numro du livre se fera sur une liste
affichant les noms de la table Livres
378 5. Extraire des donnes
C
H
A
P
I
T
R
E
6
AMLIORER
LASAISIE
Comprendre le rle des formulaires ................................................................ 381
Le modle conceptuel des objets des formulaires .................................... 382
Crer des formulaires simples ............................................................................ 383
Crer des formulaires imbriqus ....................................................................... 424
Cas pratique ................................................................................................................. 430
379
Les formulaires sont des objets trs utiles pour diter les donnes
des tables ou des requtes. Puisquil est possible dy insrer dautres
objets tels que des boutons, ils peuvent galement lancer dautres
formulaires ou des tats, mais la fonction principale des formulaires
reste de faciliter la saisie des donnes et de se substituer au mode
Feuille de donnes qui nest plus utilis que par le dveloppeur de
lapplication pour tester la cohrence des donnes de la base. Un
autre emploi des formulaires consiste en faire des "tableaux de
bord", forms principalement de boutons permettant de lancer
dautres formulaires, des tats, dautres logiciels ou encore de quit-
ter lapplication.
Certaines catgories de formulaires dAccess utilisent dsormais un
affichage de type Tableau crois dynamique ou encore Graphique
crois dynamique, permettant lutilisateur de modier la prsenta-
tion des donnes pendant lexcution du formulaire an dobtenir
une disposition optimale des informations.
6.1. Comprendre le rle des formulaires
Trs faciles personnaliser, ils constituent la partie visible de votre
application, celle qui donne (ou non) envie aux utilisateurs dem-
ployer lapplicatif, remplaant avantageusement le quelque peu
triste mode Feuille de donnes. Un formulaire adapt est un lment
important du succs de votre application. Ainsi, un formulaire de
saisie de donnes comptables naura pas le mme aspect que celui
dun logiciel ducatif ou que celui dun jeu. Pourtant, tous trois
entrent dans la mme famille dobjets.
Veillez toutefois ne dvelopper vos formulaires que lorsque les
tables, les relations et les requtes ont t correctement construites,
sinon les formulaires ne masqueront quun court instant seulement
les imperfections de la base de donnes.
La mthode la plus conviviale pour crer des formulaires consiste
utiliser les Assistants dAccess, mais ces derniers ne permettent pas,
le plus souvent, davoir accs toutes les proprits de lobjet. Il est
donc ncessaire demployer le mode Cration pour aller plus loin
dans la comprhension des formulaires.
Avant de dmarrer, vous allez dcouvrir les principaux concepts qui
rgissent les formulaires.
381 6.1. Comprendre le rle des formulaires
6.2. Le modle conceptuel des objets
des formulaires
Un formulaire est un objet conteneur. Vous connaissez dj de gros
objets conteneurs : les tables et les requtes.
Les formulaires contiennent des objets spciquement adapts la
saisie et la consultation des donnes : zones de texte, boutons
dactions, listes droulantes, cases cocher, boutons radio, etc. Cha-
que objet peut tre personnalis par ses proprits. Des vne-
ments peuvent dclencher des actions (ou mthodes) dans le formu-
laire. Par exemple, lorsquun bouton est activ, lvnement Clic peut
dclencher la mthode Quitter lapplication.
Revenons encore une fois sur la notion de conteneurs, de sous-
conteneurs, de proprits, de mthodes et dvnements. Comparez
un formulaire une voiture. Mme si lanalogie peut paratre un peu
droutante, force est de constater quune voiture est bien un conte-
neur. En effet, elle renferme de nombreux objets : des siges, un
moteur, des roues, un volant, etc. Chaque objet a des caractristi-
ques qui lui sont propres. Certaines de ces caractristiques sont
communes tous les objets (comme la couleur), dautres sont sp-
ciques des catgories dobjets (comme la pression des pneuma-
tiques). Si une voiture tait un formulaire, ses caractristiques pren-
draient lappellation de "proprits". Intressez-vous maintenant aux
actions que va pouvoir excuter votre vhicule : une voiture est
capable de raliser diffrentes actions ; elle peut acclrer, freiner,
tourner, reculer, etc. Dans Access, ces actions se nomment des "m-
thodes".
Il est rare de voir une voiture dmarrer toute seule. De mme, la
voiture tourne si et seulement si le conducteur oriente le volant dans
le sens du virage. Sur un vhicule, ces actions sont respectivement
dclenches par les vnements Tour de cl de contact et Orientation
du volant. Sur Access, le terme "vnement" est galement utilis. Il
est synonyme de "dclencheur". Les actions dclenches sont nom-
mes "mthodes". Lorsque le conducteur appuie sur la pdale dac-
clration, il provoque un vnement qui va dclencher une action
(la voiture va acclrer). De mme, lorsquil appuie sur la pdale de
frein, il dclenche la mthode Freinage. Dans Access, des vne-
ments sont galement provoqus en permanence : lorsquon clique
sur un bouton OK ou un bouton Annuler, quand une zone est survo-
le avec le pointeur de la souris, lorsque la touche [] ou la touche
382 6. Amliorer la saisie
[chap] sont presses, ces vnements dclenchent des mthodes (le
terme "mthodes" est synonyme de "programmes").
Encore un mot sur une notion complmentaire, mais qui ne sera pas
dveloppe ici : le concept de familles dobjets (nous parlerons de
"classes"). Revenons notre voiture : elle appartient une catgorie
(ou modle). Dans un modle donn, vous trouverez des vhicules
rouges, de grand tourisme, des diesels, des versions turbo injec-
tion, etc. En programmation, cette notion de catgorie correspond
une classe. Si vous allez plus loin avec Access (il vous faudra passer
la programmation avance), vous dcouvrirez quil est possible de
dvelopper des modules de programmation en langage Visual Basic.
Ce langage vous permettra de raliser tous les types de traitements
sans restriction. Il vous sera alors possible dutiliser cette trs puis-
sante notion de classe. Prenez un exemple : imaginez que vous
dveloppez plusieurs formulaires dans la mme application. Ces
formulaires utilisent tous un fond rouge. Lorsque vous prsentez
votre application, les utilisateurs vous informent quils dtestent le
rouge. Vous allez devoir reprendre tous vos formulaires et modier
les couleurs de chacun dentre eux. Si vous avez utilis une classe, il
vous suffira de modier la proprit Couleur du formulaire dans la
classe. Tous les formulaires issus de cette classe seront automati-
quement mis jour, cest--dire que leur couleur de fond sera modi-
e. Nous parlerons dans ce cas dun "hritage" ou encore de "poly-
morphisme".
6.3. Crer des formulaires simples
Principalement, un formulaire va donc vous servir afficher le
contenu des tables. Il existe trois faons de crer un formulaire :
j utiliser un Assistant ;
j avoir recours la fonction de cration de formulaire rapide ;
j raliser le formulaire manuellement.
Utiliser lAssistant
La fonction principale dun formulaire est dafficher les champs des
tables ou des requtes. Pratique et efficace, lAssistant Formulaire
permet de concevoir des formulaires simples de saisie de donnes
an de mettre jour une table. Procdez ainsi :
1 Cliquez sur une table ou une requte dans le volet de navigation.
383 6.3. Crer des formulaires simples
2 Cliquez sur longlet Crer puis sur le bouton Assistant Formulaire
du groupe Formulaires.
La bote de dialogue Assistant Formulaire apparat. La table ou la
requte choisie prcdemment dans le volet de navigation est slec-
tionne dans la zone Tables/Requtes. Vous pouvez modier ce choix
dans cette zone.
3 la premire tape de lAssistant, cliquez sur le bouton >> pour
dplacer tous les champs de la colonne Champs disponibles dans
la colonne Champs slectionns. Cliquez sur le bouton Suivant.
Figure 6.1 : LAssistant Formulaire est choisi dans le groupe Formulaires
Figure 6.2 : La slection des champs
384 6. Amliorer la saisie
Utiliser plusieurs tables dans un formulaire
Pour utiliser des champs issus de tables ou de requtes diffrentes, rp-
tez lopration de slection des tables et des requtes dans la zone Tables/
Requtes et ajoutez les champs de votre choix dans la liste champs slection-
ns de lAssistant. Cliquez alors sur le bouton Suivant.
La deuxime tape permet de spcier la prsentation des champs
dans le formulaire parmi plusieurs propositions :
Loption Colonne simple permet de disposer les zones de texte les
unes en dessous des autres avec une tiquette sur leur gauche.
Loption Tabulaire permet de disposer les zones de texte sous la
forme dun tableau.
Loption Feuille de donne permet dafficher les enregistrements en
mode Feuille de donnes.
Loption Justi permet de disposer les zones de texte les unes
ct des autres.
Zone de texte et tiquette
Une zone de texte est un objet qui permet dditer le contenu dun champ
dune table ou dune requte.
Une tiquette est un objet permettant dafficher un texte informatif dans un
formulaire ou un tat.
4 Choisissez, par exemple, loption Colonne simple, puis cliquez sur
le bouton Suivant (voir Figure 6.6).
La dernire tape de lAssistant vous permet de dnir laction
effectuer la n de son excution :
Loption Ouvrir le formulaire pour afficher ou entrer des infos permet
dafficher le formulaire en mode Formulaire an dy saisir des
donnes.
Figure 6.3 : Ce bouton permet
dajouter le champ slectionn
Figure 6.4 : Ce bouton supprime
le champ slectionn sur la liste Champs slectionns
Figure 6.5 : Ce bouton supprime
tous les champs de la liste Champs slectionns
385 6.3. Crer des formulaires simples
Loption Modier la structure du formulaire permet dafficher la
structure du formulaire en mode Cration.
5 Choisissez loption Ouvrir le formulaire pour afficher ou entrer des
infos. Dans la zone Quel titre souhaitez-vous pour votre formulaire ?,
modiez ventuellement le nom de la table utilise par le formu-
laire quAccess propose par dfaut. Conservez la premire option
coche, puis cliquez sur le bouton Terminer.
la fermeture de lAssistant, le formulaire est automatiquement
ouvert en mode Formulaire. Lutilisateur peut ds lors ajouter, modi-
er ou encore supprimer un enregistrement.
Figure 6.6 : Le choix de la disposition des zones de texte dans le formulaire
Figure 6.7 : Les deux options proposes la dernire tape de lAssistant
386 6. Amliorer la saisie
Dans le volet de navigation, le formulaire cr avec lAssistant appa-
rat maintenant dans la liste des formulaires.
6 Fermez le formulaire.
Crer un formulaire sans lAssistant
Voyez maintenant comment crer un formulaire rapidement ou en
mode Cration.
Crer un formulaire rapidement
Cette mthode est la plus rapide pour crer un formulaire :
1 Cliquez sur une table ou une requte dans le volet de navigation.
2 Cliquez sur longlet Crer puis choisissez lune des options de
cration suivantes, proposes par les boutons du groupe Formu-
laires :
Le bouton Formulaire affiche des zones de texte corres-
pondant aux champs de la table ou de la requte choisie
prcdemment, les unes en dessous des autres avec
une tiquette sur leur gauche (le formulaire est alors affich en
mode Page). Les enregistrements de la table sont affichs un
par un. Les dplacements dans les enregistrements sont possi-
bles au moyen de boutons de navigation, en bas de la fentre.
Sous-formulaire
Un sous formulaire est un formulaire imbriqu dans un formulaire (cette
notion sera dveloppe plus loin). Si la table choisie est en relation avec une
autre table reprsentant le cot plusieurs de la relation, un sous-formulaire
est automatiquement cr dans le formulaire an dafficher en mode Feuille
de donnes les donnes de la table associe.
Figure 6.8 : Laffichage du formulaire en mode Formulaire
387 6.3. Crer des formulaires simples
Mode Cration, mode Formulaire et mode Page
Comme cela est le cas pour la cration des tables ou des requtes, Ac-
cess 2007 offre lutilisateur un mode Cration et un mode Formulaire,
permettant respectivement de crer le formulaire et de lexcuter.
Le mode Page, quant lui, est un mode intermdiaire, intuitif, dans lequel il
vous est permis de modier la disposition des objets du formulaire tout en
consultant les donnes qui y sont affiches. Il y est ainsi possible, par exem-
ple, de dplacer les objets du formulaire ou den modier les proprits.
Il ne vous est toutefois pas possible deffectuer toutes les oprations de
cration en mode Page et Access affiche le cas chant des messages signi-
ant que le passage en mode Cration est ncessaire.
Le bouton Plus de formulaires puis Plusieurs lments affiche un
tableau compos de zones de texte dans lequel les enregistre-
ments sont prsents en lignes. Sil offre des similitudes avec le
mode Feuille de donnes (qui permet galement de visualiser en
ligne les enregistrements dune table), le formulaire gnr ici est
bien plus paramtrable. Il est en effet possible daccder aux
proprits des objets qui le composent (an, par exemple, dy
changer les couleurs ou les polices de caractres utilises). Le
formulaire est affich en mode Page.
Figure 6.9 : Un formulaire
gnr avec le bouton
Formulaire
Figure 6.10 : Un formulaire
gnr avec le menu
Plusieurs lments du
bouton Plus de formulaires
388 6. Amliorer la saisie
Le bouton Plus de formulaires puis Formulaire double affichage.
Cette nouvelle fonctionnalit dAccess permet de visualiser simul-
tanment les donnes dans un formulaire identique celui gnr
lorsque le bouton Formulaire est utilis ainsi que dans une feuille
de donnes. Les donnes sont modiables dans les deux parties
de lcran. Le formulaire est affich en mode Page.
Le bouton Plus de formulaires puis Feuille de donnes affiche les
donnes en mode Feuille de donnes.
Figure 6.11 : Un formulaire gnr avec le menu Formulaire double affichage du bouton Plus de
formulaires
Figure 6.12 : Un formulaire
gnr avec le menu Feuille
de donnes du bouton Plus
de formulaires
389 6.3. Crer des formulaires simples
Le bouton Plus de formulaires puis Tableau crois dynamique affiche
le formulaire en mode Tableau crois dynamique (cette fonction-
nalit ne peut tre exploite quavec certains types de donnes).
Le bouton Plus de formulaires puis Graphique crois dynamique
affiche le formulaire en mode Graphique crois dynamique (cette
fonctionnalit ne peut tre exploite quavec certains types de
donnes).
Crer un formulaire en mode Cration
Ne vous laissez pas abuser par lapparente simplicit avec laquelle le
premier formulaire a t cr. Un formulaire doit, dans la plupart des
cas, tre ralis manuellement, cest--dire partir dun formulaire
vierge, et des objets appels "contrles" doivent y tre ajouts.
1 Cliquez sur longlet Crer puis sur le bouton Cration de formulaire
du groupe Formulaires.
Le mode Cration du formulaire se caractrise par laffichage dun
onglet vierge intitul Formulaire1 et affichant une zone appele Dtail.
(voir Figure 6.14)
La premire tape consiste affecter la source de donnes au for-
mulaire vierge depuis le volet des proprits du formulaire.
Figure 6.13 : Le menu
Tableau crois dynamique
du bouton Plus de
formulaires
390 6. Amliorer la saisie
Source de donnes
Comme son nom lindique, la source de donnes reprsente lorigine des
donnes (une table ou une requte) qui seront affiches dans le formulaire.
2 Pour afficher le volet des proprits du formulaire, cliquez sur le
bouton Feuille des proprits du groupe Outils de longlet Outils de
cration de formulaire/Cration ou utilisez la combinaison des tou-
ches [Alt]+[].
Le volet des proprits du formulaire saffiche.
Figure 6.14 : Le formulaire en mode Cration
391 6.3. Crer des formulaires simples
Laffichage des proprits du formulaire dans le volet Feuille de proprits
Vriez que Formulaire est choisi dans la liste Type de slection propose
en haut du volet Feuille de proprits an de pouvoir diter les proprits du
formulaire et non celles dun autre objet.
3 Dans le volet des proprits du formulaire, choisissez longlet
Donnes puis slectionnez une table ou une requte dans la liste
propose de la ligne Source.
La proprit Source contient la source du formulaire. Dans lillustra-
tion suivante, la table Disques est la source du formulaire.
Figure 6.15 : Le volet des proprits du formulaire saffiche, en mode Cration, droite du formulaire
Figure 6.16 : Le choix de
lobjet dont les proprits
sont dites
Figure 6.17 : Laffectation
dune source de donnes au
formulaire
392 6. Amliorer la saisie
Le formulaire est, pour linstant, vierge. Le mode opratoire qui suit
montre comment crer rapidement des zones de texte et les tiquet-
tes informatives qui les accompagnent.
4 Cliquez sur le bouton Ajouter des champs existants du groupe
Outils de longlet Outils de cration de formulaire/Cration.
Le volet Liste de champs saffiche. Il prsente la liste des champs qui
dpend de la "source du formulaire" choisie prcdemment.
5 Slectionnez tous les champs de la zone Champs disponibles pour
cette vue du volet Liste des champs. Pour cela, placez-vous sur le
premier champ, maintenez la touche [Maj] enfonce et cliquez sur le
dernier champ. Maintenez le bouton de la souris enfonc et glissez
votre slection dans la zone Dtail du formulaire.
Lillustration qui suit montre le rsultat obtenu.
Figure 6.18 : Tous les champs de la table sont glisss dans le formulaire depuis le volet Liste de
champs
Figure 6.19 : Une zone de
texte et une tiquette ont
t cres dans le
formulaire pour chaque
champ de la table source
393 6.3. Crer des formulaires simples
Les champs sont affichs dans des objets, appels "contrles", cha-
cun accompagn dune tiquette.
Lobjet Etiquette est plac gauche dune zone de texte qui affiche la
valeur dun champ. Ltiquette informe lutilisateur de ce quil doit
saisir dans la zone. Les tiquettes utilisent par dfaut les valeurs des
proprits Lgende des champs, dnies dans la structure de la table
utilise. Si une lgende na pas t dnie, le nom du champ est
utilis.
Les zones de texte, quant elles, ont pour mission dafficher les
valeurs renfermes dans les champs de la table qui ont t glisss
prcdemment dans le formulaire. Vous pouvez vous en assurer en
double-cliquant sur lune des zones de texte. Son volet des propri-
ts saffiche. La proprit Source contrle, visible sous longlet
Donnes de la fentre, spcie le nom du champ utilis.
ce stade, le formulaire peut tre consult en mode Formulaire.
6 Cliquez sur le bouton Affichage de longlet Outils de
cration de formulaire/Cration.
Figure 6.20 : La proprit Source contrle de la zone de texte
Figure 6.21 : Le formulaire
est affich en mode
Formulaire
394 6. Amliorer la saisie
Les listes de choix
Si vous avez dni une liste de choix pour un champ lors de la cration de
la table, une zone de liste est cre automatiquement lorsque vous glissez le
champ dans le formulaire.
Crer un formulaire vierge
Une dernire mthode de cration dun formulaire, nomme "formu-
laire vierge", est propose par Access lorsque le nombre de champs
utiliss est peu important. Procdez ainsi :
1 Sous longlet Crer, dans le groupe Formulaires, cliquez
sur le bouton Formulaire vierge.
Access ouvre un formulaire vide en mode Page et affiche le volet
Liste de champs.
2 Dans le volet Liste de champs, cliquez sur le lien Afficher tous les
tableaux si aucune table ny est affiche.
3 Dans le volet Liste de champs, cliquez sur le signe +, gauche du
nom de la table de votre choix, an dafficher les champs quelle
renferme.
4 Double-cliquez sur le champ insrer dans le formulaire ou
glissez-le dans ce dernier.
Manipuler des donnes dans un formulaire
Le mode Formulaire met votre disposition tous les outils ncessai-
res des manipulations efficaces des donnes de la table, telles que
les dplacements, les suppressions, les ajouts ou encore les modi-
cations denregistrements.
Ouvrir un formulaire en mode Formulaire
Pour afficher un formulaire en mode Formulaire, utilisez lune des
mthodes suivantes :
Figure 6.22 : Linsertion de zones de texte dans le formulaire vierge depuis le volet Liste de champs
395 6.3. Crer des formulaires simples
j Dans la liste des objets du volet de navigation de la base de
donnes, double-cliquez sur le formulaire ou cliquez du bouton
droit sur celui-ci et choisissez Ouvrir dans le menu contextuel qui
apparat.
j Si le formulaire est ouvert en mode Cration, cliquez sur
le bouton Affichage de longlet Outils de cration de
formulaire/Cration.
j Si le formulaire est ouvert en mode Cration, cliquez du bouton
droit sur le nom de longlet du formulaire puis choisissez Mode
Formulaire dans le menu contextuel qui apparat.
j Si le formulaire est ouvert en mode Cration, vous pouvez gale-
ment cliquer sur le bouton Mode Formulaire prsent en bas et
droite de la fentre dAccess, dans la Barre dtat.
Voici les objets les plus signicatifs utiliss par les formulaires :
j Les tiquettes : ces zones donnent des indications lutilisateur.
Dans lillustration suivante, certaines (comme Thme musical) sont
les lgendes des champs dnies dans la structure de la table
utilise qui sont reprises, dautres reprennent le nom des champs
(comme nodisque).
j Les zones de texte : elles servent afficher, entrer ou modier
des donnes.
j Les listes droulantes : elles sont utilises pour faciliter la saisie
des donnes grce un choix parmi une liste dlments.
j Les boutons de navigation : ils autorisent des dplacements entre
les enregistrements de la table.
j Le bouton Nouvel enregistrement : il permet dajouter des enregis-
trements.
j La zone Rechercher : cette zone permet de saisir des donnes an
de les rechercher dans les champs des enregistrements (voir Fi-
gure 6.24).
Quitter le mode Formulaire
Pour quitter ce mode, cliquez sur le bouton Fermer symbolis par une
croix en haut et droite de longlet affichant le nom du formulaire ou cliquez
Figure 6.23 : Le bouton Mode Formulaire
396 6. Amliorer la saisie
du bouton droit sur le nom de cet onglet puis choisissez Fermer dans le
menu contextuel qui apparat. Vous pouvez galement utiliser les combi-
naisons de touches [Ctrl]+[W] ou [Ctrl]+[F4].
Ajouter un enregistrement
Vous allez apprendre ici ajouter un enregistrement dans un formu-
laire ouvert en mode Formulaire. Procdez ainsi :
1 Cliquez sur le bouton Nouvel enregistrement (vide), droite des
boutons de dplacement (encore appels "boutons de navigation"),
en bas de longlet du mode Formulaire.
Vous pouvez aussi cliquer sur le bouton Nouveau du groupe Enregis-
trements de longlet Accueil ou utiliser la combinaison de touches
[Ctrl]+[+].
Les zones de saisie prsentes dans le formulaire sont vierges. Vous
pouvez y saisir des donnes qui seront stockes dans la table utilise
par le formulaire.
Figure 6.24 : Les principaux composants dun formulaire en mode Formulaire
Figure 6.25 : Le bouton Nouvel enregistrement
(vide)
Figure 6.26 : Le bouton Nouveau du groupe
Enregistrements
397 6.3. Crer des formulaires simples
Les zones de saisie dj remplies
Des zones de saisie prsentes dans le formulaire peuvent ne pas tre
vides, notamment lorsque le type de donnes est NumroAuto et lorsquune
valeur par dfaut, un masque ou un format sont dnis.
2 Pour passer la zone de saisie suivante, utilisez la souris, la touche
[] ou la touche [].
3 Pour passer lenregistrement suivant depuis la dernire zone de
saisie, utilisez la touche [] ou la touche [].
Lenregistrement saisi est alors enregistr automatiquement lors du
passage lenregistrement suivant.
Ajouter un enregistrement dans un formulaire du type Plusieurs lments ou
Feuille de donnes
Si un affichage du type Plusieurs lments ou Feuille de donnes est utilis
dans le formulaire, lajout dun enregistrement peut galement tre effectu
par la saisie dans les cellules de la dernire ligne, laisse vide.
Modier des donnes
Pour modier les donnes dune zone de saisie en mode Formulaire,
cliquez dans la zone de saisie que vous souhaitez modier, puis
effectuez la modication des donnes.
Figure 6.27 : Lajout dun enregistrement depuis le mode Formulaire
398 6. Amliorer la saisie
Un symbole, reprsentant un crayon, est affich au dbut de la ligne
de lenregistrement en cours de modication.
Annuler des modifications dans la zone de saisie
Pour annuler des modications effectues dans la zone de saisie, alors que
ces modications nont pas encore t valides par un dplacement ou par
lemploi de la touche [], utilisez la touche [chap].
Gagner du temps la saisie en utilisant les donnes de lenregistrement
prcdent
Lors de lajout ou de la modication dune zone de saisie, il est possible de
reprendre les donnes qui sont contenues dans le mme champ de lenregis-
trement prcdent en utilisant la combinaison des touches [Ctrl]+['] (apostro-
phe).
Forcer lenregistrement dune zone de saisie
Lajout ou la modication de donnes dans la zone de
saisie sont effectives uniquement lorsque le point dinser-
tion est dplac sur une autre zone de saisie ou lorsque le formulaire est
ferm. Pour enregistrer les donnes des zones en cours de saisie ou de
modication sans avoir recours aux actions qui prcdent, cliquez sur le
bouton Enregistrer du groupe Enregistrements de longlet Accueil ou
utilisez la combinaison des touches [Maj]+[]. Il nest plus possible alors
dannuler la saisie ou la modication par la touche [chap].
Figure 6.28 : La modication dun
enregistrement
399 6.3. Crer des formulaires simples
Se dplacer dans les enregistrements au moyen
des boutons de dplacement
Vous pouvez vous dplacer entre les enregistrements affichs dans
un formulaire en mode Formulaire.
Les boutons de dplacement sont regroups dans la barre de navi-
gation, au bas de longlet du formulaire. Leur fonction est de permet-
tre des dplacements faciles entre les enregistrements de la table.
Ces boutons et la zone daffichage qui les accompagne permettent
respectivement les oprations suivantes :
j le dplacement sur le premier enregistrement de la table ;
j le dplacement sur lenregistrement prcdant lenregistrement
en cours ;
j laffichage du numro denregistrement en cours ;
j laffichage du nombre denregistrements ;
j le dplacement sur lenregistrement suivant lenregistrement en
cours ;
j le dplacement sur le dernier enregistrement de la table ;
j la cration dun nouvel enregistrement.
Atteindre un enregistrement
Pour atteindre un enregistrement, cliquez dans la zone daffichage du
numro denregistrement en cours.
Se dplacer au moyen des menus
Le bouton Atteindre du groupe Rechercher de longlet Accueil propose
des fonctionnalits analogues celles des boutons de la Barre de navigation
(Premier, Dernier, Suivant, Prcdent, Nouveau).
Figure 6.29 : Les boutons
de navigation
400 6. Amliorer la saisie
Supprimer un enregistrement
Le formulaire peut galement tre employ pour supprimer un en-
registrement dans la table quil utilise.
Pour supprimer un enregistrement de la table, en mode Formulaire,
utilisez la mthode suivante.
1 Affichez lenregistrement supprimer et cliquez sur son slecteur
plac gauche.
2 Cliquez sur le bouton Supprimer du groupe Enregistrements de
longlet Accueil.
Access affiche une bote de dialogue dans laquelle il vous est de-
mand de conrmer la suppression de lenregistrement.
3 Conrmez cette opration en cliquant sur le bouton Oui de la bote
de dialogue.
Figure 6.30 : Le bouton Atteindre du groupe Rechercher
Figure 6.31 : Le bouton Supprimer du groupe Enregistrements
401 6.3. Crer des formulaires simples
Access affiche les donnes de lenregistrement suivant. Si vous sup-
primez le dernier enregistrement, les zones de saisie vides dun
nouvel enregistrement sont affiches.
Supprimer rapidement un enregistrement
Slectionnez lenregistrement en cliquant sur son slecteur plac gau-
che, puis appuyez sur la touche [Suppr] du clavier.
Supprimer plusieurs enregistrements conscutifs
Vous pouvez supprimer plusieurs enregistrements conscutifs dans un
formulaire utilisant un affichage de type Plusieurs lments ou Feuille de
donnes. Vous ralisez cette suppression en une seule opration lorsque ce
type de formulaire est employ. Slectionnez pour cela le groupe de lignes
supprimer au moyen des slecteurs de lignes placs gauche, puis appuyez
sur la touche [Suppr] du clavier.
Supprimer des donnes dans des tables en relation
La suppression de donnes dans lune des tables ne doit pas tre effectue
intempestivement, sous peine de briser la cohrence des informations ren-
fermes dans la base de donnes. Lintgrit rfrentielle, si elle a t appli-
que, protge la base de donnes contre des suppressions non autorises.
Rechercher, remplacer, trier et ltrer des donnes
Les techniques employes sont identiques celles utilises dans le
mode Feuille de donnes employ pour afficher les donnes des
tables. Pensez utiliser les boutons des groupes Trier et ltrer et
Rechercher de longlet Accueil du mode Formulaire.
Reportez-vous pour cela au chapitre 2 Manipuler les donnes.
Figure 6.32 : Les groupes Trier et ltrer et Rechercher proposent des boutons permettant deffectuer
des actions de recherche, de remplacement, de tri et de ltrage
402 6. Amliorer la saisie
Modier les objets du formulaire en mode
Cration
Un formulaire peut tre personnalis en mode Cration.
Afficher la structure dun formulaire
Cette section dtaille les lments de linterface du mode Cration de
formulaire. Plusieurs techniques soffrent vous pour ouvrir un
formulaire dans ce mode :
j Dans la liste des objets du volet de navigation de la base de
donnes, cliquez du bouton droit sur le nom dun formulaire et
choisissez Mode Cration dans le menu contextuel qui apparat.
j Si le formulaire est ouvert en mode Formulaire ou en mode Page,
cliquez sur la che du bouton Affichage de longlet Outils de
cration de formulaire/Cration puis choisissez Mode Cration dans
le menu qui saffiche.
j Si le formulaire est ouvert en mode Formulaire ou en mode Page,
cliquez du bouton droit sur le nom de longlet du formulaire.
Choisissez Mode Cration dans le menu contextuel qui apparat.
j Si le formulaire est ouvert en mode Formulaire ou en mode Page,
vous pouvez galement cliquer sur le bouton Mode Cration pr-
sent en bas et droite de la fentre dAccess, dans la Barre dtat.
Linterface du mode Cration se compose principalement :
j de sections (dtail, en-tte et pied de formulaire, en-tte et pied de
page) ;
Figure 6.33 : Le bouton Affichage permet douvrir un formulaire en
mode Cration
Figure 6.34 : Le bouton Mode Cration
403 6.3. Crer des formulaires simples
j de contrles (tiquettes, zones de texte, listes droulantes, cases
cocher, etc.) ;
j de rgles (horizontale et verticale) ;
j du volet des proprits ;
j des onglets Outils de cration de formulaire/Cration et Outils de
cration de formulaire/Organiser.
Utiliser les sections du formulaire
Un formulaire se compose de cinq sections dont la principale est
Dtail. Elle est affiche la cration dun formulaire, en mode Cra-
tion.
j La section Dtail permet dafficher des contrles tels que des
tiquettes, des zones de texte ou encore des listes droulantes.
Elle ne peut pas tre supprime. Cette section est gnralement
rserve laffichage des donnes des tables et des requtes.
Figure 6.35 : Les principaux composants de la structure dun formulaire
Figure 6.36 : Linterface du mode Cration
404 6. Amliorer la saisie
j La section En-tte de formulaire apparat dans la partie suprieure
du formulaire. Elle est gnralement rserve laffichage dinfor-
mations communes aux donnes prsentes, comme le titre du
formulaire.
j La section Pied de formulaire apparat dans la partie infrieure du
formulaire. Comme la prcdente, elle est gnralement rserve
laffichage dinformations ou de boutons dont lusage est fait
pour lensemble des donnes prsentes, comme des boutons ou
des commentaires utiles pour lutilisation du formulaire.
Pour afficher ou masquer les sections En-tte de formulaire et Pied de
formulaire, suivez la procdure dcrite ci-aprs.
1 Affichez le formulaire en mode Cration.
2 Cliquez du bouton droit dans la zone Dtail et choisissez
En-tte/pied de formulaire dans le menu contextuel qui apparat.
Masquer seulement une section en mode Formulaire
Pour masquer une section en mode Formulaire, cliquez sur la section
masquer et affichez le volet des proprits en utilisant le bouton Feuille des
proprits du groupe Crer de longlet Outils de cration de formulaire
/Cration. Choisissez Non la proprit Visible. Ainsi, la section choisie reste
affiche en mode Cration mais elle est masque en mode Formulaire.
Figure 6.37 : Laffichage de
lentte et du pied de
formulaire
405 6.3. Crer des formulaires simples
j La section En-tte de page renferme les objets placs dans la partie
suprieure du formulaire et qui sont visibles uniquement lorsque
le formulaire est imprim.
j La section Pied de page renferme les objets placs dans la partie
infrieure du formulaire (la date par exemple) et qui, comme dans
la section prcdente, sont visibles uniquement lorsque le formu-
laire est imprim.
Les sections En-tte de page et Pied de page sont rptes sur chaque
page imprime.
Pour afficher ou masquer les sections En-tte de page et Pied de page,
procdez comme suit.
1 Affichez le formulaire en mode Cration.
2 Cliquez du bouton droit dans la zone Dtail et choisissez En-tte et
pied de page dans le menu contextuel qui apparat.
Dnir les proprits du formulaire
Lors de la cration du formulaire, Access a renseign certaines
proprits de lobjet Formulaire. Celles-ci peuvent videmment tre
modies.
Pour afficher le volet des proprits de lobjet Formulaire, utilisez
lune des mthodes suivantes :
j Cliquez, dans longlet du formulaire, en dehors dune section du
formulaire puis sur le bouton Feuille des proprits du groupe
Outils de longlet Outils de cration de formulaire/Cration ou utili-
sez la combinaison des touches [Alt]+[].
j Cliquez du bouton droit, dans longlet du formulaire, en dehors
dune section du formulaire puis choisissez Proprits du
formulaire dans le menu contextuel qui apparat.
j Double-cliquez sur le Slecteur de formulaire.
Figure 6.38 : Len-tte du
formulaire sera masqu
en mode Formulaire
406 6. Amliorer la saisie
La slection de lobjet Formulaire
Pour slectionner le formulaire, cliquez sur le slecteur de formulaire,
symbolis par un petit carr dans langle suprieur gauche dun formulaire
lorsque celui-ci est affich en mode Cration.
Le volet Feuille de proprits du formulaire saffiche.
Lobjet Formulaire est slectionn dans la liste Type de slection du
volet des proprits. Cette liste rpertorie tous les objets du formu-
laire, classs par catgories.
Voici quelques proprits signicatives du formulaire.
La source du formulaire
Une des proprits les plus importantes est certainement la source
de donnes du formulaire.
1 Cliquez sur longlet Donnes du volet des proprits.
La proprit Source spcie la source des donnes du formulaire,
cest--dire une table ou une requte. Cette proprit peut tre ren-
seigne par un nom de table, un nom de requte ou une instruction
SQL.
Figure 6.39 : Le slecteur de formulaire
Figure 6.40 : La proprit Source du formulaire
407 6.3. Crer des formulaires simples
La manipulation qui suit va vous permettre de consulter les champs
renferms dans la source de donnes.
2 Cliquez sur le bouton Ajouter des champs existants du groupe
Outils de longlet Outils de cration de formulaire/Cration ou utili-
sez la combinaison des touches [Alt]+[F8].
Ce volet rpertorie tous les champs de la table ou de la requte
mentionne la proprit Source.
Ajouter des champs
La fonctionnalit Ajouter des champs existants permet dajouter des
champs en provenance de la source de donnes (proposs dans la zone
Champs disponibles pour cette vue) et des champs issus dautres sources,
proposs dans les zones Champs disponibles dans les tables associes et
Champs disponibles dans les autres tables (si ces deux zones ne sont pas
affiches, cliquez sur le lien Afficher tous les tableaux, en bas du volet Liste de
champs). Tous les champs proposs peuvent tre glisss dans le formulaire,
que les relations entre les tables soient cres ou non (dans ce dernier cas, les
relations temporaires peuvent tre dnies). Access modie alors la pro-
prit Source du formulaire en y crant une requte adapte.
Notez galement que des raccourcis vers les tables sont proposs depuis le
volet Liste de champs vers le mode Feuille de donnes par les liens Modier
la table affichs droite des noms des tables.
La mise en forme de lobjet formulaire
Vous pouvez affecter lapparence du formulaire trs aisment en
utilisant diffrents boutons.
1 Affichez le formulaire en mode Cration.
2 Utilisez les boutons Thmes, Couleurs et Polices proposs dans le
groupe Thmes de longlet Outils de cration de formulaire
/Organiser.
Insrer une image larrire-plan du formulaire
La proprit Image permet de dnir une image comme arrire-plan
dans un formulaire. Procdez ainsi :
1 Affichez les proprits du formulaire en mode Cration.
Figure 6.41 : Les boutons du groupe Thmes
408 6. Amliorer la saisie
2 Sous longlet Format, dans le volet des proprits du formulaire,
cliquez dans la zone de saisie de la proprit Image, puis sur les
trois points en bout de ligne.
La bote de dialogue Insrer une image saffiche.
3 Choisissez ventuellement le format du chier image dans la liste
Type de chier. Slectionnez le chier. Cliquez sur le bouton OK.
Dans le volet des proprits, il est possible de spcier si limage est
intgre dans le formulaire ou attache.
Image intgre ou attache
Si limage est attache (ou encore lie), elle nest pas enregistre dans le
formulaire Access mais stocke sur lordinateur en tant que chier indpendant.
Dans le cas contraire, on parle dimage intgre (ou encore incorpore).
4 Sous longlet Format dans le volet des proprits du formulaire,
choisissez lune des deux valeurs de la proprit Type image :
Loption par dfaut Intgr signie que limage est insre dans
le formulaire.
Loption Attach signie que limage est lie au formulaire. Dans
ce cas, une modication de limage au moyen dun logiciel
spcique changera galement lapparence de cette dernire
dans le formulaire.
Changer la couleur darrire-plan du formulaire
Larrire-plan du formulaire peut galement utiliser une couleur sim-
ple. Vous allez par exemple appliquer une couleur de fond unie au
formulaire.
Figure 6.42 : La proprit Image permet dinsrer une image darrire-plan dans le formulaire
409 6.3. Crer des formulaires simples
1 Affichez les proprits du formulaire en mode Cration.
La couleur de fond nest pas spcique au formulaire mais elle est
dnie pour chacune de ses sections.
2 Pour modier la couleur de larrire-plan, double-cliquez dans la
section Dtail.
Les proprits de la section saffichent dans le volet des proprits.
3 Cliquez sur longlet Format puis dans la zone de saisie de la
proprit Couleur de fond. Pour dnir la couleur, cliquez sur la
che droite de la proprit Couleur de fond an de choisir une
couleur prdnie issue dun thme ou dun format automatique.
4 Si vous souhaitez choisir lune des couleurs proposes dans le
nuancier de couleurs, cliquez sur le Gnrateur de couleurs sym-
bolis par les points droite de la proprit Couleur de fond.
Cliquez sur une couleur propose dans le nuancier.
Si aucune des couleurs proposes dans le nuancier ne vous
convient, le bouton Autres couleurs, prsent en bas de la liste d-
Figure 6.43 : Le choix de la couleur seffectue dans le nuancier
410 6. Amliorer la saisie
roulante ouverte par le Gnrateur de couleurs permet daccder la
bote de dialogue Couleurs.
Dans le volet des proprits de la section Dtail, la proprit Couleur
fond contient alors la nouvelle couleur (traduite par une valeur nu-
mrique).
Codage des couleurs
Le codage des couleurs est exprim par une valeur du type #FFFFFF. Il
sagit dun codage en hexadcimal (en base 16) de chacune des valeurs des
couleurs primaires utilises en mode RVB : le rouge, le vert et le bleu.
Chacune de ces trois couleurs est code sur deux chiffres par une valeur
pouvant varier entre 0 et 255 (FF en hexadcimal).
Ainsi, par exemple, la couleur #0007FF, qui correspond un bleu, est compose
dune valeur de 0 (00 en hexadcimal) de rouge, dune valeur de 127 (7F en
hexadcimal) de vert et dune valeur de 255 (FF en hexadcimal) de bleu.
5 Validez en utilisant la touche [].
Enlever une image darrire-plan
Si larrire-plan du formulaire contient une image, celle-ci masque la
couleur de fond de la section dtail. Pour afficher cette couleur, vous devez
retirer limage dont le nom est stock dans la proprit Image sous longlet
Format dans le volet des proprits du formulaire.
Utiliser les contrles
Les contrles sont couramment utiliss dans les formulaires, princi-
palement pour afficher des informations stockes dans les tables ou
dans les requtes.
On distingue trois familles de contrles : les contrles dpendants,
les contrles indpendants et les contrles calculs.
j Les contrles indpendants sont utiliss pour afficher des textes
informatifs, tels que des tiquettes, non enregistrs dans les tables
de la base de donnes. On compte galement dans cette catgorie
les traits, les images ou les rectangles.
j Les contrles dpendants, linverse, utilisent les informations
renfermes dans les champs des tables ou des requtes. Ce sont
notamment les zones de texte, les listes droulantes et les cases
cocher.
411 6.3. Crer des formulaires simples
j Les contrles calculs ont recours aux expressions comme sour-
ces de donnes, utilisant par exemple des champs de tables ou de
requtes, des contrles de formulaires ou encore dtats.
Les boutons du groupe Contrles de longlet Outils de cration de
formulaire/Cration autorisent une insertion facile des contrles du
formulaire. Un survol de ces boutons au moyen du pointeur de la
souris fait apparatre leurs noms.
1 Cliquez sur lun des boutons du groupe Contrles.
2 Cliquez dans le formulaire, lendroit o vous souhaitez insrer le
contrle, et tracez une zone qui dterminera sa taille au contrle.
Les sections suivantes prsentent diffrentes insertions de contrles
dans les formulaires.
Insrer un contrle indpendant
Les contrles indpendants sont utiliss pour afficher des titres ou
des instructions xes. En voici un exemple dutilisation.
1 Cliquez sur le bouton Etiquette du groupe Contrles de longlet
Outils de cration de formulaire/Cration puis cliquez dans le for-
mulaire.
2 Saisissez le texte qui sera affich dans ltiquette, puis validez avec
la touche [].
La taille du contrle est ajuste celle de son contenu.
Figure 6.44 : Les boutons du groupe Contrles de longlet Outils de cration de formulaire/Cration
Figure 6.45 : Lajout dune tiquette
412 6. Amliorer la saisie
Dfinir manuellement la taille du contrle
Pour dnir manuellement la taille dun contrle sa cration, cliquez sur
le bouton correspondant, cliquez dans le formulaire, puis, tout en maintenant
le bouton de la souris enfonc, augmentez ou diminuez la taille de lobjet en
agissant sur sa bordure jusqu obtenir la dimension souhaite.
Insrer un contrle dpendant
Les contrles dpendants sont utiliss pour afficher des donnes
puises dans les tables et les requtes. Dans cet exemple dutilisa-
tion dune zone de texte, plusieurs mthodes sont possibles.
j Affichez la liste de champs en cliquant sur le bouton Ajouter des
champs existants du groupe Outils de longlet Outils de cration de
formulaire/Cration. Slectionnez un ou plusieurs champs puis
glissez-les dans le formulaire. Des zones de texte associes une
tiquette sont alors affiches dans le formulaire.
j Cliquez sur le bouton Zone de texte du groupe Contrles de longlet
Outils de cration de formulaire/Cration puis dans une section du
formulaire. ce stade, la zone de texte est un contrle indpen-
dant puisquelle na pas de valeur afficher. Affichez les proprits
du contrle ajout en double-cliquant sur ce dernier puis cliquez
dans la proprit Source contrle dans le volet Feuille de proprits
et choisissez le champ utiliser comme source de lobjet. Modiez
ventuellement le texte de son tiquette en cliquant dans son
texte.
Insrer un contrle calcul
Les contrles calculs affichent le rsultat dune expression. Voici un
exemple dutilisation de lun dentre eux.
Figure 6.46 : Laffectation de la source du contrle
413 6.3. Crer des formulaires simples
1 Cliquez sur le bouton Zone de texte du groupe Contrles de longlet
Outils de cration de formulaire/Cration puis dans une section du
formulaire.
ce stade, la zone de texte associe son tiquette est un contrle
indpendant puisquelle na pas de valeur afficher.
2 Cliquez dans la zone de texte, puis saisissez lexpression en la
faisant prcder du caractre = ou affichez les proprits de la zone
de texte (en double-cliquant sur cette dernire). Cliquez dans la
proprit Source contrle dans le volet Feuille de proprits et
saisissez lexpression en la faisant prcder du caractre =.
Autre mthode : affichez les proprits de la zone de texte, puis
cliquez sur les trois points de la zone de saisie de la proprit Source
contrle pour afficher le Gnrateur dexpression et y composer la
formule.
Supprimer un contrle et son tiquette
Si vous supprimez un contrle auquel une tiquette est attache, les deux
objets sont supprims. Pour supprimer uniquement ltiquette, cliquez sur
celle-ci an de la slectionner avant dappuyer sur la touche [Suppr].
Figure 6.47 : Le Gnrateur dexpression
414 6. Amliorer la saisie
Les proprits dun contrle
Bien dautres proprits, caractrisant un contrle, peuvent tre mo-
dies. Cliquez sur le contrle pour le slectionner puis utilisez lune
des mthodes suivantes an dafficher le volet Feuille de proprits
de lobjet.
j Cliquez sur le bouton Feuille des proprits du groupe Outils de
longlet Outils de cration de formulaire/Cration.
j Cliquez du bouton droit sur le contrle. Choisissez Proprits dans
le menu contextuel qui apparat.
Afficher rapidement les proprits dun objet du formulaire
Pour afficher le volet Feuille de proprits dun objet du formulaire,
double-cliquez sur lobjet.
Slectionner un contrle
1 Cliquez sur le bouton Slectionner du groupe Contrles de
longlet Outils de cration de formulaire/Cration.
2 Cliquez sur un contrle dans le formulaire.
Access affiche la poigne de dplacement du contrle, symbolise
par un carr dans langle suprieur gauche, et les poignes de
redimensionnement, reprsentes galement par des carrs sur les
bordures du contrle.
3 Pour slectionner plusieurs contrles, maintenez la touche [Maj]
enfonce, puis cliquez sur chaque contrle.
4 Pour slectionner plusieurs contrles contigus, cliquez lext-
rieur dun contrle, puis dimensionnez le rectangle de slection
qui apparat en maintenant le bouton de la souris enfonc an
denglober les contrles slectionner.
Figure 6.48 : La slection dun contrle
415 6.3. Crer des formulaires simples
La slection dune tiquette et de son contrle associ
Si une tiquette attache au contrle est slectionne, les poignes de
dplacement des deux contrles sont affiches ainsi que les poignes de
redimensionnement du contrle sur lequel on a cliqu. En cas de dplace-
ment, ils sont dplacs simultanment.
Dplacer un contrle
1 Cliquez sur le contrle dplacer.
2 Placez le pointeur sur la poigne de dplacement du contrle.
Lorsquil prend lapparence dune croix che, maintenez le bou-
ton de la souris enfonc et glissez-le lendroit voulu.
3 Pour dplacer plusieurs contrles, slectionnez-les puis placez le
pointeur de la souris sur la slection. Lorsque le pointeur prend
lapparence dune croix, cliquez, maintenez le bouton de la souris
enfonc et glissez la slection lendroit dsir.
Redimensionner un contrle
1 Cliquez sur le contrle redimensionner.
2 Cliquez sur une des poignes de redimensionnement du contrle
slectionn, puis tirez ou rduisez sa taille jusqu obtenir la
dimension souhaite.
Le pointeur prend lapparence dune double che pendant le redi-
mensionnement.
tre plus prcis
An dobtenir plus de prcision, utilisez les proprits Largeur et Hauteur
sous longlet Format du volet Feuille de proprits du contrle.
Figure 6.49 : Le dplacement dun contrle avec
la poigne de dplacement
Figure 6.50 : Les proprits
Largeur et Hauteur
416 6. Amliorer la saisie
Si plusieurs contrles ont t slectionns, le redimensionnement
sapplique tous les contrles de la slection.
Petites modifications de la taille dun contrle
Pour procder des diminutions ou des augmentations trs limites de la
taille dun contrle, utilisez la combinaison [Maj]+une des touches de direction.
Le redimensionnement sera beaucoup plus prcis.
Ajuster la taille dun contrle
1 Slectionnez les contrles redimensionner.
2 Cliquez sur longlet Outils de cration de formulaire/Organiser puis
cliquez sur le bouton Taille/Espace du groupe Redimensionnement
et classement et choisissez, la rubrique Taille de la liste qui
apparat, lune des actions dcrites ci-aprs :
Ajuster au contenu permet doptimiser la taille dun contrle en
fonction de son contenu.
Ajuster au plus grand permet daugmenter la hauteur des contr-
les de telle sorte que celle du plus grand soit applique tous
les objets.
Ajuster au plus petit permet de diminuer la hauteur des contr-
les de telle sorte que celle du plus petit soit applique tous les
objets.
Ajuster au plus large permet daugmenter la largeur des contr-
les de telle sorte que celle du plus large soit applique tous les
objets.
Ajuster au plus troit permet de diminuer la largeur des contr-
les de telle sorte que celle du plus troit soit applique tous les
objets.
Figure 6.51 : Les actions dajustement proposes
417 6.3. Crer des formulaires simples
Vous pouvez galement cliquer du bouton droit sur la slection,
choisir Taille puis lune des commandes dans le menu contextuel qui
apparat.
Aligner un contrle par rapport un autre
1 Slectionnez les contrles concerns.
2 Cliquez sur longlet Outils de cration de formulaire/Organiser puis
cliquez sur le bouton Aligner du groupe Redimensionnement et
classement et choisissez lune des actions dcrites ci-aprs :
Aligner gauche permet daligner les bords gauches des contr-
les slectionns sur le bord gauche du contrle le plus gauche.
Aligner Droite permet daligner les bords droits des contrles
slectionns sur le bord droit du contrle le plus droite.
Aligner en haut permet daligner les bords suprieurs des
contrles slectionns sur le bord suprieur du contrle le plus
haut.
Aligner en bas permet daligner les bords infrieurs des contr-
les slectionns sur le bord infrieur du contrle le plus bas.
Vous pouvez galement cliquer du bouton droit sur la slection,
choisir Aligner puis lune des commandes dans le menu contextuel
qui apparat.
Modier lespacement entre les contrles
1 Slectionnez les contrles ajuster.
2 Cliquez sur longlet Outils de cration de formulaire/Organiser puis
cliquez sur le bouton Taille/Espace du groupe Redimensionnement
et classement et choisissez, la rubrique Espacement de la liste qui
apparat, lune des actions dcrites ci-aprs :
Egaliser lespacement horizontal et Egaliser lespacement vertical
permettent despacer les contrles de faon uniforme.
Figure 6.52 : Les actions dalignement proposs
418 6. Amliorer la saisie
Augmenter lespacement horizontal et Augmenter lespacement
vertical permettent daugmenter lespace entre les contrles.
Diminuer lespacement horizontal et Diminuer lespacement
vertical permettent de rduire lespace entre les contrles.
Modier lordre de superposition des contrles
1 Slectionnez le contrle dont vous souhaitez modier lordre de
superposition.
2 Cliquez sur longlet Outils de cration de formulaire/Organiser puis
sur le bouton Mettre au premier plan ou sur le bouton Mettre en
arrire-plan du groupe Redimensionnement et classement.
Grouper des contrles
1 Slectionnez les contrles grouper an, par exemple, de faciliter
leurs dplacements.
2 Cliquez sur longlet Outils de cration de formulaire/Organiser puis
cliquez sur le bouton Taille/Espace du groupe Redimensionnement
et classement et choisissez Grouper la rubrique Regroupement de
la liste qui apparat.
Figure 6.53 : Les actions
despacement proposes
Figure 6.54 : Les boutons Mettre au premier plan et Mettre larrire plan
419 6.3. Crer des formulaires simples
Dissocier des contrles
1 Cliquez sur le groupe de contrles dissocier an, par exemple, de
les dplacer individuellement.
2 Cliquez sur longlet Outils de cration de formulaire/Organiser puis
cliquez sur le bouton Taille/Espace du groupe Redimensionnement
et classement et choisissez Dissocier la rubrique Regroupement de
la liste qui apparat.
Mettre en forme des contrles
Police, taille de police, style, soulignement, alignement, bordure,
couleur : ces mises en forme des contrles du formulaire peuvent
aisment tre modies. Pour cela :
1 Slectionnez le contrle mettre en forme.
2 Cliquez sur longlet Outils de cration de formulaire/Format puis
choisissez lune des commandes proposes dans le groupe Police.
Figure 6.55 : Les actions de regroupement et de dissociation
420 6. Amliorer la saisie
Recopier la mise en forme applique un contrle sur un autre
Pour reproduire la mise en forme applique sur un contrle vers un autre,
cliquez sur le contrle qui vous servira de modle, puis sur le bouton
Reproduire la mise en forme du groupe Police. Cliquez ensuite sur le contrle
sur lequel la mise en forme doit tre applique.
Si la mise en forme doit tre reproduite plusieurs fois, double-cliquez sur le
bouton Reproduire la mise en forme. Cliquez ensuite sur tous les contrles
pour lesquels la mise en forme doit tre applique. La fonctionnalit reste
active jusquau prochain clic sur le bouton Reproduire la mise en forme.
Mise en forme conditionnelle
Comme son nom lindique, la mise en forme conditionnelle permet
de modier la mise en forme dun contrle en fonction dune condi-
tion. Par exemple, le texte affich dans une zone de texte apparatra
en rouge sil est infrieur zro et en vert dans le cas contraire.
1 Slectionnez une zone de texte dans le formulaire.
2 Cliquez sur longlet Outils de cration de formulaire/Format puis sur
le bouton Mise en forme conditionnelle du groupe Contrler la mise
en forme ou cliquez du bouton droit sur lobjet, puis choisissez
Mise en forme conditionnelle dans le menu contextuel qui apparat.
La bote de dialogue Gestionnaire de rgles de mise en forme
conditionnelle est affiche.
3 Cliquez sur le bouton Nouvelle rgle.
Figure 6.56 : Les commandes proposes dans le
groupe Police
Figure 6.57 : Une rgle de
mise en forme va tre cre
421 6.3. Crer des formulaires simples
La bote de dialogue Nouvelle rgle de mise en forme est affiche.
4 Choisissez le type de rgle Vrier les valeurs de lenregistrement
actif ou utiliser une expression.
5 Dnissez la premire condition et la mise en forme appliquer
lorsque la condition est vraie puis cliquez sur le bouton OK.
6 De retour dans la bote de dialogue Gestionnaire de rgles de mise
en forme conditionnelle, ajoutez ventuellement dautres condi-
tions au moyen du bouton Nouvelle rgle. Cliquez sur le bouton
OK.
Dupliquer la mise en forme conditionnelle dun contrle
Pour reproduire la mise en forme conditionnelle applique sur un contrle,
slectionnez le contrle dont vous souhaitez copier la mise en forme condi-
tionnelle, cliquez sur le bouton Reproduire la mise en forme du groupe Police.
Cliquez ensuite sur le contrle vers lequel vous souhaitez copier la mise en
forme.
Ordre de tabulation
Lordre de tabulation est lordre de passage dun contrle un autre
lorsque la touche [] est utilise en mode Formulaire.
1 Cliquez sur longlet Outils de cration de formulaire
/Cration puis sur le bouton Ordre de tabulation du groupe
Outils.
La bote de dialogue Ordre de tabulation apparat. Lordre de tabula-
tion y est dni pour chaque section.
Figure 6.58 : La dnition de la premire rgle
422 6. Amliorer la saisie
2 Dans la liste Section, slectionnez la section du formulaire dont
vous souhaitez dnir lordre de tabulation des contrles.
La liste des contrles de la section saffiche dans la zone Ordre
personnalis.
3 Cliquez sur le slecteur du contrle (qui a la forme dun petit carr,
gauche du nom du contrle) puis dplacez-le parmi les lments
de la liste en le faisant glisser, si vous souhaitez modier lordre de
tabulation des contrles.
4 Pour affecter aux contrles lordre de tabulation le plus logique, de
gauche droite et de haut en bas, cliquez sur le bouton Ordre
automatique de la bote de dialogue. Cliquez sur le bouton OK.
Supprimer un contrle de la liste de lordre de tabulation
Si vous souhaitez quun contrle soit supprim de la liste de lordre de
tabulation, slectionnez lobjet concern en mode Cration de formulaire,
puis affichez ses proprits dans le volet Feuille de proprits. Sur la liste de
proprits de longlet Autres de la bote de dialogue des proprits de lobjet,
dnissez la valeur Non la proprit Arrt tabulation. Lorsque la touche []
est active en mode Formulaire, le contrle nest plus parcouru.
Figure 6.59 : La personnalisation de lordre de tabulation des contrles de la section Dtail
423 6.3. Crer des formulaires simples
Fermer et enregistrer un formulaire
Une fois la structure dun formulaire dnie en mode Cration, le
travail doit tre mmoris par Access : le formulaire sera ferm et
enregistr.
1 Pour fermer longlet du formulaire, cliquez sur le bouton Fermer
symbolis par une croix dans langle suprieur droit de longlet ou
utilisez la combinaison de touches [Ctrl]+[F4].
Si le formulaire a t modi depuis son prcdent enregistrement,
la bote de dialogue Microsoft Office Access apparat et vous demande
si vous souhaitez enregistrer le formulaire.
2 Cliquez sur le bouton Oui.
La bote de dialogue Enregistrer sous apparat, si le formulaire na pas
encore t enregistr. Dans le cas contraire, le formulaire est enre-
gistr avec le nom qui lui a dj t affect et la bote de dialogue
Enregistrer sous napparat pas.
3 Si la bote de dialogue Enregistrer sous apparat, remplacez Formu-
laire1 par votre propre nom dans la zone Nom du formulaire puis
cliquez sur le bouton OK.
Enregistrer nouveau le formulaire
Pour enregistrer le formulaire avec le mme nom, sans le fermer, utilisez la
combinaison de touches [Ctrl]+[S] ou cliquez sur longlet Fichier puis choisissez
le menu Enregistrer.
6.4. Crer des formulaires imbriqus
Un formulaire principal est un formulaire qui contient au moins un
sous-formulaire. Un sous-formulaire est un formulaire contenu dans
un formulaire.
Crer un formulaire et un sous-formulaire
simultanment laide de lAssistant
Un sous-formulaire est un formulaire insr dans un autre formu-
laire. Il sera trs utile pour afficher le contenu dune table connexe
la table principale, dont les donnes sont, elles, affiches dans le
formulaire principal. Les liaisons entre le formulaire et les sous-
formulaires utilisent les relations tablies.
424 6. Amliorer la saisie
Un formulaire nest pas insr directement dans un autre formulaire.
Il utilise pour cela un objet conteneur, nomm "sous-formulaire".
Lorsque nous parlons de "sous-formulaire", cest cet objet que nous
dsignons. Procdez ainsi :
1 Cliquez sur une table ou une requte dans le volet de navigation.
2 Cliquez sur longlet Crer puis sur le bouton Assistant Formulaire
du groupe Formulaires.
La table ou la requte utilise comme source du formulaire principal
et les champs quelle renferme, et qui doivent tre prsents dans ce
formulaire, doivent dabord tre slectionns.
3 la premire tape de lAssistant, dplacez les champs de la table
dans la colonne Champs disponibles vers la colonne Champs slec-
tionns.
Dans cette mme tape de lAssistant, les champs de la table
connexe, qui seront prsents dans le sous-formulaire, doivent
leur tour tre slectionns.
4 Sur la liste Tables/Requtes, choisissez la table ou la requte qui
sera utilise comme source du sous-formulaire. Dplacez les
champs de la colonne Champs disponibles dans la colonne Champs
slectionns.
Figure 6.60 : La slection des champs qui seront utiliss dans le formulaire principal
425 6.4. Crer des formulaires imbriqus
Les champs choisis cette dernire tape apparatront dans le sous-
formulaire. La liste Champs slectionns doit donc renfermer des
champs de la premire et de la seconde table.
5 Cliquez sur le bouton Suivant.
La partie haute du formulaire affichera les donnes de la table prin-
cipale. Ce formulaire sera le formulaire principal. La partie infrieure
constituera le sous-formulaire et affichera les donnes de la table
connexe.
ltape suivante, lAssistant dtecte les relations entre les tables et
vous propose des dispositions pour limbrication des formulaires.
6 En fonction des relations unissant les tables, choisissez lune des
propositions de lAssistant. Cliquez sur le bouton Suivant.
7 Choisissez une disposition des donnes dans le sous-formulaire,
laffichage Feuille de donnes par exemple. Cliquez sur le bouton
Suivant.
Figure 6.61 : La slection
des champs du
sous-formulaire
Figure 6.62 : LAssistant
propose plusieurs
prsentations des
formulaires, en fonction des
tables choisies et des
relations qui les unissent
426 6. Amliorer la saisie
8 Choisissez un style de prsentation pour votre formulaire puis
cliquez sur le bouton Suivant.
Access vous propose ensuite des noms quil affectera aux deux
formulaires.
9 Conservez-les ou modiez-les sils ne vous conviennent pas, puis
cliquez sur le bouton Terminer.
Access affiche alors le formulaire et son sous-formulaire en mode
Formulaire.
Les diffrentes dispositions des champs dans un formulaire
Vous lavez vu, lorsque vous crez un formulaire simple au moyen dun
Assistant, Access vous propose de choisir une disposition pour les champs
du formulaire. Dans le cas dun sous-formulaire, la disposition Feuille de
donnes est utilise par dfaut. Cette disposition permet de faire apparatre
plusieurs enregistrements, la diffrence des autres affichages qui ne font
apparatre quun enregistrement la fois. Cest donc vous de choisir la
disposition la mieux adapte.
Crer un sous-formulaire dans un formulaire
existant
Un sous-formulaire peut tre ajout ultrieurement dans un formu-
laire existant.
Figure 6.63 : Le formulaire
et son sous-formulaire sont
affichs en mode Formulaire
427 6.4. Crer des formulaires imbriqus
1 Ouvrez en mode Cration le formulaire auquel vous souhaitez
ajouter le sous-formulaire.
2 Dans le groupe Contrles de longlet Outils de cration de
formulaire/Cration, vriez que le bouton Utiliser les Assistants
Contrle est activ (fond orange), cliquez sur le bouton
Sous-formulaire/Sous-tat puis cliquez dans le formulaire.
La fentre de lAssistant Sous-formulaire saffiche.
3 Choisissez loption Utiliser les tables et les requtes existantes pour
dterminer la source du formulaire crer et utiliser comme
sous-formulaire ou loption Utiliser un formulaire existant. Slec-
tionnez dans la liste le formulaire utiliser comme sous-
formulaire. Cliquez sur le bouton Suivant.
Ltape suivante est excute si loption Utiliser les tables et les requ-
tes existantes a t choisie ltape prcdente :
4 Choisissez sur la liste de la zone Tables/Requtes, la table ou la
requte utiliser comme source du formulaire crer. Glissez les
champs de la liste Champs disponibles sur la liste Champs slec-
tionns. Cliquez sur le bouton Suivant.
5 Choisissez lune des options proposes pour indiquer le lien entre
le formulaire principal et le sous-formulaire :
Choisir partir dune liste permet de sappuyer sur une ven-
tuelle relation existante.
Figure 6.64 : Lajout du
sous-formulaire est facilit
lorsque le bouton
Assistants contrle est
activ
Figure 6.65 : Une relation
existante liant les deux
tables est utilise
428 6. Amliorer la saisie
Les dnir moi-mme permet de crer le lien partir des zones
Champs du formulaire/tat et Champs du sous-formulaire/tat.
6 Cliquez sur le bouton Suivant.
7 la dernire tape, modiez ventuellement le nom du sous-
formulaire, puis cliquez sur le bouton Terminer.
Le sous-formulaire est cr dans le formulaire principal. Il est modi-
able depuis le mode Cration du formulaire principal, mais gale-
ment depuis la fentre de la base de donnes.
Figure 6.66 : Une relation
temporaire est ici dnie
Figure 6.67 : Laffichage du
sous-formulaire dans le
formulaire principal, en
mode Cration
429 6.4. Crer des formulaires imbriqus
8 Pour vrier le lien dni par lAssistant entre les deux formulai-
res, en mode Cration, cliquez sur le sous-formulaire, affichez son
volet des proprits puis cliquez sur longlet Donnes.
La proprit Objet source dnit le nom du sous-formulaire. Les
proprits Champs ls et Champs pres concernent le lien dni dans
lAssistant. Le lien est constitu par la valeur du champ commune
aux deux listes de champs des formulaires.
6.5. Cas pratique
Passez maintenant la pratique. Dans cette section, vous raliserez
un carnet dadresses avec lAssistant et apporterez des modications
aux objets du formulaire.
Vous raliserez ensuite un formulaire et un sous-formulaire pour am-
liorer la saisie dans lapplication de gestion des factures dont vous
avez commenc le dveloppement dans les chapitres prcdents.
Tlchargement de la base de donnes
Vous trouverez la base de donnes Facturation livres6.accdb utilise dans
ce chapitre sur le site de Micro Application (www.microapp.com) dans le dossier
Chapitre06.
Raliser un carnet dadresses avec lAssistant
Formulaire
Vous allez raliser un formulaire de saisie des adresses avec lAssis-
tant Formulaire an de mettre jour la table des contacts. Procdez
ainsi :
1 Ouvrez la base de donnes Facturation livres6.accdb. Cliquez sur la
table Contacts dans le volet de navigation.
Figure 6.68 : La dnition du lien entre le formulaire principal et le sous-formulaire dans le volet des
proprits
430 6. Amliorer la saisie
2 Cliquez sur longlet Crer puis sur le bouton Assistant Formulaire
du groupe Formulaires.
3 la premire tape de lAssistant, dplacez tous les champs de la
table Contacts de la colonne Champs disponibles dans la colonne
Champs slectionns.
4 la deuxime tape, choisissez la disposition Colonne simple.
5 la dernire tape, donnez le titre Carnet dadresses au formulaire,
laissez loption Ouvrir le formulaire pour afficher ou entrer des infos.
la fermeture de lAssistant, le formulaire est ouvert en mode
Formulaire, ce qui va vous permettre dajouter, de modier ou en-
core de supprimer des contacts dans votre carnet dadresses.
Vous allez ajouter un nouveau contact depuis le formulaire. Pour
cela :
6 Cliquez sur le bouton Nouvel enregistrement, symbolis par un
triangle et une toile droite des boutons de dplacement, en bas
de la fentre.
Figure 6.69 : La saisie dun contact en mode Formulaire
Figure 6.70 : Le bouton
Nouvel enregistrement
431 6.5. Cas pratique
Les zones de texte du formulaire sont vierges. Vous allez y saisir des
donnes qui seront stockes dans la table Contacts, en commenant
par la zone Nom du contact. La premire zone, nocontact, correspond
la cl primaire de la table ; elle nest pas modiable. Pour passer
la zone suivante, utilisez la touche [] ou la souris.
7 Renseignez les zones avec les valeurs suivantes :
Tableau 6.1 : Le nouveau contact
Zone de saisie Donne
Nom du contact LUCY
Prnom du contact Grald
Titre Monsieur
Nom de la socit
Adresse 12, rue des pices
Code postal 54000
Ville NANCY
Dpartement
Pays
Numro de tlphone 03 00 00 00 00
Numro de tlcopie 03 00 00 00 00
Courriel gl@abc.fr
Site web
Commentaire Dmnagement prochainement
Le formulaire peut galement tre employ pour supprimer un
contact.
8 Placez-vous, par exemple, sur le premier contact, cest--dire le
premier enregistrement saisi en cliquant sur le bouton de dpla-
cement Premier enregistrement, en bas de la fentre. Cliquez sur
son slecteur symbolis par un triangle gauche de longlet du
formulaire. Cliquez sur le bouton Supprimer du groupe Enregistre-
ments de longlet Accueil.
Access vous demande de conrmer la suppression de lenregistre-
ment.
9 Cliquez sur le bouton Oui.
432 6. Amliorer la saisie
Access vous place alors sur lenregistrement suivant.
Modier des objets du formulaire
An damliorer la saisie dun contact, vous pouvez personnaliser le
formulaire Carnet dadresses cr prcdemment laide de lAssis-
tant en mode Cration.
1 Affichez le formulaire Carnet dadresses en mode Cration en cli-
quant du bouton droit sur le nom du formulaire dans le Volet de
navigation puis choisissez Mode cration dans le menu contextuel.
Vous souhaitez modier le fond du formulaire et utiliser un fond uni.
2 Pour modier la couleur du fond, double-cliquez dans la section
Dtail.
Les proprits de cette section saffichent dans le volet des propri-
ts.
3 Cliquez sur longlet Format puis sur le Gnrateur de couleurs
symbolis par les points situs droite de la proprit Couleur de
fond. Choisissez une couleur dans la liste propose.
Figure 6.71 : La suppression dun contact en mode Formulaire
Figure 6.72 : Laffectation
dune couleur de fond la
section Dtail
433 6.5. Cas pratique
La suppression de limage en fond du formulaire
Si vous avez utilis un format automatique utilisant une image en fond de
formulaire, il vous faut dabord enlever limage qui masque le fond du
formulaire et dont le nom est stock dans la proprit Image du formulaire.
Pour cela, affichez le volet Feuille de proprits du formulaire en double-
cliquant sur son angle suprieur gauche. Cliquez sur longlet Format puis
supprimez le nom de limage dans la zone de saisie de la proprit Image. Le
paramtre (aucune) doit alors apparatre. Validez en appuyant sur la touche
[]. Access vous demande conrmation de la suppression. Cliquez sur le
bouton Oui de la bote de dialogue.
Vous allez maintenant modier le titre du formulaire, qui est lti-
quette cre automatiquement par lAssistant, situe dans len-tte
du formulaire et dont la lgende est "Carnet dadresses".
4 Double-cliquez sur ltiquette pour afficher sa feuille des propri-
ts. Modiez les proprits suivantes sous longlet Format :
Tableau 6.2 : Modification des proprits de ltiquette
Proprit Valeur Commentaire
Police Aharoni (ou une autre police) Choisissez la valeur sur la liste de la proprit.
Taille de police 24 Choisissez la valeur sur la liste de la proprit.
Style de fond Transparent Choisissez la valeur sur la liste de la proprit.
Apparence En relief Choisissez la valeur sur la liste de la proprit.
Le contour nest pas ajust au texte qui compose ltiquette.
5 Pour ajuster la taille de ltiquette en fonction du contenu, cliquez
sur longlet Outils de cration de formulaire/Organiser puis sur le
Figure 6.73 : La mise en forme de ltiquette
434 6. Amliorer la saisie
bouton Taille/Espace du groupe Redimensionnement et classement
et enn sur Ajuster au contenu la rubrique Taille de la liste qui
apparat.
Modifier le nomdun objet
Vous pouvez galement modier le nom des objets du formulaire. Tous les
objets ont un nom dni dans la proprit Nom de longlet Autres dans le
volet des proprits. Access donne des noms par dfaut que vous pouvez
changer dans cette proprit.
Vous allez maintenant affecter une infobulle une zone de texte.
6 Double-cliquez sur la zone de texte du numro de tlphone dans
la section Dtail.
Les proprits de lobjet saffichent dans le volet des proprits.
7 Vriez que la liste de la feuille des proprits affiche son nom.
Cliquez sur longlet Autres et tapez Saisie du numro de tlphone
dans le format propos dans la proprit Texte dInfobulle. Validez.
Le formulaire prsente galement une lgende qui sera affiche dans
la barre de titre en mode Formulaire. Vous allez la modier :
8 Affichez les proprits du formulaire en cliquant sur le carr plac
dans langle suprieur gauche du formulaire. Cliquez sur longlet
Format et saisissez Gestion du carnet dadresses dans la proprit
Lgende puis validez.
Figure 6.74 : La dnition
du texte de linfobulle
dune zone de texte
Figure 6.75 : La modication de la lgende du formulaire
435 6.5. Cas pratique
Un contrle peut tre dsactiv (il est alors impossible de le slec-
tionner) et verrouill (il devient impossible de le modier).
La premire zone de texte nocontact permet dafficher la cl primaire
de la table. Access en assure la numrotation automatique. Il est utile
de la laisser visible mais aussi den empcher laccs et dinterdire la
saisie dans la zone.
9 Cliquez sur la zone de texte nocontact dans la section Dtail et
affichez ses proprits. Cliquez sur longlet Donnes et modiez les
proprits de la manire suivante :
Tableau 6.3 : Modification des proprits de la zone de texte nocontact
Proprit Valeur Commentaire Description de la proprit
Activ Non Choisissez la valeur sur la liste. Empche laccs la zone de texte.
Verrouill Oui Choisissez la valeur sur la liste. Empche la saisie dans la zone de texte.
10 Affichez le formulaire en mode Formulaire et essayez de placer le
curseur dans la zone. Lopration est maintenant impossible.
11 Fermez et enregistrez le formulaire.
Raliser le formulaire de saisie dune facture
Une facture devant faire apparatre le dtail des produits achets
(des livres dans cet exemple), des formulaires imbriqus sont nces-
saires pour en effectuer la saisie.
La partie suprieure du formulaire affichera les donnes de la table
Factures (len-tte de la facture). Ce formulaire sera le formulaire
principal.
La partie infrieure, qui constituera le sous-formulaire, affichera les
donnes de la table Facturelignes lies celles de la table des factu-
res, affiches dans le formulaire principal.
Figure 6.76 : La dsactivation et le verrouillage de la zone de texte
436 6. Amliorer la saisie
Crer le formulaire principal
Vous allez raliser le formulaire principal permettant la saisie de
len-tte de la facture laide dun formulaire instantan :
1 Slectionnez la table Factures dans le volet de navigation.
2 Cliquez sur longlet Crer puis sur le bouton Formulaire du groupe
Formulaires.
Le formulaire est affich en mode Page mais il est seulement possi-
ble dy lire len-tte de chaque facture.
Avant daller plus loin, vous aller rduire la taille des zones de saisie
inutilement longues.
3 Cliquez sur lextrmit droite de la premire zone de texte, main-
tenez le bouton de la souris enfonc et ramenez le pointeur vers la
gauche.
Les lgendes des tiquettes des zones de texte ne sont pas trs
signicatives. Vous allez les modier.
4 Passez en mode Cration en cliquant sur la che du bouton
Affichage de longlet Outils de cration de formulaire/Cration puis
choisissez Mode Cration.
5 Cliquez sur ltiquette nofacture dans le formulaire, cliquez sur le
bouton Feuille des proprits du groupe Crer de longlet Outils de
cration de formulaire/Cration pour afficher ses proprits, puis
saisissez N de facture dans la proprit Lgende de longlet
Format. Faites de mme pour les lgendes des tiquettes datefac-
ture et nocontact en les remplaant respectivement par Date de
facture et Nom du client.
6 Les tiquettes ne sont pas entirement visibles. Cliquez sur la
seconde tiquette pour la slectionner puis cliquez sur longlet
Outils de cration de formulaire/Organiser puis sur le bouton Taille
/Espace du groupe Redimensionnement et classement et enn sur
Ajuster au contenu la rubrique Taille de la liste qui apparat.
Figure 6.77 : La consultation des en-ttes des factures dans le formulaire cr
437 6.5. Cas pratique
7 An dempcher la saisie dun numro de facture, cliquez sur la
zone de texte nofacture et affichez ses proprits. Sous longlet
Donnes, choisissez Non sur la liste de la proprit Activ.
8 Enregistrez le formulaire avec le nom Facturesform via le menu
Enregistrer accessible depuis longlet Fichier.
Crer le sous-formulaire en mode Cration
Pour afficher les lignes de facture de chaque facture, vous allez crer
un sous-formulaire qui affichera les donnes de la table Factureli-
gnes.
Le formulaire Factures-form est affich en mode Cration. Procdez
ainsi :
1 Vriez que le bouton Utiliser les Assistants de contrle du groupe
Contrles de longlet Outils de cration de formulaire/Cration est
actif.
2 Cliquez sur le bouton Sous-formulaire/Sous-tat du groupe Contr-
les de longlet Outils de cration de formulaire/Cration, puis dans
la section Dtail du formulaire Facturesform.
3 Dans la premire tape de lAssistant Sous-formulaire, choisissez
loption Utiliser les tables et les requtes existantes, puis cliquez sur
le bouton Suivant.
4 Dans la deuxime tape, choisissez Facturelignes sur la liste Tables/
Requtes, dplacez tous les champs de la liste Champs disponibles
sur la liste Champs slectionns, puis cliquez sur le bouton Suivant.
Figure 6.78 : Le bouton Utiliser les Assistants de contrle est activ
438 6. Amliorer la saisie
la troisime tape, vous pourriez laisser Access choisir le lien entre
les deux formulaires, mais vous allez les dnir :
5 Cliquez sur loption Les dnir moi-mme. Sur la premire liste,
Champs du formulaire/de ltat, contenant la liste de champs du
formulaire principal Facturesform, choisissez nofacture.
6 Sur la seconde liste Champs du sous-formulaire/de ltat qui donne
la liste des champs de la table Facturelignes, choisie au dbut de
lAssistant (et qui sera la liste de champs du sous-formulaire que
vous tes en train de crer), choisissez le champ nofacture. Cliquez
sur le bouton Suivant.
Figure 6.79 : Les champs de la table Facturelignes inclure dans le sous-formulaire
Figure 6.80 : La dnition du lien entre le formulaire principal et le sous-formulaire
439 6.5. Cas pratique
7 la dernire tape, conservez le nomdu formulaire qui sera utilis
comme sous-formulaire, puis cliquez sur le bouton Terminer pour
fermer lAssistant.
De retour dans le formulaire Factures-form, en mode Cration, vous
pouvez dplacer le sous-formulaire Facturelignes sous-formulaire.
8 Cliquez sur un bord du sous-formulaire pour le slectionner. Lors-
que le pointeur de la souris prend la forme dune croix che,
glissez le sous-formulaire lendroit voulu tout en gardant le
bouton de la souris enfonc.
9 Affichez le formulaire Factures-form en mode Formulaire et visua-
lisez lapparence du sous-formulaire. Utilisez les boutons de navi-
gation du formulaire principal pour vous dplacer dans la table
des factures.
Pour chaque facture du formulaire principal, le sous-formulaire affi-
che les lignes de la facture stockes dans la table Facturelignes (voir
Figure 6.82).
Les boutons de navigation affichs dans le sous-formulaire sont
inutiles. Vous allez les supprimer.
Figure 6.81 : Le formulaire Factures-formet le sous-formulaire Facturelignes sous-formulaire en
mode Cration
440 6. Amliorer la saisie
10 Affichez le formulaire Factures-form en mode Cration. Double-
cliquez sur langle suprieur gauche du sous-formulaire comme le
montre lillustration suivante pour afficher le volet de ses propri-
ts. Cliquez sur longlet Format, puis choisissez Non dans la liste de
la proprit Boutons de dplacement.
En mode Formulaire, la colonne nofacture du sous-formulaire nest
pas utile, puisquelle est renseigne automatiquement par le numro
de facture du formulaire principal. Vous allez supprimer cette co-
lonne pour ne pas risquer de commettre une erreur de saisie.
Figure 6.82 : Le formulaire et le sous-formulaire en mode Formulaire
Figure 6.83 : La suppression de laffichage des boutons de dplacement du sous-formulaire
441 6.5. Cas pratique
11 Dans le sous-formulaire, slectionnez la zone de texte nofacture et
supprimez-la au moyen de la touche [Suppr].
Vous allez modier maintenant la lgende de chaque tiquette des
zones de texte an que les en-ttes des colonnes soient plus signi-
catifs dans le sous-formulaire.
12 Cliquez sur ltiquette nolivre dans le sous-formulaire. Cliquez de
nouveau pour passer en mode ddition. Remplacez nolivre par Nom
du livre. Faites de mme pour la lgende de ltiquette quantite
que vous changez en Quantit. Vriez de mme les libells de la
proprit Lgende de chaque tiquette.
13 Affichez le formulaire Factures en mode Formulaire. Vous consta-
tez la disparition des boutons de navigation et de la colonne
nofacture ainsi que la modication des noms des en-ttes de
colonnes du sous-formulaire.
Figure 6.84 : La
modication des libells
des en-ttes de colonnes du
sous-formulaire
Figure 6.85 : Le formulaire
en mode Formulaire
442 6. Amliorer la saisie
14 Fermez et enregistrez le formulaire ainsi que le sous-formulaire.
Insrer un calcul dans un formulaire
Les calculs utilisant les valeurs des champs vont donner au formu-
laire toute sa dimension : ils permettront laffichage de tout type de
calcul dcoulant des donnes des tables.
Vous allez ajouter un total des prix hors taxes pour chaque ligne de la
table Facturelignes.
1 Ouvrez le formulaire Facturelignes sous-formulaire en mode Cra-
tion. Affichez son volet des proprits et cliquez sur longlet Don-
nes.
La proprit Source du formulaire est une instruction SQL.
2 Cliquez dans cette proprit, puis cliquez sur le bouton symbolis
par trois points pour appeler le Gnrateur de requtes.
Longlet Facturelignes sous-formulaire : Gnrateur de requtes saffi-
che avec la table Facturelignes sur la liste des tables et ses champs
dans la ligne Champ.
3 Ajoutez la table Livres laide du bouton Afficher la table du groupe
Paramtrage de requte de longlet Crer.
La jointure se dessine entre les deux tables.
4 Slectionnez Livres.prixHT dans la liste de la quatrime colonne de
la ligne Champ.
La cinquime colonne permettra deffectuer le produit du prix uni-
taire hors taxes du livre (qui se trouve dans la table Livres) par la
quantit de livres facture (qui se trouve dans la table Facturelignes).
Pour ne pas faire derreur dans la syntaxe du calcul, vous utiliserez le
Gnrateur dexpression.
5 Placez le curseur dans la cinquime colonne de la
ligne Champ. Cliquez sur le bouton Gnrateur du
Figure 6.86 : La proprit
Source du formulaire
443 6.5. Cas pratique
groupe Paramtrage de requte de longlet Crer pour lancer le
Gnrateur dexpression.
6 Dans la fentre du Gnrateur dexpression, dveloppez lobjet
Facturation livres6.accdb puis Tables en double-cliquant sur le si-
gne +, puis slectionnez la table Livres et double-cliquez sur le
champ prixHT sur la liste centrale. Cliquez sur le bouton de lop-
rateur *.
7 Cliquez sur la table Facturelignes puis double-cliquez sur le champ
quantite pour lajouter la formule dans la zone ddition.
8 Cliquez sur OK pour fermer le Gnrateur dexpression.
9 De retour dans longlet Facturelignes sous-formulaire : Gnrateur
de requtes, saisissez TotalHT ligne : au dbut de la formule de la
cinquime colonne pour dnir son nom dans le rsultat de la
requte.
Lillustration qui suit montre les colonnes affiches dans longlet :
Figure 6.87 : Le calcul est
dni dans le Gnrateur
dexpression
Figure 6.88 : Les colonnes de la requte
444 6. Amliorer la saisie
10 Fermez le Gnrateur de requte en cliquant sur le bouton Fermer
et enregistrez les modications apportes.
Dans le volet des proprits du formulaire Facturelignes sous-
formulaire, linstruction SQL a t modie dans la proprit Source.
Certains champs manquent encore pour que le sous-formulaire soit
complet : les champs prixHT et TotalHT ligne. Vous allez les ajouter
dans la section Dtail :
11 Cliquez sur le bouton Ajouter des champs existants du groupe
Outils de longlet Outils de cration de formulaire/Cration.
Le volet Liste de champs apparat droite de longlet du formulaire.
12 Slectionnez les champs prixHT et TotalHT ligne sur la liste des
champs et, en maintenant le bouton de la souris enfonc, glissez-
les dans la section Dtail.
Pour afficher la somme des totaux, une nouvelle zone de texte doit
tre affiche dans le pied du formulaire.
13 Agrandissez la section Pied de formulaire. Cliquez sur le bouton
Zone de texte du groupe Contrles de longlet Outils de cration de
formulaire/Cration, puis cliquez dans la section Pied de formulaire.
Cliquez sur ltiquette associe la zone de texte puis appuyez sur
la touche [Suppr] pour la supprimer car elle est inutile.
Vous allez renommer la zone de texte ajoute.
14 Affichez les proprits de la zone de texte du pied de formulaire.
Cliquez sur longlet Autres et saisissez SommeDesTotaux dans la pro-
prit Nom.
Figure 6.89 : Les deux champs manquants sont ajouts dans le formulaire
445 6.5. Cas pratique
15 Cliquez dans la proprit Source contrle de longlet Donnes qui
est, pour linstant, encore vide, puis cliquez sur le bouton symbo-
lis par trois points pour ouvrir le Gnrateur dexpression. Dans
la fentre du Gnrateur dexpression, dveloppez llment dex-
pression Fonctions en double-cliquant sur le signe +. Cliquez sur
Fonctions intgres. Dans la liste centrale, cliquez sur Regroupe-
ment SQL puis double-cliquez sur Somme dans la liste de droite.
Slectionnez expression dans la zone ddition, cliquez sur lob-
jet Facturelignes sous-formulaire puis double-cliquez sur TotalHT
ligne dans la liste centrale.
16 Fermez le Gnrateur dexpression.
Figure 6.90 : La dnition de lexpression, dans le Gnrateur dexpression
Figure 6.91 : Lexpression gnre dans la proprit Source contrle de la zone de texte
446 6. Amliorer la saisie
Si vous affichez le formulaire en mode Formulaire, le montant total
napparat pas car il est plac dans la section Pied de formulaire. En
effet, la proprit Affichage par dfaut du formulaire Facturelignes
sous-formulaire contient la valeur Feuille de donnes. Or, ce mode
daffichage nautorise pas laffichage du pied de formulaire. Aussi, la
somme des totaux sera affiche dans le formulaire principal Factures-
form.
17 Fermez et enregistrez le formulaire.
Vous allez afficher le montant total hors taxes dans une zone de texte
depuis le formulaire Factures-form.
18 Ouvrez le formulaire Factures-form en mode Cration.
19 Cliquez sur le bouton Zone de texte du groupe Contrles de longlet
Outils de cration de formulaire/Cration et cliquez dans la section
Dtail, en dessous du sous-formulaire. Remplacez le texte de lti-
quette qui a t insre par Total HT. Affichez les proprits de la
zone de texte insre. Cliquez sur longlet Donnes, puis dans la
proprit Source contrle. Cliquez sur le bouton symbolis par
trois points pour ouvrir le Gnrateur dexpression. Dans la fen-
tre du Gnrateur dexpression, dveloppez lobjet Factures-form
puis cliquez sur lobjet Facturelignes sous-formulaire et double-
cliquez sur lobjet SommeDesTotaux sur la liste centrale.
20 Dans le Gnrateur dexpression, cliquez sur OK.
Figure 6.92 : La reprise de la valeur calcule dans le sous-formulaire
447 6.5. Cas pratique
Il vous reste affecter le format montaire la zone de texte.
21 Cliquez sur longlet Format du volet des proprits de la zone de
texte puis choisissez Montaire dans la liste de la proprit Format.
Vous pouvez prsent tester le bon fonctionnement du formulaire.
22 Affichez le formulaire Factures-form en mode Formulaire et chan-
gez les quantits pour tester la variation du Total HT.
23 Fermez et enregistrez le formulaire Factures-form.
Tlchargement de la base de donnes
Vous trouverez la base de donnes nalise Facturation livres6-
nale.accdb utilise dans ce chapitre sur le site de Micro Application (www
.microapp.com) dans le dossier Chapitre06.
Figure 6.93 : La source de la
zone de texte affichant le
total hors taxes
Figure 6.94 : Laffectation
du format montaire la
zone de texte
Figure 6.95 : Le rsultat
nal
448 6. Amliorer la saisie
C
H
A
P
I
T
R
E
7
RESTITUER
LESDONNES
Crer des tats simples .......................................................................................... 451
Crer des tats avancs .......................................................................................... 482
Cas pratique ................................................................................................................. 485
449
Les tats mettent votre disposition une grande quantit dobjets
pour vous permettre de raliser des impressions rapides et efficaces.
Vous naurez gure de difficults concevoir des tats si vous avez lu
le prcdent chapitre qui traite des formulaires. En effet, les objets
quutilisent les tats et les formulaires prsentent de nombreux
points communs. Toutefois, vous ne pourrez pas, dans un tat,
modier les donnes comme vous lavez fait dans les formulaires.
Leur fonction est en effet dassurer la restitution statique des infor-
mations limprimante ou lcran. Cela fait de ces derniers les
meilleurs allis lorsquil est question, par exemple, dimprimer une
liste dadresses ou une facture, pour raliser des tests en mode
Aperu avant impression, prvisualiser une sortie destine limpri-
mante an de la vrier ou encore afficher des informations compl-
mentaires celles dun formulaire.
7.1. Crer des tats simples
Comme pour les formulaires, il existe trois mthodes pour crer des
tats : laide dun Assistant, au moyen de la fonction de cration
dtat rapide et, enn, manuellement.
Utiliser les Assistants
LAssistant Etat permet de concevoir des tats simples an dafficher
les donnes dune table. Procdez ainsi :
1 Cliquez sur une table ou une requte dans le volet de navigation.
2 Cliquez sur longlet Crer puis sur le bouton Assistant
Etat du groupe Etats.
La bote de dialogue Assistant Etat apparat. La table ou la requte
choisie prcdemment dans le Volet de navigation est slectionne
dans la zone Tables/Requtes. Vous pouvez modier ce choix dans
cette zone.
3 la premire tape de lAssistant, dplacez les champs de la
colonne Champs disponibles dans la colonne Champs slectionns,
en cliquant sur le bouton >>. Cliquez sur le bouton Suivant (voir
Figure 7.1).
Utiliser plusieurs tables dans un tat
Pour utiliser des champs issus de tables ou de requtes diffrentes, rp-
tez lopration de slection des tables et des requtes dans la zone Tables/
451 7.1. Crer des tats simples
Requtes et ajoutez les champs de votre choix dans la liste champs
slectionns de lAssistant. Cliquez sur le bouton Suivant.
La deuxime tape de lAssistant permet de spcier un regroupe-
ment des enregistrements sur un champ dans ltat. La proposition
de regroupement dAccess est modiable.
4 Slectionnez un champ de la liste gauche, puis cliquez sur le
bouton affichant le symbole > pour dnir un regroupement sur le
champ.
Le champ saffiche en bleu dans la partie droite.
Un regroupement peut tre cr sur plusieurs champs en respectant
un ordre que vous pouvez dnir laide des boutons de la rubrique
Priorit.
Figure 7.1 : La slection des
champs
Figure 7.2 : La dnition
dun regroupement
452 7. Restituer les donnes
Options de regroupement
Des options de regroupements peuvent tre dnies pour les champs des
types de donnes Numrique, Texte et Date. Cliquez pour cela sur le bouton
Options de regroupement dans la bote de dialogue de la deuxime tape de
lAssistant Etat. Pour chaque champ du regroupement, choisissez un inter-
valle de regroupement sur la liste propose. Les intervalles de regroupement
varient en fonction du type de champ utilis (si le champ est de type date, les
intervalles proposs seront les suivants : Normal, Anne, Trimestre, Mois,
Semaine, Jour, Heure ou Minute).
5 Cliquez sur le bouton Suivant.
La troisime tape de lAssistant permet de dnir un classement
des donnes de ltat.
6 Choisissez, dans la premire zone, le premier champ trier. Pour
passer dun tri croissant un tri dcroissant, utilisez le bouton
situ droite de la zone.
Ce bouton, si vous cliquez dessus, affiche conscutivement les libel-
ls Croissant et Dcroissant.
Les zones suivantes pourraient tre utilises pour dnir des critres
de tri secondaires.
Figure 7.3 : Le choix de lordre de prsentation des valeurs de ltat
453 7.1. Crer des tats simples
Dfinir des totaux par regroupement
Il est possible de crer des totaux la n de chaque regroupement, sil
existe un champ de type numrique sur la liste des champs afficher dans
ltat. Cliquez sur le bouton Options de synthse pour que ltat ralise des
totaux et des regroupements. La bote de dialogue Options de synthse
saffiche. Cochez une case pour effectuer le calcul qui devra tre ralis pour
un champ donn. Activez loption Dtail et total de la rubrique Afficher pour
afficher le dtail des donnes avec le calcul de synthse ou cochez la case
Total uniquement pour faire apparatre uniquement le calcul de synthse
dans ltat. Cochez ventuellement la case Calculer le pourcentage du total
pour les sommes pour effectuer le pourcentage. Cliquez sur le bouton OK
pour fermer la bote de dialogue.
7 Cliquez sur le bouton Suivant.
La quatrime tape permet de dnir lorganisation des donnes
dans ltat.
8 Choisissez lune des dispositions proposes sous la rubrique Dis-
position ainsi quune orientation sous la rubrique Orientation. Cli-
quez sur le bouton Suivant.
Les dispositions proposes uctuent si un regroupement a t para-
mtr.
Figure 7.4 : Les options des
oprations et des
regroupements effectus
dans ltat
Figure 7.5 : Le choix de la
disposition des donnes
dans ltat avec
regroupement
454 7. Restituer les donnes
La dernire tape de lAssistant permet de dnir laction effectuer
la n de son excution :
loption Aperu de ltat permet dafficher ltat en mode Aperu
avant impression an dy visualiser des donnes ;
loption Modier la structure de ltat permet dafficher la structure
de ltat en mode Cration.
10 Choisissez loption Aperu de ltat. Dans la zone Quel titre
souhaitez-vous pour votre tat ?, modiez ventuellement le nom
par dfaut de la table utilise dans ltat. Cliquez sur le bouton
Terminer.
la fermeture de lAssistant, ltat est automatiquement ouvert en
mode Aperu avant impression. Lutilisateur peut ds lors visualiser
un enregistrement.
Le mode Aperu avant impression est identique celui des autres
logiciels Microsoft. Vous pouvez y effectuer des zooms. Longlet
Aperu avant impression vous permet de visualiser ltat dans diff-
rents modes dagrandissement.
Dans le volet de navigation, ltat cr avec lAssistant apparat
maintenant sur la liste des tats.
11 Fermez ltat.
LAssistant Etiquette
Access permet de crer un type dtat particulier, ddi ldition
dtiquettes gnres depuis les donnes de la base de donnes.
1 Cliquez sur une table ou une requte dans le volet de navigation.
2 Cliquez sur longlet Crer puis sur le bouton Etiquette
du groupe Etats.
La bote de dialogue Assistant Etiquette apparat.
Figure 7.6 : Laffichage de ltat en mode Aperu avant impression
455 7.1. Crer des tats simples
3 la premire tape de lAssistant, une liste de fabricants dtiquet-
tes est propose. Choisissez un fabriquant dans la liste de la zone
Filtrer par fabricant. Choisissez un modle dtiquette dans la zone
Numro de rfrence.
4 Si le fabricant ou le modle dtiquette que vous utilisez nappa-
raissent pas, il vous est possible de personnaliser votre format
dtiquettes au moyen du bouton Personnaliser.
La bote de dialogue Nouvelle taille dtiquette saffiche.
5 Cliquez sur le bouton Nouveau an de dnir un nouveau format
dtiquette.
La bote de dialogue Nouvelle tiquette apparat.
6 Saisissez le nom qui dsignera le format dtiquette dans la zone
Nom dtiquette.
7 Dans les zones Unit de mesure, Type dtiquette et Orientation,
dnissez respectivement lunit dans laquelle vous indiquez les
dimensions (pouces ou centimtres), le type dalimentation des
feuilles dans limprimante (en feuille feuille ou en continu) ainsi
que lorientation de la feuille dtiquettes (en portrait ou en pay-
sage).
Figure 7.7 : La premire tape de lAssistant Etiquette
456 7. Restituer les donnes
8 Dans les zones de saisie de la zone Entrez les dimensions de lti-
quette, dnissez les dimensions des diffrents composants de la
feuille dtiquettes (tailles des tiquettes, retraits et marges).
9 Cliquez sur le bouton OK de la bote de dialogue.
10 De retour dans la bote de dialogue Nouvelle taille dtiquette,
cliquez sur le bouton Fermer.
Options complmentaires
La bote de dialogue Nouvelle taille dtiquette offre trois boutons permet-
tant de modier, de supprimer ou de dupliquer ltiquette prcdemment
dnie.
De retour dans lAssistant Etiquette, le nom du format dtiquettes
qui vient dtre dni apparat.
11 Cliquez sur le bouton Suivant.
Figure 7.8 : La bote de
dialogue Nouvelle tiquette
Figure 7.9 : Le nouveau
format dtiquette est
affich dans lAssistant
457 7.1. Crer des tats simples
12 ltape suivante de lAssistant, dnissez le nom de la police, sa
taille, son paisseur ainsi que sa couleur puis cliquez sur le bouton
Suivant.
13 ltape suivante de lAssistant, cliquez dans la zone Champs
disponibles sur le champ que vous souhaitez voir apparatre sur les
tiquettes puis sur le bouton > an de le dplacer vers la liste
Etiquette prototype. Rptez lopration pour chacun des champs
slectionner.
Ajout de texte fixe dans les tiquettes
Il vous est possible dajouter du texte xe (renfermant dventuels retours
la ligne) dans la zone Etiquette prototype.
14 Cliquez sur le bouton Suivant.
15 ltape suivante de lAssistant, optez pour un ventuel tri sur un
ou plusieurs champs puis cliquez sur le bouton Suivant.
16 la dernire tape de lAssistant, affectez un nom ltat dans la
zone Comment souhaitez-vous nommer votre tat ? puis cliquez sur
le bouton Terminer.
Choix du mode daffichage
la dernire tape de lAssistant Etiquette, il est par dfaut propos
dafficher les tiquettes en mode Aperu avant impression. Si vous souhaitez
Figure 7.10 : La dnition de la zone Etiquette prototype
458 7. Restituer les donnes
afficher ltat en mode Cration, optez pour loption Modier la structure
des tiquettes, dans la zone Que voulez-vous faire ?.
Crer un tat sans lAssistant
Voyons maintenant comment crer un tat rapidement ou en mode
Cration.
Crer un tat rapidement
Cette mthode est la plus rapide pour gnrer un tat :
1 Cliquez sur une table ou une requte dans le volet de navigation.
2 Cliquez sur longlet Crer puis sur le bouton Etat du groupe
Etats.
Le bouton Etat affiche des zones de texte correspondant aux champs
de la table ou de la requte choisie prcdemment, les unes ct
des autres avec une tiquette en en-tte de colonne (ltat est alors
affich en mode Page). Les enregistrements de la table sont affichs
les uns en dessous des autres.
Crer un tat avec le mode Cration
Ne vous laissez pas abuser par lapparente simplicit avec laquelle
les premiers tats ont t crs. Un tat doit, dans la plupart des cas,
tre constitu manuellement, cest--dire partir dun tat vierge, et
des objets contrles doivent y tre ajouts.
1 Cliquez sur longlet Crer puis sur le bouton Cration dtat
du groupe Etats.
Figure 7.11 : La cration rapide dun tat
459 7.1. Crer des tats simples
Le mode Cration dtat se caractrise par son onglet contextuel
Outils de cration dtat, laffichage dun onglet vierge intitul Etat1 et
affichant des zones appeles Dtail, En-tte de page et Pied de page.
La premire tape consiste affecter la source de donnes ltat
vierge depuis le volet des proprits de ltat.
Source de donnes
Comme dans les formulaires, la source de donnes reprsente lorigine
des donnes (une table ou une requte) qui seront affiches dans ltat.
Figure 7.12 : Ltat en mode Cration
460 7. Restituer les donnes
2 Pour afficher le volet des proprits de ltat, cliquez sur le bouton
Feuille des proprits du groupe Outils de longlet Outils de cration
dtat/Cration ou utilisez la combinaison des touches [Alt]+[].
Le volet Feuille de proprits de ltat saffiche.
Laffichage des proprits de ltat dans le volet Feuille de proprits
Vriez quEtat est choisi dans la liste Type de slection propose en haut
du volet Feuille de proprits an de pouvoir diter les proprits de ltat et
non dun autre objet.
3 Choisissez longlet Donnes puis une table ou une requte dans la
liste propose de la ligne Source.
La proprit Source contient la source de ltat. Dans lillustration
suivante, la table Disques est la source du formulaire.
Ltat est, pour linstant, vierge. Le mode opratoire qui suit montre
comment crer rapidement des zones de texte et les tiquettes
informatives qui les accompagnent.
4 Cliquez sur le bouton Ajouter des champs existants du groupe
Outils de longlet Outils de cration dtat/Cration .
Le volet Liste de champs saffiche. Il prsente la liste des champs qui
dpend de la "source du formulaire" choisie prcdemment.
5 Slectionnez tous les champs de la zone Champs disponibles pour
cette vue du volet Liste des champs. Pour cela, placez-vous sur le
Figure 7.13 : La proprit Source
461 7.1. Crer des tats simples
premier champ, maintenez la touche [Maj] enfonce et cliquez sur le
dernier champ. Maintenez le bouton de la souris enfonc et glissez
votre slection dans la zone Dtail de ltat.
Les champs sont affichs dans des contrles, chacun accompagn
dune tiquette. Une zone de texte et une tiquette ont t cres
dans ltat pour chaque champ de la table source.
Comme dans les formulaires, lobjet Etiquette est plac gauche
dune zone de texte qui affiche la valeur dun champ. Ltiquette
informe lutilisateur sur ce quil doit saisir dans la zone. Les tiquet-
tes utilisent par dfaut les valeurs des proprits Lgende des
champs, dnies dans la structure de la table utilise. Si une lgende
na pas t dnie, le nom du champ est utilis.
De mme, les zones de texte, quant elles, ont pour mission daffi-
cher les valeurs renfermes dans les champs de la table qui ont t
glisss prcdemment dans ltat. Vous pouvez vous en assurer en
double-cliquant sur lune des zones de texte. Sa fentre des propri-
ts saffiche. La proprit Source contrle, visible sous longlet
Donnes du volet, spcie le nom du champ utilis.
ce stade ltat est consultable en mode Rapport.
Figure 7.14 : Tous les champs de la table sont glisss dans ltat
462 7. Restituer les donnes
6 Cliquez sur le bouton Affichage de longlet Outils de cration
dtat/Cration.
Crer un tat vide
Une dernire manire de crer un tat est nomme "tat vide". Cette
mthode, rapide, est privilgier lorsque le nombre de champs
utiliss est peu important :
1 Sous longlet Crer, dans le groupe Etats, cliquez sur le bou-
ton Etat vide.
Access ouvre un tat vide en mode Page.
2 Si le volet Liste de champs nest pas apparent, affichez-le en cli-
quant sur le bouton Ajouter des champs existants du groupe Outils
de longlet Outils de prsentation dtat/Cration.
3 Dans le volet Liste de champs, cliquez sur le lien Afficher tous les
tableaux si aucune table ny est affiche.
4 Dans le volet Liste de champs, cliquez sur le signe +, gauche du
nom de la table de votre choix, an dafficher les champs quelle
renferme.
5 Double-cliquez sur le champ insrer dans ltat ou glissez-le dans
ce dernier.
Visualiser les donnes de ltat
Aprs avoir cr un tat, il est frquent de sassurer du rsultat nal
en mode Aperu avant impression et, le cas chant, de modier sa
mise en page. Ensuite, dans la trs grande majorit des cas, ltat
sera imprim.
Figure 7.15 : Linsertion de zones de texte dans le formulaire depuis le volet Liste de champs
463 7.1. Crer des tats simples
Utiliser les modes daffichage
Access vous propose plusieurs modes de restitution de ltat vous
permettant den assurer le contrle de cohrence(le mode Etat) et dy
apporter dventuelles corrections (le mode Page) ainsi que deffec-
tuer la vrication de la sortie imprime (le mode Aperu avant
impression).
Utiliser le mode Etat
Ce mode vous sera utile pour vrier les donnes affiches dans
ltat. Statique, il ne vous permettra pas deffectuer dinvolontaires
modications de mise en forme, lors dun pointage des donnes, par
exemple. Certaines fonctionnalits de marquage temporaire des in-
formations vous seront toutefois proposes, utiles, entre autres,
pour vous permettre davancer facilement dans votre travail de
contrle.
Pour afficher un tat en mode Etat, utilisez lune des mthodes
suivantes.
j Dans la liste des objets du Volet de navigation de la base de
donnes, double-cliquez sur ltat ou cliquez du bouton droit sur
celui-ci et choisissez Ouvrir dans le menu contextuel qui apparat.
j Si ltat est ouvert en mode Page ou en mode Cration, cliquez sur
le bouton Affichage de longlet Outils de prsentation dtat
/Cration.
j Si ltat est ouvert dans un autre mode que le mode Etat, cliquez
du bouton droit sur ltat affich puis choisissez Mode Etat dans le
menu contextuel qui saffiche.
j Vous pouvez galement cliquer sur le bouton Mode Etat prsent
en bas et droite de la fentre dAccess, dans la Barre dtat.
Figure 7.16 : Le mode Etat
464 7. Restituer les donnes
Particularits et limites du mode Etat
Si vous utilisez ce mode pour effectuer un pointage de donnes, il vous est
possible de marquer temporairement une ou plusieurs lignes, pour en facili-
ter la lecture, en cliquant sur celles-ci.
Comme le mode Page, dcrit ci-aprs, le mode Etat nautorise pas le zoom. De
plus, ltat est affich dans son intgralit, sans faire apparatre les sauts de
page. Le mode Aperu avant impression, dcrit plus loin dans cette section,
ne subit pas quant lui ces limitations.
Utiliser le mode Page
Ce mode est mixte : il permet laffichage des donnes de ltat tout
en autorisant certaines modications de mise en forme, telles que
lajout de nouveaux champs ou encore la modication des regrou-
pements.
Pour afficher un tat en mode Page, utilisez lune des mthodes
suivantes :
j Dans la liste des objets du Volet de navigation de la base de
donnes, cliquez du bouton droit sur le nom de ltat et choisissez
Mode Page dans le menu contextuel qui apparat.
j Si ltat est ouvert en mode Etat ou en mode Cration, cliquez sur
la che du bouton Affichage de longlet Accueil. Choisissez Mode
page dans le menu qui saffiche.
j Si ltat est ouvert dans un autre mode que le mode Page, cliquez
du bouton droit sur ltat affich puis choisissez Mode Page dans le
menu contextuel qui saffiche.
j Vous pouvez galement cliquer sur le bouton Mode Page prsent
en bas et droite de la fentre dAccess, dans la Barre dtat.
Figure 7.17 : Le mode Page
465 7.1. Crer des tats simples
Afficher un tat en mode Aperu avant impression
Comme son nom lindique, ce mode permet de visualiser ltat
lcran tel quil sera imprim. Les pages et les sauts de page y sont
reprsents lchelle et une fonctionnalit de zoom permet de
grossir ou de rduire volont le document.
Pour afficher un tat en mode Aperu avant impression, utilisez lune
des mthodes suivantes :
j Dans la liste des objets du Volet de navigation de la base de
donnes, cliquez du bouton droit sur ltat et choisissez Aperu
avant impression dans le menu contextuel qui apparat.
j Aprs avoir slectionn un tat dans le Volet de navigation ou
lavoir affich dans un autre mode, cliquez sur longlet Fichier puis
sur Imprimer puis cliquez sur Aperu avant impression.
j Si ltat est ouvert dans un autre mode que le mode Aperu avant
impression, cliquez sur la che du bouton Affichage de longlet
Accueil puis choisissez Aperu avant impression dans le menu qui
saffiche.
j Si ltat est ouvert dans un autre mode que le mode Aperu avant
impression, cliquez du bouton droit sur ltat affich puis choisis-
sez Aperu avant impression dans le menu contextuel qui saffiche.
j Vous pouvez galement cliquer sur le bouton Aperu avant
impression prsent en bas et droite de la fentre dAccess, dans
la Barre dtat.
Longlet Aperu avant impression propose de nombreux boutons
autorisant des modications de laffichage et de la mise en page.
Figure 7.18 : Le mode Aperu avant impression
466 7. Restituer les donnes
Limiter laffichage des donnes du mode Aperu avant impression
Si votre tat est destin afficher beaucoup de donnes, lAperu avant
impression mettra un certain temps souvrir. Si vous dsirez seulement
avoir un aperu du rsultat pendant la conception de ltat, effectuez un clic
droit sous la zone de pied dtat puis, dans le menu contextuel qui apparat,
choisissez Aperu des 10 premiers enregistrements. Le mode Aperu avant
impression naffiche alors quun chantillon de donnes (ce type daffichage
est beaucoup plus rapide).
Vous pouvez vous dplacer entre les pages affiches dans un tat en
mode Aperu avant impression.
Les boutons de dplacement sont regroups en bas de longlet de
ltat. Leur fonction est de permettre des dplacements faciles entre
les pages de ltat.
Ces boutons et la zone daffichage qui les accompagne permettent
respectivement les oprations suivantes :
j le dplacement sur la premire page de ltat ;
j le dplacement sur la page prcdant la page en cours ;
j laffichage du numro de page en cours ;
j le dplacement sur la page suivant la page en cours ;
j le dplacement sur la dernire page de ltat.
Atteindre une page
Pour atteindre une page, cliquez dans la zone daffichage Page actuelle
puis validez par la touche [].
Figure 7.19 : Les boutons de dplacement
467 7.1. Crer des tats simples
Quitter le mode Aperu avant impression
Pour quitter ce mode, utilisez le bouton Fermer laperu avant impression
de longlet Aperu avant impression. Le prcdent mode est alors ractiv.
Mettre en page un tat
La mise en page de ltat permet le paramtrage de la sortie impri-
me du document.
1 Affichez ltat en mode Aperu avant impression.
2 Utilisez les diffrents boutons des groupes Taille de la page et Mise
en page de longlet Aperu avant impression.
3 Pour accder lintgralit des paramtres de la mise en page
depuis la bote de dialogue Mise en page, cliquez sur le bouton
Mise en page de longlet Aperu avant impression ou cliquez du
bouton droit dans ltat, puis choisissez Mise en page dans le menu
qui apparat.
Autre mthode daccs la mise en page de ltat
La modication de la mise en page est galement accessible depuis longlet
Outils de cration dtat/Mise en page des modes Page et Cration.
La bote de dialogue Mise en page saffiche. Elle autorise le param-
trage des lments suivants :
j les marges sous longlet Options dimpression ;
j lorientation et la taille du papier sous longlet Page ;
j la dnition de la grille et des colonnes sous longlet Colonnes
(voir Figure 7.21).
4 Cliquez sur le bouton OK de la bote de dialogue.
Figure 7.20 : Le groupe Mise en page depuis le mode Aperu avant impression
468 7. Restituer les donnes
Imprimer un tat
1 Affichez ltat en mode Aperu avant impression.
2 Cliquez sur le bouton Imprimer de longlet Aperu avant impression
ou utilisez la combinaison de touches [Ctrl]+[P]. Vous pouvez gale-
ment cliquer sur longlet Fichier puis choisir Imprimer/Imprimer.
La bote de dialogue Imprimer saffiche.
3 Pour spcier que toutes les pages de ltat doivent tre impri-
mes, choisissez loption Tout de la rubrique Imprimer. Pour dnir
une plage de pages, cochez loption Pages de la rubrique Imprimer,
puis saisissez le numro de la premire page ainsi que celui de la
dernire page imprimer.
4 Prcisez le nombre dexemplaires imprimer en le saisissant dans
la zone Nombre de copies de la rubrique Copies.
5 Cliquez sur le bouton OK de la bote de dialogue.
Modier un tat en mode Cration
Un tat peut tre personnalis en mode Cration.
Afficher la structure dun tat
Cette section dtaille les lments de linterface du mode Cration de
ltat. Plusieurs techniques soffrent vous pour ouvrir un tat dans
ce mode.
Figure 7.21 : La mise en
page de ltat
469 7.1. Crer des tats simples
j Dans la liste des objets du Volet de navigation de la base de
donnes, cliquez du bouton droit sur le nom dun tat et choisissez
Mode Cration dans le menu contextuel qui apparat.
j Si ltat est ouvert en mode Etat ou en mode Page, cliquez sur la
che du bouton Affichage de longlet Accueil puis choisissez Mode
Cration dans le menu qui saffiche.
j Si ltat est ouvert dans un autre mode que le mode Cration,
cliquez du bouton droit sur le nom de longlet de ltat puis choi-
sissez Mode Cration dans le menu contextuel qui apparat.
j Si ltat est ouvert dans un autre mode que le mode Cration, vous
pouvez galement cliquer sur le bouton Mode Cration prsent en
bas et droite de la fentre dAccess, dans la Barre dtat.
Linterface du mode Cration se compose principalement :
j de sections (dtail, en-tte et pied dtat, en-tte et pied de page et
en-tte et pied de groupe) ;
j de contrles (tiquettes, zones de texte, listes droulantes, cases
cocher, etc.) ;
j de rgles (horizontale et verticale) ;
j dun volet des proprits ;
Figure 7.22 : Le mode Cration
470 7. Restituer les donnes
j des onglets Cration, Organiser, Format et Mise en page de longlet
contextuel Outils de cration dtat.
Utiliser les sections de ltat
Un tat se compose dau moins sept sections dont la principale est la
section Dtail. Les autres sections, dont lusage est facultatif, saffi-
chent par paires dans ltat : len-tte dtat et le pied dtat, len-tte
de page et le pied de page, les en-ttes et les pieds de groupe.
j La section Dtail permet dafficher des contrles tels que des
tiquettes, des zones de texte et ne peut pas tre supprime. Cette
section est la principale zone daffichage des donnes des tables et
des requtes.
j La section En-tte dtat apparat dans la partie suprieure de ltat.
Elle est gnralement rserve laffichage dinformations com-
munes aux donnes prsentes, comme le titre de ltat dans la
premire page de ltat.
j La section Pied dtat apparat dans la partie infrieure de ltat.
linverse de la prcdente, elle est gnralement rserve laffi-
chage dinformations ou des commentaires dans la dernire page
de ltat.
Pour afficher ou masquer les sections En-tte dtat et Pied dtat,
suivez la procdure dcrite ci-aprs.
1 Affichez ltat en mode Cration.
2 Effectuez un clic droit sur lentte dune zone, puis choisissez
En-tte/pied de rapport dans le menu contextuel qui saffiche.
Figure 7.23 : Les principaux composants de la structure dun tat
471 7.1. Crer des tats simples
Masquer seulement une section en mode Cration
Pour masquer une section laffichage des donnes dans les modes Etat,
Page et Aperu avant impression, cliquez en mode Cration sur la section
masquer et affichez le volet des proprits en utilisant le bouton Feuille des
proprits du groupe Outils de longlet Outils de cration dtat/Cration.
Choisissez Non pour la proprit Visible. Ainsi, la section choisie reste affi-
che en mode Cration mais elle est masque dans les autres modes.
j La section En-tte de page renferme les objets placs dans la partie
suprieure de ltat et affiche des informations telles que des
en-ttes de colonnes qui se rptent sur chaque page.
j La section Pied de page renferme les objets placs dans la partie
infrieure (la date par exemple) de ltat et qui sont affichs sur
chaque page.
Pour afficher ou masquer les sections En-tte de page et Pied de page,
procdez comme dcrit ci-aprs.
1 Affichez ltat en mode Cration.
2 Cliquez du bouton droit sur lentte dune section et choisissez
En-tte et pied de page dans le menu contextuel qui apparat.
j La section En-tte de groupe renferme les zones de texte du
regroupement qui saffichent chaque changement de groupe.
Figure 7.24 : Laffichage de lentte et du pied dtat
Figure 7.25 : Ici, la section Pied dtat
sera masque
472 7. Restituer les donnes
j La section Pied de groupe renferme les zones de texte du regrou-
pement telles des totaux qui saffichent chaque n de groupe.
Pour afficher les sections En-tte de groupe et Pied de groupe, il est
ncessaire davoir prcdemment cr un ou plusieurs regroupe-
ments (cette opration est explicite plus loin dans cette section).
Oprez alors comme suit pour afficher les sections En-tte de groupe
et Pied de groupe.
1 Affichez ltat en mode Cration.
2 Cliquez sur longlet Outils de cration dtat/Cration puis sur le
bouton Regrouper et trier du groupe Regroupement et totaux ou
cliquez du bouton droit dans une section et choisissez Trier et
grouper dans le menu contextuel qui apparat.
3 Cliquez sur le bouton Plus de la ligne Regrouper sur du regroupe-
ment qui est affich dans le volet Regrouper, trier et total de la
partie infrieure de longlet de ltat.
4 Choisissez dans la premire liste avec une section den-tte ou sans
section den-tte pour afficher ou masquer len-tte du groupe.
5 Choisissez dans la deuxime liste avec une section de pied de page
ou sans section de pied de page pour afficher ou masquer le pied de
groupe.
En mme temps que vous ralisez ces deux modications, la section
En-tte de groupe et la section Pied de groupe du champ saffichent
dans ltat avant et aprs la section Dtail.
Figure 7.26 : Laffichage de len-tte et du pied de groupe
473 7.1. Crer des tats simples
Regroupement
Dans un tat, ce terme dsigne le fait de rassembler les enregistrements
dont les contenus dun ou de plusieurs champs sont identiques.
Utiliser les proprits et les objets contrles
Les utilisations des proprits, des mises en forme de ltat et des
contrles de ltat sont analogues celles pratiques dans les for-
mulaires et accessibles notamment via les onglets Outils de cration
dtat/Cration, Organiser et Format de longlet contextuel Outils de
cration dtat.
Reportez-vous au chapitre 6 Amliorer la saisie pour plus dinfor-
mations sur ce sujet.
Trier les donnes
Les donnes affiches dans les tats sont tries dans la plus grande
majorit des cas.
1 Affichez ltat en mode Cration.
Le tri le plus frquent est effectu sur un champ unique.
2 Dans une section den-tte de groupe ou dans la section dtail,
cliquez du bouton droit sur la zone de texte du champ trier,
cliquez sur Tri croissant ou Tri dcroissant dans le menu contextuel
qui saffiche.
Effectuer un tri depuis le mode Page
Le tri est galement possible depuis le mode Page, en utilisant la mme
mthode que dcrit prcdemment. Le rsultat du tri est alors immdiate-
ment visible puisque les donnes sont prsentes dans lordre choisi.
Limitation de ce mode opratoire
En mode Page comme en mode Cration, la ralisation dun tri opr en
cliquant du bouton droit sur une zone de texte nautorise quun tri sur un
champ unique. En effet, si un tri a t effectu sur une zone puis quun second
est effectu, le premier tri est annul au prot du second.
474 7. Restituer les donnes
Un tri sur plusieurs champs est galement possible. Il vous faudra
alors dnir les tris conscutifs en utilisant longlet Regrouper, trier et
total.
3 Depuis le mode Cration, cliquez sur longlet Outils de cration
dtat/Cration puis sur le bouton Regrouper et trier du groupe
Regroupement et totaux ou cliquez du bouton droit dans une sec-
tion et choisissez Trier et grouper dans le menu contextuel qui
apparat.
Le volet Regrouper, trier et total apparat dans la partie infrieur de
longlet.
4 Pour ajouter un tri, cliquez sur Ajouter un tri dans le volet
Regrouper, trier et total.
Une ligne Trier par saffiche dans le volet Regrouper, trier et total ainsi
que la liste des champs disponibles. Si la liste napparat pas, cliquez
sur la che slectionner le champ.
Figure 7.27 : La cration dun
tri depuis le volet Regrouper,
trier et total
475 7.1. Crer des tats simples
5 Cliquez sur un champ de la liste propose ou cliquez sur expres-
sion en bas de la liste de champs pour entrer une expression.
La ligne Trier par est complte par le champ ou lexpression saisie
dans le volet Regrouper, trier et total.
6 Pour spcier lordre du tri, choisissez avec A en haut ou avec Z en
haut (ou le menu correspondant, en fonction du type de donnes
du champ trier, du plus ancien au plus rcent ou du plus rcent au
plus ancien, par exemple) depuis la deuxime che de la ligne
Trier par (en effet, le libell indiquant lordre du tri change en
fonction du type de donnes du champ).
Il est possible de crer des tris sur plusieurs champs en crant autant
de lignes dans le volet que de tris. Rptez dans ce cas les tapes 4
6. Il vous est possible de dnir jusqu dix niveaux de tri dans un
tat.
7 Pour modier le niveau des tris, utilisez les boutons Monter ou
Descendre aprs avoir cliqu sur la ligne du tri Trier par dans le
volet Regrouper, trier et total.
Figure 7.28 : Le choix du champ dterminant le tri
Figure 7.29 : La dnition de
lordre dun tri
476 7. Restituer les donnes
Suppression dun tri
Affichez le volet Regrouper, trier et total en utilisant le bouton Regrouper
et trier du groupe Regroupement et totaux de longlet Outils de cration
dtat/Cration. Pour supprimer un tri, cliquez sur le bouton Supprimer
symbolis par une croix situe droite de la ligne Trier par ou cliquez sur la
ligne de tri supprimer puis utilisez la touche [Suppr].
Regrouper les donnes
Il est possible de regrouper des enregistrements sur un ou plusieurs
champs et dafficher les sous-totaux et les totaux gnraux dans un
tat. Le mode opratoire est presque identique celui utilis pour
effectuer un tri.
Le regroupement de donnes ncessite lajout de la section En-tte
de groupe et/ou de la section Pied de groupe dun champ dans ltat
affich. Procdez ainsi :
1 Affichez ltat en mode Cration.
2 Cliquez sur longlet Outils de cration dtat/Cration puis
sur le bouton Regrouper et trier du groupe Regroupement et
totaux ou cliquez du bouton droit dans une section et choi-
sissez Trier et grouper dans le menu contextuel qui apparat.
Le volet Regrouper, trier et total apparat dans la partie infrieur de
longlet.
Effectuer un regroupement en mode Page
Si vous utilisez le mode Page, le regroupement apparatra immdiatement
lcran
3 Pour ajouter un nouveau regroupement, cliquez sur Ajouter un
groupe dans le volet Regrouper, trier et total.
Figure 7.30 : Larborescence des niveaux de tris
477 7.1. Crer des tats simples
Une ligne Regrouper sur saffiche dans le volet Regrouper, trier et total
ainsi que la liste des champs disponibles. Si la liste napparat pas,
cliquez sur la che slectionner le champ.
4 Cliquez sur un champ de la liste propose ou cliquez sur expres-
sion en bas de la liste de champs pour entrer une expression.
La ligne Regrouper sur est complte par le champ ou lexpression
saisie dans le volet Regrouper, trier et total.
En mme temps que vous ralisez cette opration, la section En-tte
de groupe du champ saffiche dans ltat avant la section Dtail.
Le rle des en-ttes de groupes
Bien que lutilisation des en-ttes de groupes ne soit pas obligatoire,
ceux-ci facilitent considrablement la lecture de ltat et en amliorent la
prsentation. En effet, dans la majorit des tats, les en-ttes de groupes sont
utiliss an dafficher une unique fois la donne sur laquelle est affect le
regroupement (vitant ainsi la rptition fastidieuse de la mme information
dans plusieurs lignes de ltat).
Figure 7.31 : La cration dun regroupement depuis le volet Regrouper, trier et total
Figure 7.32 : La slection du champ
478 7. Restituer les donnes
5 La section den-tte affiche est pour linstant vide. Insrez-y la
zone de texte du champ correspondant au regroupement.
Lillustration suivante montre, par exemple, que la ville sera affiche
chaque changement de ville.
Il est possible de crer des regroupements sur plusieurs champs en
dnissant autant de lignes dans le volet que de regroupements.
Rptez pour ce faire les tapes 3 5. Vous pouvez dnir jusqu dix
niveaux de regroupement dans un tat.
6 Pour modier le niveau des regroupements, utilisez les boutons
Monter ou Descendre aprs avoir cliqu sur la ligne du regroupe-
ment Regrouper sur dans le volet Regrouper, trier et total.
Suppression dun regroupement
Affichez le volet Regrouper, trier et total en utilisant le bouton Regrouper
et trier du groupe Regroupement et totaux de longlet Outils de cration
dtat/Cration. Pour supprimer un regroupement, cliquez sur le bouton
Supprimer symbolis par une croix situe droite de la ligne Regrouper sur
ou cliquez sur la ligne du regroupement supprimer puis utilisez la touche
[Suppr]. Les objets qui gurent dans les sections de groupe sont supprims. De
mme, lorsquun regroupement est supprim, les sections den-tte et pied
de groupe sont systmatiquement supprimes.
Figure 7.33 : Laffichage de la
ville dans len-tte de groupe
479 7.1. Crer des tats simples
Insrer des totaux
Lun des intrts majeurs des regroupements est de pouvoir effec-
tuer des calculs intermdiaires, spciques aux donnes regrou-
pes. Les calculs les plus frquents sont ceux de la somme de
donnes numriques regroupes ou du comptage des informations
regroupes pour chaque regroupement. Procdez ainsi :
1 Aprs avoir cr un regroupement, cliquez sur le bouton Plus de la
ligne Regrouper sur du regroupement dans le volet Regrouper, trier
et total.
2 Cliquez sur la che propose droite du bouton sans totaux et
choisissez le nom du champ sur lequel devra seffectuer lopra-
tion dans la liste qui est alors affiche dans la zone Total sur.
3 Dans la zone Type, choisissez lopration effectuer.
4 Cochez lune des cases proposes plus bas pour indiquer lempla-
cement du calcul dans ltat.
Afficher uniquement les totaux
Vous pouvez souhaiter ne voir apparatre que les totaux dans ltat. Pour
ce faire, en mode Cration, affichez les proprits de la section Dtail et
choisissez la valeur Non la proprit Visible de longlet Format du volet
Feuille de proprits.
Une autre mthode consiste cliquer sur le bouton
Masquer les dtails du groupe Regroupement et totaux
de longlet Outils de cration dtat/Cration.
Si lopration est effectue depuis le mode Page, le bouton Masquer les
dtails est accessible partir de longlet Format.
Figure 7.34 : Linsertion de totaux, ici dans un pied de groupe
480 7. Restituer les donnes
Insrer un saut de page
Les sauts de page peuvent tre insrs manuellement dans les tats.
1 Affichez ltat en mode Cration.
2 Cliquez sur longlet Outils de cration dtat/Cration puis sur
le bouton Insrer un saut de page du groupe Contrles.
3 Cliquez dans ltat lendroit o vous souhaitez placer le saut de page.
Le saut de page est symbolis par un trait en pointill sur le bord
gauche de ltat.
Il est galement possible de gnrer automatiquement des sauts de
page dtermins par la position des sections.
1 Affichez ltat en mode Cration.
2 Double-cliquez dans une section (un pied de groupe, par exemple)
pour afficher ses proprits. Dans la proprit Saut de page de
longlet Format du volet Feuille de proprits choisissez lune des
valeurs suivantes sur la liste droulante :
Avant section pour imprimer les donnes de la section sur une
nouvelle page ;
Aprs section pour imprimer les donnes de la section suivante
sur une nouvelle page ;
Avant & aprs section pour imprimer les donnes de la section
sur une nouvelle page et celles de la section suivante sur une
nouvelle page.
Figure 7.35 : La cration dun saut de page
Figure 7.36 : Le paramtrage
des sauts de pages lis aux
sections
481 7.1. Crer des tats simples
Fermer et enregistrer un tat
Une fois la structure dun tat dnie, en mode Cration, le travail
doit tre mmoris par Access. Pour cela, ltat doit tre ferm et
enregistr.
1 Pour fermer longlet Etat1, cliquez sur le bouton Fermer symbolis
par une croix dans langle suprieur droit de longlet ou utilisez la
combinaison de touches [Ctrl]+[F4].
Si ltat a t modi depuis son prcdent enregistrement, la bote
de dialogue Microsoft Office Access apparat et vous demande si vous
souhaitez enregistrer ltat.
2 Cliquez sur le bouton Oui.
La bote de dialogue Enregistrer sous apparat, si ltat na pas encore
t enregistr. Dans le cas contraire, ltat est enregistr avec le nom
qui lui a dj t affect et la bote de dialogue Enregistrer sous
napparat pas.
3 Si la bote de dialogue Enregistrer sous apparat, remplacez Etat1
dans la zone Nom de ltat par votre propre nom, puis cliquez sur le
bouton OK.
Enregistrer nouveau ltat
Les oprations dcrites dans ce qui prcde supposent que ltat est
enregistr pour la premire fois. Dans le cas contraire, pour enregistrer la
nouvelle version de ltat avec le mme nom, utilisez la combinaison de
touches [Ctrl]+[S] ou cliquez sur longlet Fichier puis choisissez le menu Enre-
gistrer.
7.2. Crer des tats avancs
Un tat principal est un tat qui contient au moins un sous-tat. Un
sous-tat est un tat contenu dans un tat.
Il est donc possible de crer ultrieurement un sous-tat dans un tat
existant.
1 Ouvrez en mode Cration ltat auquel vous souhaitez ajouter le
sous-tat.
2 Dans le groupe Contrles de longlet Outils de cration dtat
/Cration, vriez que le bouton Utiliser les Assistants Contrle est
482 7. Restituer les donnes
activ (fond orange), cliquez sur le bouton Sous-formulaire
/Sous-tat puis dans ltat.
La fentre de lAssistant Sous-tat saffiche.
3 Choisissez loption Utiliser les tables et les requtes existantes pour
dterminer la source de ltat crer et utiliser comme sous-tat
ou loption Utiliser un tat ou un formulaire existant et slectionnez
dans ce cas, sur la liste, ltat utiliser comme sous-tat. Cliquez
sur le bouton Suivant.
Ltape suivante est excute si loption Utiliser les tables et les requ-
tes existantes a t choisie ltape prcdente.
Figure 7.37 : Lajout du sous-tat est facilit lorsque le bouton Assistants contrle est activ
Figure 7.38 : Ltat ajout peut tre cr ou choisi parmi les tats existants
483 7.2. Crer des tats avancs
4 Choisissez sur la liste de la zone Tables/Requtes, la table ou la
requte utiliser comme source de ltat crer. Dplacez les
champs de la liste Champs disponibles sur la liste Champs slec-
tionns. Cliquez sur le bouton Suivant.
5 Choisissez lune des options proposes pour indiquer le lien entre
ltat principal et le sous-tat :
Loption Choisir partir dune liste permet de sappuyer sur une
ventuelle relation existante.
Loption Les dnir moi-mme permet de crer le lien partir des
zones Champs du formulaire/de ltat et Champs du sous-formu-
laire/de ltat.
Figure 7.39 : La slection des champs affichs dans le sous-tat
Figure 7.40 : Ici, une relation temporaire va tre dnie
484 7. Restituer les donnes
6 Cliquez sur le bouton Suivant de la fentre de lAssistant.
7 la dernire tape de lAssistant, modiez ventuellement le nom
du sous-tat, puis cliquez sur le bouton Terminer.
Le sous-tat est cr dans ltat principal. Il est modiable depuis le
mode Cration de ltat principal, mais galement depuis le Volet de
navigation.
8 Pour vrier le lien dni par lAssistant entre les deux tats, en
mode Cration, cliquez sur le sous-tat, affichez son volet des
proprits puis cliquez sur longlet Donnes.
La proprit Objet source dnit le nom du sous-tat. Les proprits
Champs ls et Champs pres dnissent le lien dni dans lAssistant.
Le lien est constitu par la valeur du champ commune aux deux listes
de champs des tats.
7.3. Cas pratique
Vous allez raliser maintenant limpression dun carnet dadresses
laide de lAssistant ; et des modications seront apportes ltat
cr.
Un tat et un sous-tat seront ensuite constitus an de visualiser les
factures dans lapplication de gestion des factures que vous avez
dveloppe dans les chapitres prcdents.
Tlchargement de la base de donnes
Vous trouverez la base de donnes Facturation livres7.accdb utilise dans
ce chapitre sur le site de Micro Application (www.microapp.com) dans le dossier
Chapitre07.
Figure 7.41 : La dnition du lien entre ltat principal et le sous-tat dans le volet des proprits
485 7.3. Cas pratique
Raliser un tat du carnet dadresses
avec lAssistant
Vous allez raliser un tat rcapitulatif des adresses avec lAssistant
Etat an dimprimer les donnes de la table des contacts. Procdez
ainsi :
1 Ouvrez la base de donnes Facturation livres7. accdb.
2 Cliquez sur la table Contacts dans le volet de navigation puis sur le
bouton Assistant Etat du groupe Etats de longlet Crer.
3 la premire tape de lAssistant, dplacez les champs de la
colonne Champs disponibles dans la colonne Champs slectionns,
en cliquant sur le bouton >>, puis cliquez sur le bouton Suivant.
4 la deuxime tape de lAssistant, ne choisissez pas de regrou-
pement et cliquez sur Suivant.
5 la troisime tape de lAssistant, choisissez de trier les enregis-
trements sur le champ nom dans lordre Croissant sur la premire
liste droulante, puis cliquez sur le bouton Suivant.
6 la quatrime tape, choisissez la disposition Verticale et lorien-
tation Portrait, puis cliquez sur le bouton Suivant.
7 Donnez le titre Carnet dadresses ltat. Laissez loption Aperu de
ltat coche puis cliquez sur Terminer la dernire tape.
la fermeture de lAssistant, ltat est automatiquement ouvert en
mode Aperu avant impression.
Figure 7.42 : Le choix de lAssistant et de la table
486 7. Restituer les donnes
8 Fermez ltat.
Raliser ltat des factures
Vous allez maintenant raliser un tat en mode Cration et utilisant des
calculs. Votre objectif sera dimprimer les factures. Vous allez donc crer
un tat employant plusieurs tables en mode Cration. Procdez ainsi :
1 Cliquez sur longlet Crer puis sur le bouton Cration dtat du
groupe Etats.
Longlet vierge Etat1 saffiche avec les trois sections En-tte de page,
Dtail et Pied de page en mode Cration.
Vous allez ajouter une tiquette que vous personnaliserez :
2 Cliquez sur le bouton Etiquette de longlet Cration de longlet
contextuel Outils de cration dtat. Cliquez dans len-tte de page de
ltat pour y poser ltiquette et saisissez FACTURE dans ltiquette.
Cliquez en dehors de la zone pour sortir du mode ddition.
Double-cliquez dessus pour visualiser ses proprits dans le volet
des proprits.
3 Pour changer lapparence de ltiquette selon vos gots, modiez des
proprits de longlet Format (Couleur texte, Taille de police, etc.)
dans le volet des proprits de ltiquette ou utiliser les boutons
du groupe Police de longlet Outils de cration dtat/Format.
Figure 7.43 : Laperu avant impression, sur deux pages
487 7.3. Cas pratique
4 Cliquez sur longlet Outils de cration dtat/Organiser puis sur le
bouton Taille/Espace et enn sur Au contenu pour ajuster la taille
de ltiquette son contenu.
La source de votre tat est vide pour linstant. Vous souhaitez afficher
toutes les factures avec leurs lignes. Vous allez crer une requte, qui
sera la source de ltat et va extraire pour chaque facture de la table
Factures, les lignes de facture de la table Factureligne.
5 Affichez le volet des proprits de ltat. Dans la proprit Source
de longlet Donnes, accdez au Gnrateur de requte en cliquant
sur les trois points.
Figure 7.44 : Lajout dune tiquette dans len-tte de ltat
Figure 7.45 : Lajout des tables la requte
488 7. Restituer les donnes
6 Dans la bote de dialogue Afficher la table, slectionnez les tables
Contacts, Factureligne, Factures, Livres et Taxes en maintenant la
touche [Ctrl] enfonce. Cliquez sur le bouton Ajouter puis sur le
bouton Fermer de la bote de dialogue.
7 Sur la liste des tables de la fentre Etat1 : Gnrateur de requte,
vriez que toutes les tables et les jointures sont affiches.
Il vous faut maintenant crer toutes les colonnes de la requte dans
la grille de cration.
8 Dans la premire colonne de la grille de cration, choisissez tous
les champs de la table Factures en slectionnant Factures.*. Choi-
sissez les champs nom, societe, adresse, ville et cp dans la table
Contacts. Dans la table Factureligne, retenez le champ quantite.
Dans la table Livres, prenez les champs nolivre, titre, prixHT. Dans
la table Taxes, choisissez le champ tva.
9 Fermez et enregistrez la fentre du Gnrateur de requte.
La proprit Source de ltat contient maintenant la requte SQL.
Vous allez afficher les informations qui constitueront la base de
len-tte de la facture.
10 Affichez la liste des champs de ltat, si elle nest pas affiche, en
cliquant sur le bouton Ajouter des champs existants du groupe
Outils de longlet Outils de cration dtat/Cration.
11 Slectionnez les champs nofacture, nocontact, datefacture, nom,
societe, adresse, cp et ville en maintenant la touche [Maj] enfonce
depuis la liste des champs. Glissez-les dans la section En-tte de
page.
Figure 7.46 : Les colonnes de la requte
489 7.3. Cas pratique
Vous allez maintenant choisir les informations qui constitueront la
base de la section Dtail de la facture.
12 Glissez les champs quantite, nolivre, titre, prixHT et tva dans la
section Dtail. Supprimez les tiquettes de chaque zone de texte,
alignez les zones horizontalement et donnez-leur une taille cor-
recte.
Un regroupement sur le numro de facture va permettre de grouper
les factures par numros de la source de ltat.
13 Cliquez du bouton droit dans une section de ltat puis choisissez
Trier et grouper dans le menu contextuel qui saffiche. Dans le volet
Regrouper, trier et total, cliquez sur le bouton Ajouter un groupe
puis choisissez nofacture dans la liste propose.
La ligne Regrouper sur nofactures saffiche dans le volet.
14 Conservez lordre de tri Du plus petit au plus grand dans la
deuxime liste de la ligne. Cliquez sur le bouton Plus de la ligne
puis vriez que la mention avec une section den-tte est choisie
ainsi que la mention avec une section de pied de page an dafficher
les sections En-tte de groupe nofacture et Pied de groupe nofacture
dans ltat (voir Figure 7.48).
15 Fermez le volet Regrouper, trier et total.
Le regroupement fait apparatre les donnes du groupe dans la zone
de dtail. Les pieds de groupe vont afficher les totaux du groupe. Les
en-ttes et les pieds de page affichent des informations gnriques.
Vous allez dnir des en-ttes de colonne de la zone Dtail.
Figure 7.47 : Lajout des zones de texte dans la section Dtail
490 7. Restituer les donnes
16 Dans la section En-tte de groupe nofacture, insrez des tiquettes
au-dessus de chaque zone de texte de la zone Dtail. Nommez
respectivement ces tiquettes Rfrence, Livre, Quantit, Prix uni-
taire HT et TVA. Mettez ventuellement ces objets en forme en
utilisant les boutons des onglets Outils de cration dtat/Format et
Organiser.
Vous allez crer une ligne sparatrice en dessous de ces tiquettes.
17 Cliquez sur le bouton Trait du groupe Contrles de longlet Outils de
cration dtat/Cration. Tracez la ligne en vous plaant en dessous
des cinq tiquettes. Modiez lpaisseur de la ligne en utilisant la
proprit Epaisseur bordure et sa couleur en employant Couleur
bordure dans sa feuille des proprits.
Figure 7.48 : La cration de len-tte de groupe et du pied de groupe sur le numro de facture
Figure 7.49 : Lajout dune ligne dans len-tte de groupe
491 7.3. Cas pratique
Augmenter la largeur du trait sans le dformer
Cliquez sur lune des extrmits du trait, puis, tout en maintenant la touche
[Maj] enfonce, tirez le trait. Vous pouvez galement modier la proprit
Largeur de longlet Format dans sa fentre des proprits pour tre plus
prcis.
chaque changement de numro de facture, un saut de page doit
tre effectu.
18 Double-cliquez dans la section Pied de groupe nofacture pour affi-
cher ses proprits dans le volet Feuille de proprits. Dans la
proprit Saut de page de longlet Format, choisissez Aprs section
dans la liste droulante.
19 Visualisez le rsultat et vriez en mode Aperu avant impression
que le saut de page correspond au changement de facture. Enre-
gistrez ltat avec le nom Mes factures en utilisant longlet Fichier
puis en cliquant sur Enregistrer sous.
Vous allez ajouter les totaux hors taxes dans chaque ligne. Cette
valeur se calcule en multipliant la quantit par le prix unitaire hors
taxes dun livre.
20 Affichez ltat en mode Cration et agrandissez ventuellement la
largeur de ltat. Ajoutez, dans la section Dtail, une nouvelle zone
de texte laide du bouton Zone de texte de longlet Outils de
cration dtat/Cration.
21 Supprimez ltiquette qui est automatiquement affecte car elle
est inutile dans la section Dtail. Double-cliquez sur la zone de
texte ajoute pour afficher ses proprits. Cliquez dans la zone de
Figure 7.50 : La cration dun
saut de page
492 7. Restituer les donnes
saisie de la proprit Source contrle de longlet Donnes. Affichez
le Gnrateur dexpression en cliquant sur les trois points. Dans le
Gnrateur dexpression, slectionnez ltat Mes factures sur la
liste gauche, puis cliquez dans la liste centrale sur <Liste de champ>
et double-cliquez, dans la liste de droite, sur quantite. Saisissez
loprateur *, puis double-cliquez sur prixHT. Cliquez sur OK.
La formule est affiche dans la proprit Source contrle de la zone de
texte. Cette nouvelle zone de texte doit utiliser un format montaire.
22 Dans la proprit Format de la zone de texte de longlet Format,
choisissez Montaire sur la liste. Ajoutez ltiquette Total HT au-
dessus de cette zone dans la section En tte de groupe nofacture.
Vous allez calculer le montant total hors taxe de la facture et lafficher
dans le pied du groupe nofacture.
Figure 7.51 : La dnition du calcul dans le Gnrateur dexpression
Figure 7.52 : Le formatage du total hors taxe par ligne de facture
493 7.3. Cas pratique
23 Insrez une zone de texte dans la section Pied de groupe nofacture.
Modiez son tiquette : saisissez Montant total HT :.
Vous allez dnir la formule qui calculera la somme des montants
hors taxes.
24 Affichez le volet des proprits de la zone de texte ajoute. Dans la
proprit Source contrle de longlet Donnes, appelez le Gnra-
teur dexpression.
25 Dans le Gnrateur dexpression, dveloppez Fonctions dans la
liste de gauche, puis cliquez sur Fonctions intgres. Dans la liste
centrale, choisissez Regroupement SQL puis double-cliquez sur
Somme dans la liste de droite.
26 Slectionnez expression dans la zone ddition, cliquez sur lob-
jet Mes Factures dans la liste de gauche, puis cliquez sur <Liste de
champ> et double-cliquez, dans la liste de droite, sur quantite.
Cliquez sur loprateur *, double-cliquez sur prixHT dans la liste de
droite.
La formule obtenue dans le Gnrateur dexpression est la suivante :
Somme ( [quantite] * [prixHT] ).
27 Fermez le Gnrateur dexpression en cliquant sur le bouton OK.
La formule est affiche dans la proprit Source contrle de la zone de
texte. Vous allez formater la zone de texte au format montaire et la
nommer MontantHT.
Figure 7.53 : La dnition du calcul dans le Gnrateur dexpression
494 7. Restituer les donnes
28 Dans la proprit Format de la zone de texte, choisissez Montaire
sur la liste droulante, puis saisissez MontantHT dans la proprit
Nom de longlet Autres.
Il vous faut calculer le montant total de la TVA de la facture qui sera
galement affich dans le pied du groupe nofacture.
29 Insrez une zone de texte dans la section Pied de groupe nofacture.
Modiez son tiquette : saisissez Montant total TVA :.
Vous allez dnir le calcul de la TVA.
30 Affichez le volet des proprits de la zone de texte ajoute. Dans la
proprit Source contrle de longlet Donnes, ouvrez le Gnra-
teur dexpression.
31 Dans le Gnrateur dexpression, dveloppez Fonctions dans la
liste de gauche, puis cliquez sur Fonctions intgres. Dans la liste
centrale, choisissez Regroupement SQL, puis double-cliquez sur
Somme dans la liste de droite.
32 Slectionnez expression dans la zone ddition, cliquez sur lob-
jet Mes Factures dans la liste de gauche, puis cliquez sur <Liste de
champ> et double-cliquez, dans la liste de droite, sur quantite.
Saisissez loprateur * puis double-cliquez sur prixHT. Saisissez
nouveau loprateur * puis double-cliquez sur tva. Fermez le G-
nrateur dexpression en cliquant sur le bouton OK.
Figure 7.54 : La
modication du nomde la
zone de texte du montant
total HT de la facture
Figure 7.55 : La dnition
du calcul du montant total
de TVAdans le Gnrateur
dexpression
495 7.3. Cas pratique
La formule est affiche dans la proprit Source contrle de la zone de
texte. Formatez cette nouvelle zone de texte au format montaire et
nommez-la MontantTVA.
33 Dans la proprit Format de la zone de texte, choisissez Montaire
dans la liste droulante, puis saisissez MontantTVA dans la proprit
Nom de longlet Autres.
Il est alors possible de calculer le montant total toutes taxes compri-
ses de la facture, qui est la somme du montant total hors taxes et du
montant total de la TVA, et de faire apparatre dans le pied du groupe
nofacture.
34 Insrez une dernire zone de texte dans la section Pied de groupe
nofacture. Modiez son tiquette : saisissez Montant total TTC :.
Vous devez maintenant dnir le calcul du montant total toutes taxes
comprises.
35 Affichez le volet des proprits de la zone de texte ajoute. Dans la
proprit Source contrle de longlet Donnes, appelez le Gnra-
teur dexpression.
36 Dans le Gnrateur dexpression, cliquez sur lobjet Mes Factures
dans la liste de gauche. Dans la liste centrale, double-cliquez sur
lobjet MontantHT. Tapez loprateur +. Toujours dans la liste cen-
trale, double-cliquez sur MontantTVA. Fermez le Gnrateur dex-
pression en cliquant sur le bouton OK.
Figure 7.56 : Le nom, la
source et le format de la
zone de texte du montant
total de TVAde la facture
Figure 7.57 : La dnition
du calcul dans le
Gnrateur dexpression
496 7. Restituer les donnes
Formatez maintenant cette nouvelle zone de texte au format mon-
taire.
37 Dans la proprit Format de la zone de texte, choisissez Montaire
dans la liste droulante. Insrez une ligne sparatrice au-dessus
des trois totaux crs dans la section Pied de groupe nofacture.
38 Visualisez le rsultat via le mode Aperu avant impression.
Allez prsent plus loin dans la personnalisation de la facture en y
insrant un logo et le nom de lentreprise dans len-tte de la page.
39 Affichez ltat en mode Cration, slectionnez tous les objets de la
section En-tte de page et glissez la slection vers le bas.
40 Insrez le logo de lentreprise en cliquant sur le bouton Image du
groupe Contrles de longlet Outils de cration dtat/Cration. Cli-
quez dans la section En-tte de page. Dans la bote de dialogue
Insrer une image, slectionnez limage dans un dossier de larbo-
rescence du disque dur, puis cliquez sur le bouton OK.
41 Placez limage en haut gauche dans len-tte et redimen-
sionnez-la la taille voulue.
Insrez maintenant une tiquette droite du logo et en alignement
avec celui-ci.
42 Insrez une tiquette et saisissez-y le nom de lentreprise avec la
mise en forme de votre choix dans la section En-tte de page.
Figure 7.58 : Les trois totaux sont dsormais dnis dans le pied de groupe de la facture
Figure 7.59 : Le bouton Image du groupe Contrles
497 7.3. Cas pratique
43 Pour aligner le bord suprieur de ltiquette avec le bord suprieur
de limage, slectionnez les deux objets puis cliquez sur le bouton
Aligner du groupe Redimensionnement et classement de longlet
Outils de cration dtat/Rorganiser puis choisissez Haut dans la
liste propose.
Les objets salignent sur le bord suprieur le plus haut.
Dans len-tte de la page, la ligne du numro du client (correspon-
dant la ligne nocontact) affiche le nom du client car elle a repris la
liste de choix dnie dans la structure de la table Factures. Or cette
liste de choix, rappelons-le, affiche les noms des contacts (mme si
elle utilise les cls primaires de la table des contacts). Pour retrouver
le numro du contact, la zone de liste droulante insre doit tre
remplace par une zone de texte.
44 Cliquez du bouton droit dans la liste droulante nocontact dans la
section En-tte de page. Choisissez Remplacez par/Zone de texte
dans le menu contextuel qui apparat.
Vous allez insrer un encadr autour des coordonnes du client.
45 Modiez la lgende des tiquettes non signicatives, comme le
numro de facture, le numro de client et la date de facture.
Rorganisez les objets de la section en rassemblant les coordon-
nes du client.
46 Cliquez sur le bouton Rectangle du groupe Contrles de longlet
Outils de cration dtat/Cration puis tracez un rectangle en recou-
vrant les coordonnes dans la section En-tte de page. Modiez la
couleur du rectangle par les proprits Couleur fond et Apparence.
Figure 7.60 : Lajout dun logo
498 7. Restituer les donnes
47 Placez le rectangle masquant les coordonnes du client larrire-
plan au moyen du bouton Mettre en arrire-plan du groupe Redi-
mensionnement et classement de longlet Outils de cration dtat
/Organiser.
48 Corrigez ventuellement la mise en forme depuis le mode Page
puis visualisez le rsultat nal en utilisant le mode Aperu avant
impression.
Figure 7.61 : La
rorganisation de len-tte
de page de ltat
Figure 7.62 : Le rsultat
nal
499 7.3. Cas pratique
49 Fermez et enregistrez ltat Mes Factures.
Tlchargement de la base de donnes
Vous trouverez la base de donnes nalise Facturation livres7-
nale.accdb utilise dans ce chapitre sur le site de Micro Application (www.
microapp.com) dans le dossier Chapitre07.
500 7. Restituer les donnes
C
H
A
P
I
T
R
E
8
AUTOMATISER
LESTRAITEMENTS
Crer une macrocommande ................................................................................ 503
Crer des modules en Visual Basic ................................................................... 509
Crer des graphiques .............................................................................................. 512
Crer des tableaux croiss dynamiques ......................................................... 516
Consulter les donnes dans un navigateur Internet ................................. 522
Dmarrer automatiquement lapplication ..................................................... 526
Cas pratique ................................................................................................................. 528
501
ce stade, vous ne pouvez toujours pas demander un dbutant
dutiliser lapplication en ltat. Il vous reste rendre votre base de
donnes plus agrable employer en automatisant ses diffrentes
actions. Ainsi, par exemple, un simple bouton permettant de lancer
un formulaire depuis la fentre principale de la base de donnes
rendra lopration beaucoup plus conviviale.
Vous allez donc dvelopper quelques fonctionnalits qui automati-
seront les tches. La faon la plus simple de procder est certaine-
ment de crer un formulaire intgrant des boutons qui lanceront les
traitements. Il ne vous est pas ncessaire de connatre la program-
mation ; Access enregistre automatiquement les actions en langage
Visual Basic, si vous le dsirez.
Dans la dernire partie de cette section, et en conclusion de cet
ouvrage, vous dcouvrirez galement quelques fonctionnalits com-
plmentaires la gestion courante des bases de donnes, telles que
les tableaux et les graphiques croiss dynamiques ou encore le
dmarrage dune application au lancement dAccess. Ces traite-
ments, simples mettre en uvre au regard de la sophistication des
rsultats obtenus, ajouteront une touche nale professionnelle
votre travail.
8.1. Crer une macrocommande
Les macrocommandes (ou macros) sont des actions prenregistres
qui vous sont proposes par Access.
1 Dans la fentre de la base de donnes, cliquez sur longlet
Crer puis sur le bouton Macro du groupe Macros et code.
Le nouvel diteur de macros
Les utilisateurs de la version prcdente dAccess constateront une modi-
cation notable de lditeur de macros : la grille dactions et leurs arguments
quelle prsentait a t remplace par une nouvelle interface dcrite dans les
pages qui suivent.
Le nouveau mode Cration de macro dAccess 2010 se caractrise
par son onglet contextuel Outils de macro, laffichage dun onglet
intitul Macro1, contenant une liste droulante rpertoriant toutes les
503 8.1. Crer une macrocommande
actions proposes et le volet Catalogue dactions, classant les actions
par catgorie.
La liste droulante Ajouter une nouvelle action permet de dnir au
moins une action de la macro.
Le volet Catalogue dactions
Pour afficher le volet du catalogue des actions, depuis le mode de
cration de macro, cliquez sur le bouton Catalogue dactions du
groupe Afficher/Masquer de longlet Cration de longlet textuel
Outils de macro.
Le volet Catalogue dactions propose les familles doprations suivantes :
j Droulement de programme, regroupant des lments qui permettent
dorganiser le programme, tels que la cration de sous-macros ;
j Actions, regroupant toutes les actions, listes par catgories ;
j Dans cette base de donnes, donnant accs aux objets impliqus dans les
traitements des macros de la base de donnes.
Dans lexemple qui suit, une macro lance le navigateur Internet
Explorer.
2 Pour spcier laction excute par la macro, cliquez dans la liste
droulante Ajouter une nouvelle action, puis choisissez Excuter
Application.
Afficher toutes les actions
Il se peut que la liste droulante ne contienne pas toutes les actions
proposes par Access. Dans ce cas, cliquez sur le bouton Afficher toutes les
actions du groupe Afficher/Masquer de longlet Outils de macro/Cration.
La zone Ligne de commande saffiche. Elle est spcique cette
action. Si une autre action avait t choisie, dautres zones (ou
arguments) spciques seraient affiches et devraient tre rensei-
gnes pour paramtrer laction effectuer.
Figure 8.1 : Le bouton Afficher
toutes les actions du groupe
Afficher/Masquer
504 8. Automatiser les traitements
Argument
Ce terme dsigne des valeurs transmises des programmes ou des
fonctions.
3 Saisissez dans la zone Ligne de commande le nom du chier ex-
cutable (ici, celui dInternet Explorer), prcd de son chemin
daccs.
Macro excutant plusieurs actions
Pour enchaner plusieurs commandes dans une macro, slectionnez-les
successivement dans la liste droulante Ajouter une nouvelle action.
4 Pour ajouter un commentaire, cliquez dans la liste droulante
Ajouter une nouvelle action, puis choisissez Commentaire. Dans la
zone affiche, saisissez un descriptif de laction, par exemple
Ouverture du navigateur.
Figure 8.2 : La saisie dun argument
Figure 8.3 : Une macro peut se composer de plusieurs actions
505 8.1. Crer une macrocommande
5 Enregistrez la macro en cliquant sur longlet Fichier puis sur Enre-
gistrer.
La nouvelle macro saffiche dsormais dans la liste Macros du Volet
de navigation.
Modier une macro
1 Dans la liste des objets du volet de navigation, cliquez du bouton
droit sur le nom de la macro de votre choix. Choisissez Mode
cration dans le menu contextuel qui saffiche.
La macro saffiche en mode Cration.
2 Pour dplacer une action dans une macro, cliquez sur une des
ches vertes droite du nom de laction dplacer vers une
nouvelle position.
3 Pour insrer une nouvelle action, cliquez sur la liste droulante
Ajouter une nouvelle action puis choisissez laction. Il est galement
possible de faire un glisser dune action depuis le volet Catalogue
des actions. Pour cela, dveloppez la catgorie Actions puis une
sous-catgorie dactions dans le volet Catalogue des actions, cli-
quez sur une action et oprez un glisser dans longlet de la macro.
En fonction de laction choisie, des zones de saisie des arguments
saffichent sous le nom de laction. Certaines dentre elles doivent
obligatoirement tre renseignes.
Affichage des actions
Utilisez les boutons du groupe Dvelopper/Rduire de longlet Outils de
macro/Cration si vous souhaitez dvelopper ou rduire, partiellement ou en
totalit, les paramtres des actions.
Figure 8.4 : Le dplacement
dune action vers le haut
Figure 8.5 : Le groupe Dvelopper/Rduire
506 8. Automatiser les traitements
4 Pour supprimer une action, cliquez sur la ligne de laction, puis
cliquez sur le bouton Supprimer symbolis par une croix noire
droite du nom de laction.
Crer des sous-macros dans une macro
Il est possible de crer plusieurs sous-macros dans une macro. Pour se
faire :
1 cliquez sur Sous-macro dans la liste Ajouter une nouvelle action ou,
depuis le volet Catalogue des actions, droulez la catgorie Droulement
de programme et double-cliquez sur Sous-macro.
2 Dans longlet de la macro, la premire zone de saisie permet de dnir le
nom de la sous-macro. La liste droulante permet, quant elle, de spci-
er les actions de la sous-macro.
Le libell "Sousmacro Fin", qui apparat sous la zone prcdente, indique la
n de la macro.
Figure 8.6 : La suppression dune action
Figure 8.7 : Les sous-macros dune macro
507 8.1. Crer une macrocommande
Excuter une macro
1 Ouvrez la macro en mode Cration.
2 Cliquez sur le bouton Excuter du groupe Outils de longlet
Outils de macro/Cration.
Excuter une macro plus rapidement
Pour excuter une macro, sans passer en mode Cration, double-cliquez
sur le nom de la macro dans le Volet de navigation ou cliquez du bouton droit
sur le nom de la macro et choisissez Excuter dans le menu contextuel qui
saffiche.
La macro excute squentiellement les actions dnies.
Excuter pas pas une macro
Le mode Pas pas permet de dboguer facilement une macro
puisquun arrt est alors effectu chacune des actions quelle
contient.
1 Depuis le mode Cration, activez le mode Pas pas en
cliquant sur le bouton Pas pas du groupe Outils de longlet Outils
de macro/Cration.
Le fond du bouton apparat en orange.
2 Cliquez sur le bouton Excuter du groupe Outils de longlet Outils
de macro/Cration.
Figure 8.8 : La bote de dialogue Pas pas
508 8. Automatiser les traitements
La bote de dialogue Pas pas saffiche.
Vous pouvez alors appliquer lune des actions suivantes :
j cliquer sur le bouton Pas pas pour excuter laction de la zone
Nom de laction de la bote de dialogue ;
j cliquer sur le bouton Arrter toutes les macros pour interrompre
lexcution de la macro.
j cliquer sur le bouton Continuer pour dsactiver le mode Pas pas
et poursuivre lexcution des autres actions de la macro.
Utiliser une macro
Le principal intrt dune macro est quelle peut tre lance depuis
lapplication, notamment au moyen des dclencheurs suivants :
j un bouton de commande ;
j un vnement dun formulaire, par exemple lvnement Clic dun
objet.
8.2. Crer des modules en Visual Basic
Vous ne pouvez pas traiter tous les cas de gure avec les macrocom-
mandes dAccess. Par exemple, si vous dveloppez un logiciel de
facturation, certains traitements doivent tre crits avec Visual Basic,
le langage de programmation utilis par Access.
Soyons ralistes, mme si Visual Basic est un langage de program-
mation aujourdhui entirement orient objet, que vous retrouvez
sur tous les logiciels de la suite bureautique de Microsoft, un certain
temps vous sera ncessaire pour matriser ses concepts. Nous nous
contenterons donc ici de vous prsenter Visual Basic sur un court
programme.
Lorsque le mode Formulaire du formulaire Factures-form (dvelopp
dans la base de donnes cre dans les cas pratiques des prcdents
chapitres) est activ et que la quantit des livres facturs est modie
Figure 8.9 : Ici, la macro est lance par lvnement Clic de lobjet
509 8.2. Crer des modules en Visual Basic
ou quun autre livre est ajout la facture, les montants totaux de la
facture ne se mettent pas jour immdiatement, lors de la modi-
cation. Access attend un dclencheur, un dplacement dans les fac-
tures par exemple, pour actualiser les calculs. Vous allez provoquer
le rafrachissement de tout le formulaire Factures-form au moyen
dune trs petite portion de code Visual Basic, encore appele "pro-
cdure vnementielle".
Tlchargement de la base de donnes
Vous trouverez la base de donnes utilise dans ce chapitre, Facturation
livres8.accdb, sur le site de Micro Application (www.microapp.com) dans le dos-
sier Chapitre08.
1 Affichez le formulaire Factures-form en mode Cration, cliquez sur
la zone de texte quantite du sous-formulaire Facturelignes sous-
formulaire et affichez les proprits de cette zone. Cliquez sur
lvnement Sur perte focus puis sur le bouton symbolis par trois
points. Dans la bote de dialogue Choisir Gnrateur, slectionnez
Gnrateur de code puis cliquez sur OK.
Figure 8.10 : Les totaux hors taxe de la facture seront actualiss grce un court programme en
Visual Basic
510 8. Automatiser les traitements
Access ouvre une fentre nomme Microsoft Visual Basic qui ren-
ferme elle-mme une fentre nomme Facturation livres8
Form_Facturelignes sous-formulaire (Code).
Cette fentre se compose de trois parties principales :
la premire affiche le nom de lobjet concern. Ici, il sagit de
lobjet de type zone de texte quantite ;
la deuxime indique lvnement. Ici, cest lvnement Sur perte
focus, traduit par Lost Focus, qui est utilis. Cet vnement se
produit lorsque lobjet est quitt, pour passer la zone suivante,
dans le formulaire, par exemple ;
la troisime affiche le code en langage Visual Basic. Il se compose
pour linstant de deux lignes. La premire, Private Sub quantite-
_LostFocus(), est le nom de la procdure ; la deuxime, End Sub,
correspond la n de la procdure.
Vous allez ajouter une ligne de code en Visual Basic.
2 Entre les deux lignes du code de la procdure, saisissez la ligne
suivante :
Form.Refresh
Cette simple ligne de code utilise la hirarchie du modle Objet
dAccess :
Figure 8.11 : Le code Visual
Basic va tre associ
lvnement Sur perte focus
Figure 8.12 : Le code de la
procdure en Visual Basic
dans le Gnrateur de code
511 8.2. Crer des modules en Visual Basic
Form correspond lobjet formulaire ;
Refresh est la mthode qui effectue une mise jour immdiate de
la source denregistrement dun objet formulaire ou dune feuille
de donnes.
En langage courant, cette ligne peut se traduire par : "Actualise le
formulaire."
3 Fermez la fentre Microsoft Visual Basic.
Dans la fentre des proprits de la zone de texte quantite, vous
voyez que la proprit Sur perte focus a t mise jour.
4 Affichez le formulaire Factures-form en mode Formulaire et modi-
ez la quantit de livres facturs dans une facture.
Le total est dsormais immdiatement mis jour aprs validation de
la modication.
5 Ajoutez maintenant un livre achet dans une facture.
La mise jour de la zone est effectue immdiatement.
6 Fermez le formulaire Factures-form.
8.3. Crer des graphiques
Les donnes issues de tables ou de requtes peuvent tre illustres
par des graphiques qui nalisent lapplication en soulignant visuel-
lement les rsultats des tats.
1 Cliquez sur une table ou une requte dans le volet de navigation.
2 Cliquez sur longlet Crer puis sur le bouton Plus de formulaires du
groupe Formulaires puis choisissez Graphique crois dynamique
dans la liste qui apparait.
Figure 8.13 : La mise jour de la
proprit Sur perte focus par une
procdure vnementielle
512 8. Automatiser les traitements
Access affiche longlet qui va vous permettre de composer le graphi-
que crois dynamique.
3 Cliquez sur le bouton Liste des champs du groupe Afficher/Masquer
de longlet Crer de longlet contextuel Outils de graphique crois
dynamique.
Les champs de la table prcdemment choisie sont lists dans le
volet Liste des champs du graphique.
Figure 8.14 : Le bouton Plus de formulaires
Figure 8.15 : Le mode Graphique crois dynamique
513 8.3. Crer des graphiques
4 Si les zones de dpt ne sont pas affiches, cliquez
sur le bouton Zones de dpt du groupe Afficher/
Masquer de longlet Outils de graphique crois dynamique/Crer.
Zones de dpt
Ces zones sont les espaces du graphique dans lesquels les noms de
champs sont glisss, dterminant ainsi la mise en forme du graphique.
Le graphique peut tre constitu par de simples glissements des
champs sur le schma de construction du graphique qui propose
diffrentes zones.
5 Dans le volet Liste des champs du graphique, cliquez sur un champ
et glissez-le dans la zone de dpt Dposer champs de catgories ici
correspondant laxe des abscisses (cest--dire laxe horizontal).
Le champ sur lequel lopration de synthse sera calcule doit main-
tenant tre dni.
6 Glissez le champ concern depuis le volet Liste des champs du
graphique dans la zone Dposer les champs de donnes ici.
Access affecte une opration par dfaut cette zone. Vous pouvez la
modier votre gr.
7 Pour modier lopration de synthse effectue dans la zone de
donnes, slectionnez celle-ci puis cliquez sur le bouton Calcul
automatique du groupe Outils de longlet Outils de graphique crois
dynamique/Crer. Choisissez lopration sur la liste qui vous est
propose (la somme ou la moyenne par exemple). Vous pouvez
galement cliquer du bouton droit sur le champ de la zone de
dpt de donnes puis choisir Calcul automatique, puis enn,
lopration effectuer dans le menu contextuel qui apparat (voir
Figure 8.16).
8 Pour supprimer un champ dune zone de dpt, cliquez sur celui-ci
et glissez-le en dehors de longlet du graphique crois dynamique
(ou slectionnez lobjet et appuyez sur la touche [Suppr]).
Vous allez maintenant choisir le type de graphique utilis.
9 Cliquez sur le graphique puis sur le bouton Modier le type de
graphique du groupe Type ou cliquez du bouton droit sur le gra-
phique et choisissez Modier le type de graphique dans le menu
contextuel qui apparat.
514 8. Automatiser les traitements
La bote de dialogue Proprits saffiche avec longlet Type activ. De
nombreux types de graphiques vous sont proposs.
10 Choisissez un type de graphique (la modication du type de gra-
phique est immdiatement visible dans la zone de graphique).
Figure 8.16 : Lopration de synthse des donnes peut tre modie
Figure 8.17 : La modication du type de graphique
515 8.3. Crer des graphiques
Affichage des proprits des composants du graphique
Les onglets contenus dans la fentre Proprits sont modis en fonction
des objets du graphique slectionns (axes, sries, zone de traage, etc.).
8.4. Crer des tableaux croiss
dynamiques
Les habitus dExcel savent que les tableaux croiss dynamiques
sont des outils de synthse de donnes trs puissants. Comme les
graphiques croiss dynamiques, ils peuvent, lorsque leur existence
est justie, participer notablement la nalisation de lapplication.
1 Cliquez sur une table ou une requte dans le volet de navigation.
2 Cliquez sur longlet Crer puis sur le bouton Plus de formulaires du
groupe Formulaires puis choisissez Tableau crois dynamique dans
la liste propose.
Access affiche dsormais longlet qui va vous permettre de compo-
ser le tableau crois dynamique ainsi que longlet contextuel Outils
Figure 8.18 : Le bouton Plus de formulaires
516 8. Automatiser les traitements
de tableau crois dynamique. Les champs de la table prcdemment
choisis sont lists dans le volet Liste de champs de tableau crois
dynamique.
3 Si cela nest pas le cas, cliquez sur le bouton Liste des champs du
groupe Afficher/masquer de longlet Crer de longlet contextuel
Outils de tableau crois dynamique.
La mthode utilise pour la composition dun tableau crois dyna-
mique est proche de celle employe dans les graphiques croiss
dynamiques : les champs dune table ou dune requte sont glisss
sur deux axes et des calculs de synthse sont dnis aux intersec-
tions des valeurs des axes.
titre dexemple, vous trouverez dans ce qui suit quelques manipu-
lations signicatives.
4 Pour dnir une zone de ltre permettant de limiter lapplication
du tableau certaines donnes, cliquez sur le champ concern
dans la liste de champs, dans le volet Liste de champs de tableau
crois dynamique. Dans la liste droulante situe droite du bou-
ton Ajouter , slectionnez Zone de ltre, puis cliquez sur le bouton
Ajouter . Une seconde mthode, plus simple, consiste glisser
simplement le champ depuis le volet Liste de champs de tableau
crois dynamique vers la zone Placer les champs de ltre ici.
Le champ sur lequel le ltre est dni est alors indiqu dans langle
suprieur gauche du schma de construction du tableau crois dy-
namique.
Figure 8.19 : Longlet de cration du tableau crois dynamique
517 8.4. Crer des tableaux croiss dynamiques
5 Cliquez sur un champ du volet Liste de champs de tableau crois
dynamique qui devra tre plac en ligne, slectionnez Zone de
lignes dans la liste droulante situe droite du bouton Ajouter ,
puis cliquez sur Ajouter . Vous pouvez galement glisser le champ
depuis le volet Liste de champs de tableau crois dynamique vers la
zone Placer les champs de ligne ici.
Figure 8.20 : La dnition dune zone de ltre
Figure 8.21 : Un champ est ajout en ligne
518 8. Automatiser les traitements
Lune des options de synthse les plus frquentes consiste faire la
somme des lments dun champ. Le champ doit dabord tre plac
dans la zone Placer les totaux ou les champs de dtails ici.
6 Dans la liste de champs du volet Liste de champs de tableau crois
dynamique, cliquez sur le champ concern, slectionnez Donnes
de dtail dans la liste droulante situe droite du bouton Ajouter
, puis cliquez sur Ajouter . Vous pouvez galement glisser le
champ depuis le volet Liste de champs de tableau crois dynamique
vers la zone Placer les totaux ou les champs de dtails ici.
7 Slectionnez le champ qui vient dtre insr, puis cliquez sur le
bouton Calcul automatique du groupe Outils de longlet Outils de
tableau crois dynamique/Crer. Choisissez lopration de votre
choix dans la liste affiche. Vous pouvez galement cliquer du
bouton droit sur le champ de la zone de dpt de donnes, choisir
Calcul automatique puis lopration effectuer dans le menu
contextuel qui apparat.
Lopration dnie apparat dsormais dans la zone de dtails : si
lopration Somme a t choisie, cette valeur est ajoute en bas de
chaque ligne (voir Figure 8.23).
Le bouton Masquer les dtails du groupe Afficher/masquer de longlet
Outils de tableau crois dynamique/Crer permet, quant lui, daffi-
cher uniquement les rsultats de lopration de synthse (voir Fi-
gure 8.24).
Figure 8.22 : Un champ est ajout dans la zone de dtails
519 8.4. Crer des tableaux croiss dynamiques
Figure 8.23 : Un type dopration est choisi : les calculs dnis dans la zone des totaux apparaissent
prsent dans le tableau
Figure 8.24 : Seuls les rsultats de lopration de synthse sont maintenant affichs
520 8. Automatiser les traitements
Le masquage des dtails est rversible
Si vous souhaitez retrouver les dtails des lignes, cliquez sur le
bouton Afficher les dtails de longlet Crer de longlet Outils de
tableau crois dynamique.
Lorsque le tableau affiche des donnes, le ltre peut tre appliqu
pour limiter laffichage certaines donnes.
8 Dveloppez la liste de la zone de ltre, situe dans langle sup-
rieur gauche du tableau, dcochez la case Tous puis cochez de
manire slective les cases correspondant aux informations que
vous souhaitez voir gurer dans le tableau crois dynamique.
Cliquez sur OK.
La disposition des informations prsentes nest pas ge : certains
champs peuvent, par exemple, tre placs ou dplacs en colonnes.
9 Glissez, par exemple, le champ utilis comme critre de ltre et
placez-le dans la zone rserve aux colonnes et nomme Placer les
champs de colonnes ici.
Figure 8.25 : Lapplication dun ltre slectif
Figure 8.26 : Le champ qui tait utilis comme ltre est maintenant dispos en colonne
521 8.4. Crer des tableaux croiss dynamiques
Supprimer un champ ou un calcul
Vous pouvez facilement supprimer un champ ou un calcul du tableau
crois dynamique en utilisant lune des mthodes suivantes :
j cliquez du bouton droit sur le champ supprimer puis choisissez
Supprimer dans le menu contextuel qui saffiche ;
j cliquez sur le champ supprimer puis sur le bouton Supprimer le
champ du groupe Champ actif de longlet Outils de tableau crois
dynamique/Crer ;
j glissez le champ supprimer en dehors de longlet du tableau crois
dynamique.
Les champs supprims dun tableau crois dynamique ne le sont pas sur la liste
des champs du volet Liste de champs de tableau crois dynamique.
La mise en forme du tableau crois dynamique peut tre personna-
lise.
10 Cliquez sur le bouton Feuille des proprits du groupe Outils de
longlet Outils de tableau crois dynamique/Crer puis sur la zone
du tableau que vous dsirez modier.
La fentre Proprits vous permet de modier laspect de la zone
clique.
8.5. Consulter les donnes dans
un navigateur Internet
Une fois le dveloppement de la base termin, la faon la plus simple
de publier des informations sur tous types de machines consiste
Figure 8.27 : La fentre
Proprits permet de modier
la mise en forme du tableau
crois dynamique
522 8. Automatiser les traitements
enregistrer ces informations au format HTML car ce langage est une
norme universellement reconnue par tous les ordinateurs, quil
sagisse de PC ou de Macintosh. Le HTML peut en effet tre interprt
par nimporte quel navigateur Internet tel quInternet Explorer.
Une base de donnes Access offre de nombreuses fonctionnalits,
vous lavez vu. Encore faut-il disposer dAccess sur sa machine pour
pouvoir les exploiter. Ce nest pas le cas de tous les utilisateurs. En
revanche, depuis lessor fulgurant dInternet, toutes les machines
disposent dun navigateur Internet.
Dun point de vue purement conceptuel, il ny a pas de diffrence
entre Internet et un rseau intranet : le premier est ouvert sur le
monde extrieur et le second se limite au rseau interne de lentre-
prise ou de lorganisation. Tous deux utilisent les mmes protocoles.
De faon schmatique, on peut dire que le choix de la stratgie
Internet relve dun dsir douverture sur le monde extrieur : il
sagit par exemple de mettre son catalogue de produits en ligne an
de permettre aux clients de le consulter. La stratgie intranet, quant
elle, est oriente vers le personnel de lentreprise, pour rendre
accessible facilement et rapidement des informations exploites par
le service commercial par exemple.
Le langage XML se veut la relve du HTML depuis quelques annes.
Le XML est une nouvelle norme de langage, galement interprtable
par les navigateurs et qui va plus loin que le HTML : la norme XML
permet de dnir et dinterfacer facilement des systmes lorigine
incompatibles. Le XML dcrit en effet la structure dun chier en plus
de contenir des donnes. Ainsi, deux bases de donnes distinctes
peuvent dialoguer par ce format puisque les donnes sont directe-
ment apprhendes par leur structure dcrite dans le chier.
Access est capable denregistrer les donnes dans lun ou lautre de
ces deux formats. Tout comme pour le langage SQL, il vous faudra
toutefois y investir un certain temps si vous souhaitez bien compren-
dre le langage XML. Ce sujet dpasse donc largement lobjectif de
cet ouvrage.
Voyez comment il serait possible de publier les donnes dun objet
de la base de donnes an que les membres dune entreprise puis-
sent consulter les informations quelle renferme depuis leur naviga-
teur Internet. Les donnes seront enregistres au format HTML,
cest--dire en tant que page web.
1 Dans le volet de navigation, slectionnez un objet (une table, une
requte, un formulaire ou encore un tat). Vriez que lobjet est
523 8.5. Consulter les donnes dans un navigateur Internet
ferm et cliquez sur longlet Donnes externes puis sur le bouton
Plus du groupe Exporter. Choisissez Document HTML dans la liste
propose.
La bote de dialogue Exportation Document HTML est affiche.
2 Dans la zone Nom chier, dnissez un dossier et le nom de la
page HTML qui sera cre en cliquant sur le bouton Parcourir.
Dans la bote de dialogue Enregistrer qui apparat, saisissez le nom
de la page HTML et choisissez le dossier, dans la zone Enregistrer
dans. Cliquez sur le bouton Enregistrer.
3 De retour dans la bote de dialogue Exportation Document HTML,
cochez la case Ouvrir le chier de destination une fois lexportation
termine puis cliquez sur le bouton OK.
Figure 8.28 : Lexportation dun tat
Figure 8.29 : La bote de dialogue Exportation Document HTML
524 8. Automatiser les traitements
4 Dans la bote de dialogue Options de sortie HTML qui apparat,
cliquez sur OK.
Le navigateur Internet souvre automatiquement et affiche la page
HTML qui contient les donnes formates en tableau.
Cette page HTML peut tre maintenant utilise de diffrentes mani-
res. Elle peut, par exemple, tre ouverte par un raccourci depuis le
Bureau de Windows ou encore publie en tant que page web sur un
Figure 8.30 : Laffichage de ltat au format HTML
525 8.5. Consulter les donnes dans un navigateur Internet
site Internet. Notez toutefois que les donnes de cette page sont
statiques et quelles ne seront pas rafrachies si la base de donnes
est modie.
Or, vous avez certainement remarqu, sur les sites de commerce
lectronique, quil vous tait possible de raliser toutes sortes dop-
rations comme des interrogations de bases de donnes de produits
ou des prises de commande en ligne avec paiement par carte ban-
caire. Il est vident que les pages qui vous sont prsentes sur des
tels sites ne sont pas statiques.
Les pages daccs aux donnes
Lorsque vous vous connectez ces sites, les pages HTML charges dans
votre navigateur Internet nexistent pas en tant que pages statiques, mais
sont gnres en fonction des requtes que vous envoyez sur le serveur. Par
exemple, si vous demandez consulter toutes les voitures vendues par la
socit, la page envoye sera compose selon votre demande. Une autre
personne ayant demand la liste des motos recevra une page diffrente de la
vtre. Chez Microsoft, ce principe, qui sappuie sur un langage de program-
mation sur le serveur web, se nomme ASP (Active Server Pages).
Dans la version 2003 dAccess, laccs aux donnes dune base tait possible
depuis un navigateur par une fonctionnalit nomme "pages daccs aux
donnes". Cette fonctionnalit nest plus prise en charge sous Access. Elle est
remplace par des composants du logiciel Microsoft Windows Sharepoint
Services, quil est alors ncessaire dinstaller sur votre ordinateur.
8.6. Dmarrer automatiquement
lapplication
Lapplication peut tre lance directement louverture de la base de
donnes. Cette fonctionnalit est particulirement intressante lors-
que les utilisateurs de la base ne connaissent pas Access et que vous
avez dvelopp un formulaire servant dinterface par le biais de
boutons.
Un formulaire peut tre lanc automatiquement louverture de la
base de donnes.
1 Cliquez sur longlet Fichier puis sur Options et sur Base de donnes
active dans la bote de dialogue Options Access.
2 Dans la zone Titre de lapplication de la rubrique Options de lappli-
cation, saisissez un titre qui sera affich dans la barre de titre de la
base de donnes.
526 8. Automatiser les traitements
3 Autorisez ou interdisez laffichage des onglets en cochant les cases
correspondantes.
4 Choisissez, sur la liste Afficher le formulaire, le formulaire lancer
au dmarrage.
Les modications seront effectives la prochaine ouverture de lap-
plication.
Cration dune interface utilisateur
Lapplication termine, il vous sera certainement ncessaire de dvelopper
une interface lattention des utilisateurs, permettant daccder aux fonction-
nalits que vous aurez dveloppes. Un formulaire, renfermant diffrents
objets, tels que des boutons servant de lanceurs dautres formulaires ou
dtats, remplira alors ce rle.
Boutons interactifs dans un formulaire
Il est dsormais trs ais dinsrer des boutons interactifs (cest--dire
disposant deffets de mise en forme lors du survol de la souris), servant de
lanceurs dapplications, dans un formulaire dAccess :
j depuis un formulaire, en mode cration, ajoutez des boutons (tels que des
boutons de commandes ou des groupes doptions disposant de la pro-
Figure 8.31 : La bote de dialogue Options Access
527 8.6. Dmarrer automatiquement lapplication
prit Boutons bascule) au moyen des boutons idoines proposs dans le
groupe Contrles de longlet Outils de cration de formulaires/Cration ;
j modiez lapparence des objets insrs et slectionns au moyen du
bouton Modier la forme du groupe Contrler la mise en forme de
longlet Outils de cration de formulaire/Format. Cliquez alors sur un type
de forme dans la liste qui apparait ;
j pour affecter un style la forme, cliquez sur le bouton Styles rapides du
groupe Contrler la mise en forme de longlet Outils de cration de
formulaire/Format. Cliquez ensuite sur un style dans la liste qui apparait ;
j pour afficher une image dans un bouton, affichez le volet des proprits
du bouton en cliquant sur le bouton Feuille des proprits du groupe
Outils de longlet Outils de cration de formulaire/Format. Cliquez sur la
proprit Image de longlet Format puis sur le bouton symbolis par trois
points. Dans la bote de dialogue Gnrateur dimage, choisissez Quitter
dans la liste Images disponibles ;
j un bouton tant slectionn, ajoutez limage du bouton un texte de
lgende. Saisissez le texte sur la proprit Lgende de longlet Format, en
cliquant sur la proprit Disposition des lgendes de longlet Format puis
en choisissant une disposition dans la liste propose.
8.7. Cas pratique
Dans cette section pratique, vous raliserez quelques macros lan-
ces par diffrents dclencheurs.
Figure 8.32 : Lutilisation des styles rapides modie laspect des objets
528 8. Automatiser les traitements
Crer une macro affichant un message de
bienvenue
1 Dans la fentre de la base de donnes Facturation livres8 : Base de
donnes, cliquez sur longlet Crer puis sur le bouton Macro du
groupe Macros et code.
Vous allez spcier laction de la macro.
2 Dans longlet Macro1, cliquez dans la liste droulante Ajouter une
nouvelle action. Choisissez ZoneMessage dans la liste.
3 Dans la zone Message, saisissez Bonjour, belle journe ce matin !.
Dans la zone Bip, conservez loption Oui dans la liste droulante.
Dans la zone Type, choisissez Information dans la liste droulante
et dans la zone Titre, saisissez BIENVENUE !.
Vous allez maintenant excuter la macro.
4 Cliquez sur le bouton Excuter du groupe Outils de longlet Outils
de macro/Cration. Acceptez lenregistrement de la macro lorsque
Access vous le propose dans la bote de dialogue Microsoft Access.
Enregistrez la macro avec le nom Bienvenue.
La bote de dialogue Bienvenue saffiche.
5 Cliquez sur le bouton OK puis fermez la macro Bienvenue.
Figure 8.33 : Les
arguments de la macro
Figure 8.34 : lexcution, la macro lance une
bote de dialogue
529 8.7. Cas pratique
Crer une macro excutant plusieurs actions
Votre nouvel objectif est dinsrer un fond sonore louverture et la
fermeture du formulaire Carnet dadresses.
1 Crez une nouvelle macro.
2 Insrez laction Bip.
3 Choisissez laction OuvrirFormulaire comme seconde action.
4 Dans la zone Nom de formulaire, choisissez Carnet dadresses dans
la liste droulante. Dans la zone Affichage, conservez Formulaire
dans la liste droulante. Dans la zone Mode fentre, choisissez
Bote de dialogue dans la liste.
Largument Mode fentre que vous avez activ rend votre formulai-
re modal : il sera impossible de cliquer en dehors de ce formulaire
tant quil ne sera pas ferm.
5 Ajoutez nouveau laction Bip comme troisime action.
6 Fermez et enregistrez la macro sous le nom Ouvrir Formulaire
Contacts.
7 Pour tester la macro, double-cliquez sur celle-ci dans le volet de
navigation. Vriez quil est impossible daccder une autre
fentre tant que le formulaire Carnet dadresses nest pas ferm.
Utiliser une macro lance par un vnement dans
un formulaire
Dans ce qui suit, la macro Ouvrir Formulaire Contacts sera lance
depuis le formulaire Factures-form.
Figure 8.35 : La dnition des trois actions ralises par la macro
530 8. Automatiser les traitements
Lors de la saisie dune facture dans le formulaire Factures-form, il se
peut que le client pour qui la facture doit tre tablie nexiste pas
encore dans le carnet dadresses. Le client napparaissant pas sur la
liste de la zone de saisie, il vous faut lajouter. Vous devez pour cela
fermer le formulaire Factures-form, puis ouvrir le formulaire Carnet
dadresses, ajouter le nouveau client, fermer le formulaire Carnet
dadresses, ouvrir nouveau le formulaire Factures-form et saisir
enn len-tte de la facture en utilisant les coordonnes du nouveau
client. Lutilisation dune macro est une mthode lgante permet-
tant de diminuer le nombre de ces manipulations.
1 Ouvrez le formulaire Factures-form en mode Cration, cliquez sur
lobjet de la zone de liste droulante nocontact et affichez ses
proprits. Dans la proprit Sur double clic de longlet Evnement,
choisissez dans la liste la macro Ouvrir Formulaire Contacts prc-
demment cre.
2 Affichez le formulaire Factures-form en mode Formulaire et
double-cliquez sur la liste de la ligne Nom du client pour tester
lexcution de la macro.
La macro sexcute : le formulaire Carnet dadresses saffiche devant
le formulaire Factures-form.
3 Cliquez en dehors du formulaire.
Vous ne pouvez en activer aucun autre tant que le formulaire modal
nest pas ferm.
Figure 8.36 : La proprit Sur double clic de la zone de texte
531 8.7. Cas pratique
4 Ajoutez un nouveau client puis fermez le formulaire Carnet dadres-
ses. Cherchez visualiser le nouveau client sur la liste.
Celui-ci nest pas visible car la liste droulante na pas t actualise.
Vous allez modier la macro Ouvrir Formulaire Contacts depuis lv-
nement Sur double clic de lobjet zone de liste droulante nocontact.
5 Aprs avoir ouvert le formulaire Factures-form en mode Cration,
affichez les proprits de la zone de liste droulante nocontact.
Cliquez sur la ligne de lvnement Sur double clic. Pour modier la
macro dj affecte la proprit, cliquez sur le bouton symbolis
par trois points droite de la zone.
6 Dans longlet Ouvrir Formulaire Contacts qui souvre, choisissez la
premire action Actualiser propose dans la liste comme qua-
trime action et saisissez nocontact pour largument Nom du
contrle : vous indiquez ici le nom de la zone de liste droulante du
formulaire Factures-form actualiser.
7 Fermez longlet de la macro sans oublier denregistrer les modi-
cations apportes. Affichez le formulaire Factures-form en mode
Figure 8.37 : Lajout dun
nouveau contact depuis le
formulaire Factures-form
Figure 8.38 : Lactualisation dun contrle
dans un formulaire
532 8. Automatiser les traitements
Formulaire. Double-cliquez nouveau sur la liste droulante de la
ligne Nom du client.
Le formulaire Carnet dadresses saffiche.
8 Ajoutez un nouveau client. Fermez le formulaire Carnet dadresses.
9 Dans le formulaire Factures-form, droulez la liste des noms de
clients.
Le nouveau client est visible.
10 Fermez et enregistrez les formulaires modis.
Utiliser une macro dans un bouton de commande
Vous allez maintenant lancer la visualisation de ltat affichant les
contacts depuis le formulaire des contacts au moyen dun bouton de
commande.
1 Ouvrez le formulaire Carnet dadresses en mode Cration. Cliquez
sur longlet Cration de longlet contextuel Outils de cration de
formulaire puis vriez que le bouton Utiliser les assistants contrle
est actif (voir lillustration suivante). Cliquez sur lobjet Bouton puis
cliquez dans la section den-tte du formulaire.
La bote de dialogue Assistant Bouton de commande saffiche. Vous
allez choisir laction du bouton de commande.
2 Choisissez la catgorie Oprations sur tat puis laction Aperu dun
tat. Cliquez sur le bouton Suivant (voir Figure 8.40).
ltape suivante, Access numre les tats qui gurent dans lap-
plication.
Figure 8.39 : Le bouton Utiliser les assistants contrle
533 8.7. Cas pratique
3 Choisissez Carnet dadresses sur la liste puis cliquez sur le bouton
Suivant.
4 ltape suivante, choisissez Aperu pour signier limage utili-
ser dans le bouton. Cliquez sur le bouton Suivant.
5 la dernire tape, ne modiez pas le nom propos par Access
pour le bouton de commande. Cliquez sur le bouton Terminer.
Dans le formulaire Carnet dadresses, le bouton de commande est
cr dans len-tte.
Vous allez examiner lune des proprits du bouton de commande.
Figure 8.40 : Laction dclenche par le bouton sera louverture dun tat
Figure 8.41 : Le choix de limage utilise dans le bouton
534 8. Automatiser les traitements
6 Affichez les proprits du bouton de commande et cliquez sur
longlet Evnement.
Access a cr une macro incorpore pour lvnement Sur Clic.
7 Pour visualiser le code de cette macro, cliquez sur les trois points
dans la ligne des proprits de lvnement.
Access ouvre longlet de la macro dans lequel laction permettant
douvrir ltat est affiche.
8 Fermez longlet de la macro.
9 Affichez le formulaire en mode Formulaire et cliquez sur le bouton
de commande.
Ltat Carnet dadresses est ouvert depuis le formulaire, dans un autre
onglet.
10 Fermez et enregistrez le formulaire Carnet dadresses.
Figure 8.42 : Une macro a t cre pour lvnement Sur clic
Figure 8.43 : Laction de la macro
535 8.7. Cas pratique
C
H
A
P
I
T
R
E
9
GLOSSAIRE
537
B
Backstage (mode Microsoft Office Backstage)
Nouveau terme, spcique Access 2010, dsignant un ensemble
dactions accessibles par le menu Fichier du Ruban. Dans ce mode,
les actions proposes peuvent tre excutes sans quil soit nces-
saire de fermer les objets en cours ddition.
Base de donnes
Ce terme dsigne le plus gros conteneur sous Access. Le conteneur
base de donnes contient lensemble des objets de lapplication
(tables, requtes formulaires, tats, etc.), encapsuls dans un seul et
unique chier portant lextension accdb.
Bote de dialogue
Interface dinterrogation et de communication homme/machine.
C
Champ calcul
Champ, dans une requte, affichant le rsultat dune expression et
non des donnes stockes.
Classe
Dnition globale dun type dobjet permettant de gnrer des objets
enfants appartenant la mme famille.
Cl externe
Champ dans une table renfermant la valeur de la cl primaire dune
autre table.
Cl primaire
Identiant unique, dans une table, contenu dans un ou plusieurs
champs. Une cl primaire peut tre numrique ou alphanumrique
et tre gnre manuellement ou automatiquement par le type de
champ NumroAuto.
Conteneur
Terme gnral dsignant, en programmation oriente objet, tout
objet susceptible de contenir dautres objets conteneurs ou des
539 9. C
objets contenus (qui, eux, ne contiennent queux-mmes). Un conte-
neur se caractrise par ses proprits et ses mthodes.
D
Data Object Model (DOM)
Cest le modle objet de Microsoft. Plus clairement, le Data Object
Model est la reprsentation de la hirarchie des objets conteneurs et
des objets contenus dans une application.
DLL
Ensemble de routines lies une application et ncessaire son
excution.
E
tats
Objet dAccess permettant dafficher ou dimprimer des informations
contenues dans les tables.
Extension
Lextension dun chier indique quelle "famille" appartient le -
chier. Ainsi, par exemple, un chier portant lextension doc appar-
tiendra la famille des chiers documents de Microsoft Word, un
autre portant lextension xls appartiendra la famille des classeurs
de Microsoft Excel, un troisime portant lextension accdb appartien-
dra la famille des bases de donnes de Microsoft Access.
Les noms de chiers sont spars des extensions par un point.
F
Fichier
La dnition la plus gnrale dun chier, en informatique, est :
"stockage dinformation".
Linformation est stocke sur les units de mmoire de masse, sous
la forme dentits, les chiers, gres par le systme dexploitation. Il
existe deux types de chiers : les chiers excutables par le systme
(comme les chiers programmes) et les chiers de donnes (gnrs
par les programmes).
540 9. Glossaire
Fonctions
Les fonctions sont des "outils" de traitement, utilisables dans les
formules et ayant pour but de restituer des rsultats.
Les fonctions reoivent en entre des arguments. La fonction sinus,
par exemple, recevant largument "3", restituera le rsultat "sinus de
3". La quasi-totalit des logiciels (dont Microsoft Access) mettent
notre disposition une grande quantit de fonctions.
Formulaires
Objet Access permettant de saisir et de modier des informations
contenues dans les tables.
Formule
Terme synonyme de calcul.
G
Gnrateur dexpression
Fonctionnalit dAccess permettant de crer facilement des formules
sans avoir en taper la syntaxe.
I
Index
Il est possible de faire une recherche sur le contenu de nimporte
quel champ. Si elle peut tre trs pratique, cette fonctionnalit peut
se rvler longue sur une table contenant de nombreux enregistre-
ments. En effet, dans un tel traitement, Access doit tester tous les
enregistrements de la table les uns aprs les autres. Lorsque nous
crons un index sur un champ, Access constitue, de faon transpa-
rente, une petite table qui napparat pas dans les objets de la base de
donnes (elle nous est cache par le logiciel). Cette table ne contient
que deux champs : le premier renferme la position physique de
lenregistrement (sa position dans la table, dans lordre de constitu-
tion du chier) ; le second contient, quant lui, la position logique,
selon le classement tabli par lindex (ainsi, les noms commenant
par la lettre A, dans un champ stockant des noms, se trouveront
classs avant les noms commenant par la lettre B).
Les index permettent donc dacclrer certains traitements comme
les tris et les recherches. Il existe, de plus, deux catgories dindex :
541 9. I
ceux autorisant les doublons (cest--dire des champs contenant des
valeurs identiques et qui seront positionns au mme niveau dans
lindex) et ceux ne les autorisant pas. Ces derniers pourront tre
utiliss pour garantir lunicit du contenu dun champ, dans une
relation un plusieurs.
Instance
Objet cr depuis une classe.
Intgrit rfrentielle
Fonctionnalit implante sur les systmes de gestion de base de
donnes (et sur Access notamment) permettant de protger lint-
grit des donnes entre les tables.
Interface
Terme gnrique dsignant tout systme, logique ou physique, per-
mettant deux univers incompatibles dentrer en communication.
Un modem (contraction des mots Modulateur et Dmodulateur), par
exemple, est une interface physique. Un systme dexploitation ou
un logiciel sont des interfaces logiques entre le microprocesseur et
lutilisateur.
L
Langage de programmation orients objet
En plus des concepts traditionnels de programmation procdurale,
les langages orients objets ajoutent une couche dite vnementielle
la programmation et mettent la disposition du programmeur une
panoplie dobjets (ou classes). Tout langage de programmation vo-
lu est aujourdhui orient objet.
Lien hypertexte
Zone de texte ractive qui ouvre une page HTML ou un chier
lorsquelle est clique.
M
Macro
Programme enregistr automatiquement par le logiciel, sans quil
soit ncessaire den crire le code.
542 9. Glossaire
Module
Terme synonyme de "programmes en VBA".
N
Null
Valeur qui est affecte un champ dune table lorsque rien ny a t
saisi.
O
Objet
Entit dun langage dune application. Les applications sont presque
toutes construites aujourdhui sur le modle objet. Les objets respec-
tent une hirarchie.
P
Page daccs aux donnes
Fonctionnalit dAccess 2003 qui permettait daccder aux tables
depuis une page HTML dans un navigateur Internet.
Proprit
Valeur qui est attache un objet et permet de le singulariser.
R
Regroupement
En langage SQL, terme indiquant que des lments dune ou de
plusieurs tables sont regroups lors dune extraction dans une re-
qute.
Relation
Lien qui assure la cohrence entre les donnes des tables.
Requte
Objet Access permettant dextraire ou de modier des informations
des tables dAccess. Une requte est un petit programme en langage
SQL.
543 9. R
Ruban
Nouvelle fonctionnalit de linterface des logiciels de la suite Office,
remplaant les menus jusqualors proposs, et prsentant les objets
autorisant le contrle du logiciel utilis.
S
SGBDR
Initiales des mots composant lexpression "systme de gestion de
bases de donnes relationnelles".
SQL (Structured Query Language)
Langage dinterrogation et de mise jour de bases de donnes.
Systme dexploitation
Programme de base permettant lordinateur de fonctionner.
T
Table
Objet permettant le stockage des donnes dans Access.
Tableur
Logiciel permettant de raliser des traitements, sous la forme de
tableaux. Le tableur le plus rpandu ce jour est Microsoft Excel.
U
Unit de mmoire de masse
Les units de mmoire de masse sont des priphriques de stockage
des chiers. Les plus couramment utilises dentre elles sont
aujourdhui les disques durs, les disquettes et le CD-ROM. Leurs
prdcesseurs ont t les bandes magntiques dans les annes 1980
et, dans les annes 1970, les bandes perfores. La caractristique
essentielle des units de mmoire de masse est la non-volatilit
(cest--dire que la conservation de leur contenu nest pas lie au
passage du courant lectrique), contrairement aux units de m-
moire vive.
544 9. Glossaire
Unit de mmoire vive
La mmoire vive est la mmoire de travail du microprocesseur. Elle
est rapide (beaucoup plus que la mmoire de masse). Ce type de
mmoire est volatile (la conservation de son contenu est lie au
passage du courant lectrique).
V
Valeur boolenne
Valeur utilise en algbre de Boole, pouvant tre soit vraie, soit
fausse.
VBA (Visual Basic For Applications)
Langage de programmation utilis sur la plupart des logiciels Micro-
soft.
545 9. V
A
Accdb........................................................................................................................... 15, 30, 33
Accde....................................................................................................................................... 33
Accdt ........................................................................................................................................ 33
Actif/Inactif ........................................................................................................................... 175
Afficher des colonnes ......................................................................................................... 108
Aide .......................................................................................................................................... 55
Ajout
Dun champ .......................................................................................................................... 100-101
Dun enregistrement ............................................................................................................. 90, 397
Alias........................................................................................................................................ 302
Analyse.............................................................................................................................. 26, 74
Aperu avant impression ........................................................................................... 110, 112
Argument ............................................................................................................................... 504
ASP......................................................................................................................................... 526
Assistant Masque de saisie............................................................................................... 180
Astrisque............................................................................................................................. 312
Atteindre
Un enregistrement....................................................................................................................... 400
Une page ..................................................................................................................................... 467
Automatisation ..................................................................................................................... 501
B
Backstage ....................................................................................................................... 35, 539
Barre dtat ............................................................................................................................. 46
Affichage ....................................................................................................................................... 46
Barre doutils Accs rapide................................................................................................. 41
Contenu ......................................................................................................................................... 43
Positionnement.............................................................................................................................. 42
Barre de
Navigation............................................................................................................................. 97, 400
Redimensionnement...................................................................................................................... 44
Base de donnes............................................................................................... 15, 22, 25, 539
Compatibilit avec dautres formats............................................................................................. 39
Cration ......................................................................................................................................... 30
Cration partir dun modle....................................................................................................... 35
Cration dune base vide ........................................................................................................ 31, 76
Fermer............................................................................................................................................ 37
Mode douverture.......................................................................................................................... 39
Ouvrir ............................................................................................................................................. 37
Recherche...................................................................................................................................... 39
Bote de dialogue................................................................................................................. 539
Bouton
Ajout denregistrement ............................................................................................................... 396
De navigation .............................................................................................................................. 396
De dplacement ............................................................................................................ 97, 400, 467
I
N
D
E
X
Index 547
C
Caractre de substitution................................................................................................... 117
Caractre joker..................................................................................................................... 117
Cascade........................................................................................................................... 20, 260
De mise jour ............................................................................................................................. 262
Suppression................................................................................................................................. 262
Casse...................................................................................................................................... 172
Casse de caractres ........................................................................................................... 116
Champ........................................................................................................................ 20, 60, 101
Ajout ............................................................................................................................................ 159
Date et heure ................................................................................................................................ 91
Dplacement ............................................................................................................................... 162
NumroAuto.................................................................................................................................. 91
Proprit Dcimales.................................................................................................................... 176
Proprit Format.......................................................................................................................... 168
Proprit Lgende ....................................................................................................................... 177
Proprit Masque de saisie........................................................................................................ 179
Proprit Message si erreur ............................................................................................... 197, 201
Proprit Nouvelles valeurs........................................................................................................ 167
Proprit Null interdit ................................................................................................................. 179
Proprit Taille du champ........................................................................................................... 165
Proprit Valeur par dfaut......................................................................................................... 177
Proprit Valide si ....................................................................................................................... 197
Proprits .................................................................................................................................... 164
Slection...................................................................................................................................... 160
Suppression................................................................................................................................. 162
Champ...................................................................................................................................... 20
Calcul......................................................................................................................... 204, 267, 539
Vierge .......................................................................................................................................... 117
Classe............................................................................................................................. 383, 539
Clause de prdicat............................................................................................................... 325
Cl trangre........................................................................................................................ 237
Cl externe.................................................................................................................... 237, 539
Cl primaire................................................................................. 19, 30, 64, 232-233, 237, 539
Supprimer .................................................................................................................................... 236
Sur plusieurs champs.................................................................................................................. 235
Sur un champ .............................................................................................................................. 233
Cohrence des donnes..................................................................................................... 229
Colonne.............................................................................................................................. 20, 25
Afficher ........................................................................................................................................ 108
Fige ............................................................................................................................................ 103
Libre......................................................................................................................................... 104
Masquer ...................................................................................................................................... 107
Colonne de recherche ........................................................................................................ 196
Colonne lie .......................................................................................................................... 374
Concatnation ...................................................................................................................... 354
Condition................................................................................................................................ 132
Conguration matrielle ....................................................................................................... 14
548 Index
Conteneur...................................................................................................................... 382, 539
Contrle
Calcul......................................................................................................................................... 411
Dpendant ................................................................................................................................... 411
Dsactivation............................................................................................................................... 436
Indpendant................................................................................................................................. 411
Verrouillage ................................................................................................................................. 436
Couleur
Codage......................................................................................................................................... 411
Modier ....................................................................................................................................... 409
Critre .................................................................................................................................... 126
D
Data Object Model......................................................................................................... 21, 540
Date/Heure...................................................................................................................... 91, 173
Dcimales.............................................................................................................................. 176
Dmarrage automatique..................................................................................................... 526
Dplacement dun champ .................................................................................................. 102
Description...................................................................................................................... 63, 330
DLL.......................................................................................................................................... 540
DOM................................................................................................................................. 21, 540
Donnes connexes.............................................................................................................. 279
Dossier..................................................................................................................................... 33
Doublon.......................................................................................................................... 205, 337
E
En-tte de colonne ................................................................................................................ 89
Enregistrement ................................................................................................................. 20, 25
ET............................................................................................................................ 124, 132, 319
tat ...................................................................................................................... 24-25, 451, 540
Aperu avant impression ............................................................................................................ 466
Assistant Etat .............................................................................................................................. 451
Assistant Etiquette...................................................................................................................... 455
Bouton Etat.................................................................................................................................. 459
Boutons de dplacement ............................................................................................................ 467
Contrles ..................................................................................................................................... 474
Enregistrer ................................................................................................................................... 482
Etat vide....................................................................................................................................... 463
tats avancs .............................................................................................................................. 482
Fermer.......................................................................................................................................... 482
Impression ................................................................................................................................... 469
Mise en page .............................................................................................................................. 468
Mode Cration............................................................................................................................. 459
Modication ................................................................................................................................ 469
Ouverture en mode Aperu avant impression............................................................................ 466
549 Index
Ouverture en mode Cration....................................................................................................... 469
Ouverture en mode Etat .............................................................................................................. 464
Ouverture en mode Page............................................................................................................. 465
Proprits .................................................................................................................................... 474
Rapidement ................................................................................................................................. 459
Regroupement ..................................................................................................................... 453, 477
Saut de page ............................................................................................................................... 481
Sections....................................................................................................................................... 471
Simple.......................................................................................................................................... 451
Source de donnes...................................................................................................................... 460
Sous-tat ..................................................................................................................................... 482
Structure...................................................................................................................................... 469
Totaux par regroupement............................................................................................................ 454
Tris des donnes ......................................................................................................................... 474
Visualisation................................................................................................................................ 463
tiquette ................................................................................................................ 385, 396, 455
vnement....................................................................................................................... 21, 382
Expression............................................................................................................................. 128
Extension............................................................................................................................... 540
Des chiers Access ....................................................................................................................... 33
Extraction de donnes ........................................................................................................ 291
F
Feuille de donnes........................................................................................................... 23, 87
Afficher des colonnes.................................................................................................................. 108
Ajout dun champ ........................................................................................................................ 100
Ajout dun enregistrement ............................................................................................................ 90
Aperu avant impression ............................................................................................................ 112
Boutons de dplacement .............................................................................................................. 97
Dplacement dun champ ........................................................................................................... 102
Fermeture ...................................................................................................................................... 90
Hauteur des lignes ........................................................................................................................ 99
Imprimer des donnes dune table ............................................................................................. 109
Largeur des colonnes .................................................................................................................... 99
Masquer des colonnes................................................................................................................ 107
Mise en page .............................................................................................................................. 109
Modication de donnes .............................................................................................................. 92
Modier la mise en forme .......................................................................................................... 105
Ouverture dune table ................................................................................................................... 87
Rechercher des donnes dans table........................................................................................... 114
Remplacer des donnes dans table............................................................................................ 118
Renommer un champ .................................................................................................................. 104
Slection........................................................................................................................................ 93
Suppression dun enregistrement ................................................................................................. 98
Supprimer un champ ................................................................................................................... 105
Fichier .................................................................................................................................... 540
Filtre................................................................................................................................ 123, 126
Avanc......................................................................................................................................... 137
Critres personnaliss................................................................................................................. 128
550 Index
Filtre courant ............................................................................................................................... 126
Hors slection.............................................................................................................................. 131
Par formulaire...................................................................................................................... 131, 152
Par slection........................................................................................................................ 130, 150
Fonctions ............................................................................................................................... 541
Format .................................................................................................................................... 168
Personnalis ................................................................................................................................ 171
Prdni....................................................................................................................................... 168
Denregistrement........................................................................................................................... 34
Dimportation................................................................................................................................. 70
De chiers de bases de donnes.................................................................................................. 39
Formulaire ................................................................................................................. 23, 25, 541
Ajout dun enregistrement .......................................................................................................... 397
Ajustement de la taille dun contrle......................................................................................... 417
Alignement dun contrle par rapport un autre....................................................................... 418
Assistant Formulaire ................................................................................................................... 383
Bouton Formulaire....................................................................................................................... 387
Bouton Formulaire double affichage........................................................................................... 389
Bouton Plusieurs lements ......................................................................................................... 388
Boutons de dplacement ............................................................................................................ 400
Contrle calcul........................................................................................................................... 413
Contrle dpendant..................................................................................................................... 413
Contrle indpendant.................................................................................................................. 412
Couleur darrire-plan ................................................................................................................. 409
Crer un sous-formulaire dans un formulaire existant .............................................................. 427
Dplacement dun contrle......................................................................................................... 416
Dissociation de contrles............................................................................................................ 420
Enregistrer ................................................................................................................................... 424
Espacement entre les contrles.................................................................................................. 418
Fermer.......................................................................................................................................... 424
Filtre............................................................................................................................................. 402
Formulaire simple........................................................................................................................ 383
Formulaire vierge......................................................................................................................... 395
Formulaires imbriqus................................................................................................................. 424
Groupement de contrles............................................................................................................ 419
Insertion dune image darrire-plan .......................................................................................... 408
Manipulation de donnes ........................................................................................................... 395
Mise en forme............................................................................................................................. 408
Mise en forme conditionnelle..................................................................................................... 421
Mise en forme de contrles........................................................................................................ 420
Modal .......................................................................................................................................... 530
Mode Cration .................................................................................................................... 388, 390
Mode Formulaire......................................................................................................................... 388
Mode Page .................................................................................................................................. 388
Modle conceptuel...................................................................................................................... 382
Modication de donnes ............................................................................................................ 398
Modier ....................................................................................................................................... 403
Ordre de superposition des contrles......................................................................................... 419
Ordre de tabulation ..................................................................................................................... 422
Ouverture en mode Formulaire ................................................................................................... 395
Principes ...................................................................................................................................... 381
Proprit dun contrle................................................................................................................ 415
551 Index
Proprits .................................................................................................................................... 406
Quitter le mode Formulaire......................................................................................................... 396
Rapidement ................................................................................................................................. 387
Recherche.................................................................................................................................... 402
Redimensionnement dun contrle ............................................................................................. 416
Remplacement............................................................................................................................. 402
Sections....................................................................................................................................... 404
Slection dun contrle ............................................................................................................... 415
Source de donnes...................................................................................................................... 391
Source du formulaire................................................................................................................... 407
Sous-formulaire........................................................................................................................... 424
Structure...................................................................................................................................... 403
Suppression dun enregistrement ............................................................................................... 401
Tri................................................................................................................................................. 402
Utilisation des contrles ............................................................................................................. 411
Formule.................................................................................................................................. 541
G
Gnrateur
Dexpression................................................................................................................ 178, 325, 541
De requtes................................................................................................................................. 293
Graphique.............................................................................................................................. 512
Crois dynamique........................................................................................................................ 381
H
Hauteur des lignes................................................................................................................. 99
Hritage................................................................................................................................. 383
Hexadcimal ......................................................................................................................... 411
HTML...................................................................................................................................... 523
I
Identiant unique................................................................................................................... 18
Image
Attache ...................................................................................................................................... 409
Intgre ....................................................................................................................................... 409
Importation.............................................................................................................................. 70
Structure........................................................................................................................................ 72
Impression............................................................................................................................. 109
Indpendance des champs.................................................................................................. 28
Index ...................................................................................................................... 205, 227, 541
Multichamps................................................................................................................................ 205
Suppression................................................................................................................................. 209
Sur plusieurs champs.................................................................................................................. 207
Sur un champ unique .................................................................................................................. 205
552 Index
Infobulle................................................................................................................................... 42
Instance................................................................................................................................. 542
Intgrit rfrentielle.............................................................................. 20, 99, 231, 256, 542
Appliquer ..................................................................................................................................... 259
Cascade ....................................................................................................................................... 260
Principes ...................................................................................................................................... 256
Interdire la saisie ................................................................................................................. 224
Interface................................................................................................................................ 542
DAccess 2010............................................................................................................................... 40
J-L
Jointure.......................................................................................................................... 317, 330
Interne ......................................................................................................................................... 331
Lancer lapplication au dmarrage................................................................................... 526
Langage de programmation orient objet ....................................................................... 542
Largeur des colonnes ................................................................................................... 99, 375
Lgende................................................................................................... 89, 177, 210, 330, 396
Lien hypertexte............................................................................................................. 143, 542
Ligne............................................................................................................................. 17, 20, 25
Liste de choix........................................................................................................ 186, 375, 395
Saisir plusieurs valeurs............................................................................................................... 188
Utilisant des valeurs constantes................................................................................................. 186
Utilisant des valeurs dune table................................................................................................ 190
Liste de valeurs ............................................................................................................ 214, 220
Liste droulante.................................................................................................................... 396
M
Macro................................................................................................................. 24-25, 503, 542
Afficher un message.................................................................................................................... 529
Avec plusieurs actions ........................................................................................................ 505, 530
Lance par un bouton de commande.......................................................................................... 533
Lance par un vnement........................................................................................................... 530
Macro-commande................................................................................................................. 24
Action .......................................................................................................................................... 504
Crer ............................................................................................................................................ 503
Excuter................................................................................................................................ 508-509
Modier ....................................................................................................................................... 506
Pas pas ..................................................................................................................................... 508
Majuscule.............................................................................................................................. 211
Manipulation de donnes..................................................................................................... 85
Masque de recherche ........................................................................................................ 117
Masque de saisie ........................................................................................ 179, 212, 218, 330
Assistant...................................................................................................................................... 180
Personnalis ................................................................................................................................ 184
Test.............................................................................................................................................. 182
553 Index
Masquer des colonnes ....................................................................................................... 107
Mdb .......................................................................................................................................... 33
Mde .......................................................................................................................................... 33
Mmo..................................................................................................................................... 172
Merise.................................................................................................................................... 231
Message si erreur ....................................................................................................... 197, 201
Mthode .......................................................................................................................... 21, 382
Mise en forme des caractres.......................................................................................... 105
Mise en page........................................................................................................................ 109
Modal ..................................................................................................................................... 530
Mode
Backstage ...................................................................................................................................... 35
Cration......................................................................................................................... 57, 159, 308
Feuille de donnes .................................................................................................................. 23, 87
Formulaire.................................................................................................................................... 395
Modle..................................................................................................................................... 35
Modication de donnes.............................................................................................. 92, 398
Module..................................................................................................................... 25, 509, 543
Montaire.............................................................................................................................. 169
N
Navigateur Internet ............................................................................................................. 522
Nom de champ ....................................................................................................................... 60
Nom de chier ........................................................................................................................ 33
Nouvelles valeurs ................................................................................................................ 167
Null ................................................................................................................................. 117, 543
Null interdit............................................................................................................................ 179
Numrique..................................................................................................................... 166, 169
NumroAuto ............................................................................................................. 61, 91, 167
Numrotation automatique .................................................................................................. 62
O
Objet ................................................................................................................... 21-22, 164, 543
Afficher .......................................................................................................................................... 48
Conteneur ...................................................................................................................................... 22
Contenu ......................................................................................................................................... 22
Copier/Coller ................................................................................................................................. 51
Dcrire ........................................................................................................................................... 53
Dupliquer ....................................................................................................................................... 51
Manipuler ...................................................................................................................................... 47
Masquer ........................................................................................................................................ 54
Nom............................................................................................................................................. 435
Renommer ..................................................................................................................................... 50
Supprimer ...................................................................................................................................... 52
Onglet de commandes .......................................................................................................... 40
554 Index
Oprateur
Boolen........................................................................................................................................ 132
Et.................................................................................................................................................. 132
Logique ........................................................................................................................................ 132
Oprateurs logique.............................................................................................................. 124
Opration............................................................................................................................... 326
Oracle....................................................................................................................................... 14
Ordonnancement
Logique ........................................................................................................................................ 120
Physique ...................................................................................................................................... 120
Ou.................................................................................................................................... 124, 321
Oui/Non.................................................................................................................................. 175
Ouverture dune table ........................................................................................................... 87
P
Page daccs aux donnes........................................................................................ 526, 543
Page web............................................................................................................................... 523
Paramtre.............................................................................................................................. 350
Dimportation
Dnition ....................................................................................................................................... 73
Enregistrement .............................................................................................................................. 73
Paramtres rgionaux......................................................................................................... 169
Plus de champs.................................................................................................................... 101
Polymorphisme..................................................................................................................... 383
Prdicat ......................................................................................................................... 306, 325
Primaire ................................................................................................................................. 234
Procdure vnementielle................................................................................................. 510
Produit cartsien ......................................................................................................... 302, 357
Proprit.......................................................................................................... 21, 164, 382, 543
Colonne lie................................................................................................................................. 374
Dcimales.................................................................................................................................... 176
Format.......................................................................................................................................... 168
Ignorer Nulls................................................................................................................................ 209
Index .......................................................................................................................................... 205
Lgende ....................................................................................................................................... 177
Masque de saisie........................................................................................................................ 179
Message si erreur ............................................................................................................... 197, 201
Nouvelles valeurs........................................................................................................................ 167
Null interdit ................................................................................................................................. 179
Primaire ....................................................................................................................................... 234
Taille du champ........................................................................................................................... 165
Unique ......................................................................................................................................... 208
Valeur par dfaut ........................................................................................................................ 177
Valide si....................................................................................................................................... 197
Pseudo-langage................................................................................................................... 362
555 Index
R
RAD........................................................................................................................................... 13
Recherche............................................................................................................................. 143
Caractre de substitution............................................................................................................ 117
Null .............................................................................................................................................. 117
Slection de la valeur recherche .............................................................................................. 115
Rechercher des donnes ................................................................................................... 114
Redondance............................................................................................................................ 15
Dinformations............................................................................................................................... 28
Rgle de validation...................................................................................................... 196, 225
Sur un champ .............................................................................................................................. 197
Sur une table............................................................................................................................... 202
Regroupement .............................................................................................................. 474, 543
Par sujets....................................................................................................................................... 26
Relation...................................................................................................... 20, 28, 231, 237, 543
Cl trangre............................................................................................................................... 237
Cl externe .................................................................................................................................. 237
Cl primaire................................................................................................................................. 237
Crer une relation un plusieurs automatiquement ................................................................. 238
Crer une relation un plusieurs manuellement ....................................................................... 240
Imprimer ...................................................................................................................................... 264
Modier ....................................................................................................................................... 254
Plusieurs plusieurs ................................................................................................................... 244
Supprimer .................................................................................................................................... 255
Un plusieurs ..................................................................................................... 237, 267, 270, 274
Un un................................................................................................................................ 251, 281
Remplacement...................................................................................................................... 143
Remplacer des donnes..................................................................................................... 118
Renommer un champ .......................................................................................................... 104
Rplique................................................................................................................................. 244
Requte ............................................................................................................. 22, 25, 293, 543
Action .................................................................................................................................. 342, 369
Afficher le rsultat en mode Cration ........................................................................................ 310
Afficher les premires valeurs .................................................................................................... 314
Assistant...................................................................................................................................... 333
Assistant requte simple ............................................................................................................ 333
Crer en mode Cration.............................................................................................................. 308
Critre........................................................................................................................... 303, 358-359
Dnition dun format dans une requte.................................................................................... 329
Enregistrer ................................................................................................................................... 314
ET................................................................................................................................................. 319
Fermer.......................................................................................................................................... 314
Jointure ....................................................................................................................................... 330
Liste de choix .............................................................................................................................. 372
Mode Cration .................................................................................................................... 308, 358
Mode SQL.................................................................................................................................... 353
Modier la requte en mode Cration ....................................................................................... 312
OU................................................................................................................................................ 321
Ouvrir en mode Cration............................................................................................................. 311
556 Index
Paramtre............................................................................................................................ 350, 370
Police de caractres.................................................................................................................... 297
Prdicat........................................................................................................................................ 325
Recherche de doublons............................................................................................................... 337
Recherche de non-correspondance............................................................................................. 340
Regroupement ............................................................................................................................. 306
Requte action de type ajout...................................................................................................... 345
Requte action de type cration de table .................................................................................. 342
Requte action de type mise jour............................................................................................ 348
Requte action de type suppression .......................................................................................... 347
Slection...................................................................................................................................... 294
Slection sur plusieurs tables..................................................................................................... 302
Structure...................................................................................................................................... 295
Sur plusieurs tables .................................................................................................................... 316
Totaux.......................................................................................................................................... 364
Tri................................................................................................................................................. 301
Trier ............................................................................................................................................. 315
Utilisant des critres................................................................................................................... 319
Utilisant des oprations.............................................................................................................. 326
Utilisation de plusieurs oprateurs logiques.............................................................................. 324
Restituer les donnes ......................................................................................................... 449
Ruban............................................................................................................................... 40, 544
Personnalisation............................................................................................................................ 41
S
Saisie...................................................................................................................................... 379
De donnes ........................................................................................................................... 87, 139
Obligatoire................................................................................................................................... 217
Slecteur
Denregistrement........................................................................................................................... 95
De champ....................................................................................................................................... 94
De formulaire ....................................................................................................................... 406-407
Slection
Champ entier ................................................................................................................................. 93
Colonne entire............................................................................................................................. 94
Denregistrements......................................................................................................................... 95
Dun enregistrement...................................................................................................................... 95
Dun grand nombre de colonnes................................................................................................... 95
Dun grand nombre de lignes........................................................................................................ 96
De champs..................................................................................................................................... 93
De plusieurs enregistrements contigus........................................................................................ 96
De tous les enregistrements de la table ...................................................................................... 96
Partie dun champ ......................................................................................................................... 93
Plusieurs champs........................................................................................................................... 93
Plusieurs colonnes mitoyennes..................................................................................................... 94
SGBDR ............................................................................................................................. 12, 544
Sharepoint Services............................................................................................................ 526
Source de donnes ..................................................................................................... 391, 460
Lie ................................................................................................................................................ 71
557 Index
Sous-feuille de donnes..................................................................................................... 279
Sous-formulaire............................................................................................................ 387, 425
SQL ......................................................................................................................... 293, 295, 353
SQL Server .............................................................................................................................. 14
Structure
Dun tat...................................................................................................................................... 469
Dun formulaire............................................................................................................................ 403
Dune table.................................................................................................................................. 157
Sujet.............................................................................................................................. 15, 27-28
Suppression
Dune ligne .................................................................................................................................... 99
Dans des tables en relation.......................................................................................................... 99
De plusieurs lignes........................................................................................................................ 99
En cascade..................................................................................................................................... 99
Suppression dun enregistrement............................................................................... 98, 401
Supprimer un champ........................................................................................................... 105
Systme dexploitation........................................................................................................ 544
T
Table............................................................................................................... 15, 20, 22, 25, 544
Ajout dun champ ........................................................................................................................ 159
Cration ......................................................................................................................................... 57
Cration en entrant des donnes ........................................................................................... 65, 77
Cration en important des donnes ............................................................................................. 70
Dplacement dun champ ........................................................................................................... 162
Description .................................................................................................................................... 82
Enregistrer ..................................................................................................................................... 64
Fermer............................................................................................................................................ 64
Manipulation des champs........................................................................................................... 157
Mode Cration ........................................................................................................................ 57, 79
Optimisation de la structure ....................................................................................................... 155
Ouverture....................................................................................................................................... 87
Proprits des champs................................................................................................................ 164
Slection de champs................................................................................................................... 160
Structure...................................................................................................................................... 157
Suppression dun champ............................................................................................................. 162
Table
De jonction .......................................................................................................................... 244, 248
De vrit...................................................................................................................................... 320
Tableau crois dynamique ......................................................................................... 381, 516
Tableur ................................................................................................................................... 544
Taille
Dun contrle............................................................................................................................... 417
Du champ ............................................................................................................................ 165, 212
Texte............................................................................................................................... 166, 172
Tri
Avanc................................................................................................................................. 122, 147
Complexe..................................................................................................................................... 122
558 Index
Croissant...................................................................................................................................... 146
Effacer.......................................................................................................................................... 122
Effacer les paramtres du tri avanc.......................................................................................... 125
Enregistrement des tris avancs................................................................................................. 126
Retrouver lordre initial des donnes ......................................................................................... 150
Simple.......................................................................................................................................... 120
Sur plusieurs colonnes................................................................................................................ 122
Tri des objets........................................................................................................................... 50
Type de donnes.................................................................................................................... 61
Date/Heure.................................................................................................................................. 173
Mmo .......................................................................................................................................... 172
Montaire.................................................................................................................................... 169
Numrique........................................................................................................................... 166, 169
NumroAuto................................................................................................................................ 167
Oui/Non ....................................................................................................................................... 175
Texte.................................................................................................................................... 166, 172
U
Unicit...................................................................................................................................... 63
Unique.................................................................................................................................... 208
Unit
De mmoire de masse ................................................................................................................ 544
De mmoire vive ......................................................................................................................... 545
V
Valeur
Boolenne.................................................................................................................................... 545
Par dfaut ............................................................................................................................ 177, 212
Valide si ................................................................................................................................. 197
VBA......................................................................................................................................... 545
Version..................................................................................................................................... 14
Violation de lintgrit des donnes................................................................................. 258
Visual Basic .................................................................................................................... 25, 509
Volet de navigation................................................................................................................ 44
Modier la tailleRduire ............................................................................................................... 44
Vrai/Faux................................................................................................................................ 175
X-Z
XML ........................................................................................................................................ 523
Zone
De dpt ...................................................................................................................................... 514
De texte............................................................................................................................... 385, 396
559 Index
Compos en France par Jouve
11, bd de Sbastopol - 75001 Paris

Vous aimerez peut-être aussi