Vous êtes sur la page 1sur 148

COURS BARDON - ACCESS 2010

Chantal BOURRY, 2010



Sommaire

CHAPITRE 1 ACCESS 2010, BASE DE DONNEES ET OBJETS _________________ 3
FONDAMENTAUX OFFICE 2010 ________________________________________________________________________ 3
1. ACCESS, ACCEDER _____________________________________________________________________________________ 3
2. ACCESS EST UN SGBDR _______________________________________________________________________________ 3
3. LA BASE DE DONNEES : UN DOMAINE, UN FICHIER _______________________________________________ 4
4. BASE DE DONNEES ET OBJETS _______________________________________________________________________ 4
5. CREER, FERMER, OUVRIR UNE BASE ________________________________________________________________ 5
6. LE VOLET DE NAVIGATION DACCESS 2010 ________________________________________________________ 7
7. PARAMETRAGE DU LOGICIEL ________________________________________________________________________ 9
CHAPITRE 2 TABLES : ANALYSE PREALABLE ET CREATION _____________ 10
1. ANALYSE PREALABLE ______________________________________________________________________________ 10
2. EXEMPLE : ANALYSE, TABLES ET ENREGISTREMENTS _________________________________________ 11
3. TABLES : METHODES DIVERSES DE CREATION __________________________________________________ 13
4. PASSAGE DUN MODE DAFFICHAGE A LAUTRE _________________________________________________ 13
5. CREATION DUNE TABLE EN MODE CREATION __________________________________________________ 14
6. CREATION DUNE TABLE EN MODE FEUILLE DE DONNEES ____________________________________ 16
7. CREATION DUNE TABLE PAR IMPORTATION____________________________________________________ 18
8. ENREGISTRER ET FERMER UNE TABLE __________________________________________________________ 18
CHAPITRE 3 TABLE : GESTION DES DONNEES ___________________________ 19
1. DESCRIPTION ET SAISIE EN MODE FEUILLE DE DONNEES _____________________________________ 19
2. MISE EN PAGE ET IMPRESSION DES DONNEES DUNE TABLE _________________________________ 25
3. IMPORTER ET EXPORTER DES DONNEES_________________________________________________________ 26
CHAPITRE 4 TABLE : RECHERCHER ET REMPLACER, TRI ET FILTRE _____ 28
1. RECHERCHER ET REMPLACER UNE CHAINE DE CARACTERES ________________________________ 28
2. TRI SIMPLE OU TRI AVEC FILTRE _________________________________________________________________ 30
3. FILTRER LES DONNEES DUNE TABLE ____________________________________________________________ 32
CHAPITRE 5 TABLE : GESTION APPROFONDIE DES CHAMPS _____________ 36
1. GESTION DES CHAMPS EN MODE CREATION _____________________________________________________ 36
2. PROPRIETES (ONGLET GENERAL )
A. Taille du champ, B. Nouvelles valeurs, C. Format, D. Dcimales, E. Masque de saisie, F. Lgende, G. Valeur par dfaut,
H. Valide si et Message si erreur, I. Null interdit, J. Index, K. Aligner le texte ______________________________________ 37
3. LISTES DE CHOIX ____________________________________________________________________________________ 49
CHAPITRE 6 RELATIONS ENTRE LES TABLES ____________________________ 52
1. LINTERET DE LIER DES TABLES __________________________________________________________________ 52
2. CHAMPS IDENTIFIANTS, CLES PRIMAIRES ET CLES ETRANGERES ____________________________ 52
3. TYPES DE RELATIONS ET TABLES DE JONCTION ________________________________________________ 55
4. CREATION, MODIFICATION ET IMPRESSION DES RELATIONS _________________________________ 58
5. INTEGRITE REFERENTIELLE_______________________________________________________________________ 61
CHAPITRE 7 TABLES ET ENREGISTREMENTS, EXEMPLES ________________ 65
1. STRUCTURES ET RELATIONS DES TABLES PRISES EN EXEMPLES _____________________________ 65
2. ENREGISTREMENTS DES TABLES PRISES EN EXEMPLES _______________________________________ 66
CHAPITRE 8 LES REQUETES : INTRODUCTION ___________________________ 68
1. REQUETES SELECTION ET REQUETES ACTION __________________________________________________ 68
2. LASSISTANT, LE MODE CREATION ET LE MODE SQL ___________________________________________ 69

COURS BARDON - ACCESS 2010
2
CHAPITRE 9 - REQUETE DE SELECTION AVEC UN ASSISTANT _____________ 71
1. REQUETE SIMPLE AVEC UN ASSISTANT ______________________________________________________ 72
2. REQUETE ANALYSE CROISEE AVEC UN ASSISTANT _________________________________________ 74
3. REQUETE TROUVER LES DOUBLONS AVEC UN ASSISTANT _________________________________ 75
4. REQUETE DE NON CORRESPONDANCE AVEC UN ASSISTANT ______________________________ 76
CHAPITRE 10 - REQUETE DE SELECTION EN MODE CREATION ____________ 77
1. FENETRE DELABORATION DUNE REQUETE EN MODE CREATION ___________________________ 78
2. AFFICHAGE DES TABLES ET DES CHAMPS ________________________________________________________ 79
3. TRI ____________________________________________________________________________________________________ 81
4. CRITERES ____________________________________________________________________________________________ 81
5. CALCULS EFFECTUES SUR LES DONNEES_________________________________________________________ 86
6. LES PROPRIETES DES CHAMPS DANS LA TABLE RESULTAT ___________________________________ 86
7. CREATION DUNE JOINTURE ENTRE DEUX TABLES _____________________________________________ 87
8. REQUETE PARAMETREE ___________________________________________________________________________ 90
CHAPITRE 11 REQUETE DE SELECTION EN MODE SQL ___________________ 91
1. CLAUSES SELECT ET FROM ________________________________________________________________________ 93
2. CHAMPS OPERES ____________________________________________________________________________________ 96
3. CHAMP DE FONCTION ______________________________________________________________________________ 97
4. CLAUSE WHERE _____________________________________________________________________________________ 98
5. DATES ET HEURES _________________________________________________________________________________ 103
6. REQUETE PARAMETREE __________________________________________________________________________ 105
7. TRI DES ENREGISTREMENTS _____________________________________________________________________ 106
8. SOUS-REQUTES ___________________________________________________________________________________ 107
9. REQUETES DE REGROUPEMENTS ________________________________________________________________ 109
CHAPITRE 12 REQUETES ACTION ______________________________________ 112
1. REQUETES ACTION EN MODE CREATION________________________________________________________ 112
2. REQUETES ACTION EN MODE SQL _______________________________________________________________ 116
CHAPITRE 13 LES FORMULAIRES ______________________________________ 121
1. CREER UN FORMULAIRE __________________________________________________________________________ 121
2. GESTION DES DONNEES DUN FORMULAIRE ____________________________________________________ 125
3. PERSONNALISATION DUN FORMULAIRE _______________________________________________________ 127
4. LES CONTROLES ____________________________________________________________________________________ 128
5. CREER UN SOUS-FORMULAIRE ___________________________________________________________________ 135
CHAPITRE 14 LES ETATS _______________________________________________ 137
1. CREER UN ETAT ____________________________________________________________________________________ 137
2. AFFICHAGE, MISE EN PAGE ET IMPRESSION ____________________________________________________ 141
3. PERSONNALISATION DUN ETAT _________________________________________________________________ 142
4. CREER UN SOUS-ETAT _____________________________________________________________________________ 147

COURS BARDON - ACCESS 2010 / CHAPITRE 1
3
CHAPITRE 1 ACCESS 2010, BASE DE
DONNEES ET OBJETS



FONDAMENTAUX OFFICE 2010

Pour tudier des mthodes et lments essentiels, communs aux logiciels Microsoft
Office 2010, donc applicables Access 2010, voir sur notre site www.coursbardon-
microsoftoffice.fr le document suivant :

FONDAMENTAUX OFFICE 2010
(8 pages tlchargement gratuit)

Vous y verrez en particulier :
- Le mode Backstage
- La constitution et laffichage du ruban
- Lintrt de la barre doutils Accs rapide
- La protection dun fichier par mot de passe.

1. ACCESS, ACCEDER

Access est un logiciel qui permet daccder rapidement aux informations souhaites
concernant des ensembles de donnes. Ce programme est dautant plus utile que les donnes
grer sont nombreuses, donc difficiles traiter la main .

Lancement dAccess 2010

Pour dmarrer Access 2010 : cliquez sur le bouton Dmarrer > Tous les
programmes > Microsoft Office > Microsoft Access 2010.
Louverture dune base de donnes lance automatiquement Access.


2. ACCESS EST UN SGBDR

Access est un SGBDR, ce sigle signifie : Systme informatique de Gestion de Bases de
Donnes Relationnel.
Il sagit dun systme relationnel : les donnes sont en effet organises en ensembles
structurs relis entre eux. Ces liaisons permettent de grer les donnes dun ensemble
lautre, et dobtenir les informations souhaites en interrogeant la base de donnes.

Lanc en 1992, Access est le SGBDR le plus utilis actuellement. Il existe dautres
SGBDR plus puissants, parmi lesquels Oracle et SQL Server.

Lessentiel de ce cours sapplique tout SGBDR.
COURS BARDON - ACCESS 2010 / CHAPITRE 1
4
3. LA BASE DE DONNEES : UN DOMAINE, UN FICHIER

Une base de donnes est un ensemble dinformations structures, qui concerne un
domaine prcis.

Exemples :
On peut crer une base de donnes pour faciliter :
- La gestion des livres dune bibliothque
- La facturation des clients dune entreprise
- Lallocation de panneaux publicitaires.

On enregistre une base de donnes ralise avec Access, sous la forme dun fichier.

- Extension

Les fichiers de bases de donnes cres sous Access 2010 portent communment
lextension .accdb. Ce sigle signifie access database, cest--dire base de donnes Access.
Exemple : daprs son extension, le fichier bibliotheque.accdb est une base de donnes
cre sous Access 2007 ou sous Access 2010.

Les fichiers crs sous Access 2007 ont galement lextension .accdb, tandis que ceux crs sous Access
2003 ont lextension .mdb. Ce sigle signifie microsoft database, cest--dire base de donnes Microsoft.
Exemple : le fichier bibliotheque.mdb a t cr sous Access 2003.

Il existe deux autres extensions, spcifiques certains fichiers dAccess 2007 ou 2010 :
- Les fichiers uniquement excutables, qui ne sont pas modifiables, ont lextension
.accde (e comme execute).
- Les fichiers qui sont des modles de bases de donnes portent lextension .accdt
(t comme type, qui signifie modle).


4. BASE DE DONNEES ET OBJETS

Sous Access, on utilise souvent le terme objet pour dsigner un type dlment.
Une base de donnes est un objet, pouvant lui-mme contenir dautres types dobjets.

Les principaux objets dune base sont :

Les tables

Les tables constituent les lments essentiels. Elles sont la charpente de la base.
Chaque table reprsente un ensemble homogne de donnes.
Exemple : la base de donnes concernant la facturation des clients dune entreprise
pourra contenir les tables Client, Produit, Facture et Commande.

Les requtes

Dans le langage courant, faire une requte consiste demander quelque chose.
Dans une base de donnes, on ralise principalement des requtes pour interroger la base
afin de slectionner et dobtenir les informations souhaites (requtes de slection).
COURS BARDON - ACCESS 2010 / CHAPITRE 1
5
Exemple : dans la base de donnes de facturation dune entreprise, on peut effectuer
une requte afin dobtenir la liste des clients ayant pass une commande dans lanne en
cours.
On peut galement crer une requte pour agir sur les valeurs ou sur les tables de la
base (requte daction).

Les formulaires

Sil affiche des donnes de la base, la fonction principale dun formulaire consiste
faciliter la saisie des donnes.

Les tats

Un tat sert de document rcapitulatif de donnes. Il peut contenir galement des
rsultats, tels que totaux ou moyennes.
Ce document est gnralement ralis pour tre imprim.

Lutilisateur dune base, qui nen est pas le concepteur, ne connat de la base que les
formulaires et les tats. Il ne voit ni les tables, ni les requtes.

Macros et modules

On effectue une macro pour automatiser simplement une ou plusieurs actions basiques.
Exemple : ralisation dune macro permettant, par un clic sur un bouton, dafficher un
formulaire.
Un module est un programme crit en VBA (Visual Basic for Applications). Son tude
ressort du domaine de la programmation.


5. CREER, FERMER, OUVRIR UNE BASE

Crer une base de donnes

Pour crer une base de donnes vide ou partir dun modle autre, commencez :
- Par dmarrer Access 2010 sans passer par louverture dun fichier
- Ou bien, une base de donnes tant affiche, activez longlet Fichier >
Nouveau.
Cliquez sur Base de donnes vide (choix ordinaire) ou choisissez de crer une base
partir dune catgorie de modles proposs. La slection dun modle entrane son affichage
sur le volet droit de la fentre.

- Nom du fichier

Saisissez le nom de fichier de la future base. Choisissez un nom significatif, afin de le
retrouver ensuite facilement.




COURS BARDON - ACCESS 2010 / CHAPITRE 1
6
- Choix du dossier

Par dfaut, le fichier sera insr dans le dossier Documents, dont ladresse est indique
sous la zone de saisie de Nom de fichier . Vous pouvez choisir un autre dossier
denregistrement par dfaut de toutes vos bases de donnes cres sous Access 2010 : voir 8
de ce chapitre Paramtrage du logiciel .
Pour choisir un autre dossier dans lequel sera insre la nouvelle base de donnes,
commencez par afficher la fentre Fichier Nouvelle base de donnes : cliquez sur le
bouton dont licne est un dossier ouvert et dont linfo-bulle est Cherchez un emplacement
pour votre base de donnes ( droite de la saisie du nom du fichier).
A partir de cette fentre : soit vous choisissez un dossier pralablement cr, soit vous
crez un nouveau dossier. Pour crer un nouveau dossier : cliquez sur le bouton reprsentant
un dossier, dtiquette Nouveau dossier , puis nommez ce nouveau dossier.

Aprs avoir nomm le fichier de la future base de donnes, et indiqu son dossier
dinsertion, il reste crer la base. Pour cela, cliquez sur le bouton Crer. La fentre dAccess
saffiche. Au chapitre suivant, nous verrons comment crer des tables.

- Autre mthode de cration dune base de donnes vide

Il existe une autre mthode pour crer une base de donnes vide, dont le fichier sera
plac sur le Bureau de Windows : faites un clic droit sur le Bureau > Nouveau > Microsoft
Access Base de donnes.
Pour renommer le fichier cr : faites un clic droit sur son nom ou sur son icne >
Renommer, puis tapez le nouveau nom. Double-cliquez dessus permet dafficher la nouvelle
base de donnes.

Fermer une base de donnes

Pour fermer la base de donns seulement (sans quitter Access) : cliquez sur le longlet
Fichier > Fermer la base de donnes .
Pour fermer la base (seule ouverte) et quitter Access, cliquez sur la croix , en haut
droite de lcran.
Pour fermer une ou plusieurs bases et quitter Access : menu Fichier > Quitter.

Ouvrir une base de donnes

Activez longlet Fichier :
- Si la base a t rcemment ouverte, son nom apparat dans le menu, sinon
cliquez sur Rcent , puis sur le nom de la base pour ouvrir celle-ci.
- Si le nom de la base recherche napparat toujours pas, cliquez sur Ouvrir
pour afficher la fentre Ouvrir , qui vous permettra de retrouver, puis
douvrir le fichier de la base. Vous pouvez cliquer-glisser sur le bord droit de
la fentre pour lagrandir.

Dans la fentre Ouvrir :
- Double-cliquez sur le dossier dans lequel se trouve le fichier. Son adresse
saffichera dans la zone de saisie suprieure.
- Le type de fichier recherch est Microsoft Access (zone de saisie situe
droite du nom du fichier).
COURS BARDON - ACCESS 2010 / CHAPITRE 1
7
- Cliquez sur le nom du fichier recherch. Il saffichera dans la zone de saisie
infrieure.
- Cliquez sur Ouvrir . Ou bien, dans le cadre principal, double-cliquez sur le
nom du fichier pour ouvrir directement ce dernier.

- Modes douverture dune base

Dans la fentre Ouvrir , la commande Ouvrir propose plusieurs options :

Ouvrir est loption la plus permissive : la base est ouverte en mode partag. Cest
loption par dfaut. La base peut tre consulte et modifie par quiconque.
Ouvrir en lecture seule : les utilisateurs ne peuvent ouvrir la base quen mode
Lecture (ils ne peuvent donc pas la modifier).
Ouvrir en exclusif : pendant que vous utilisez la base, personne dautre ne peut y
accder.
Ouvrir en mode lecture seule exclusif : cette option combine les deux options
prcdentes. Dune part, vous ne pouvez ouvrir la base quen mode Lecture ;
dautre part, pendant que vous lutilisez, personne ne peut y accder.


6. LE VOLET DE NAVIGATION DACCESS 2010

Situ gauche de la fentre dAccess 2010, le Volet de navigation permet dafficher les
principaux objets de la base de donnes : tables, requtes, formulaires, tats, macros et
modules. Si vous navez pas cr dobjet dans la base, le Volet est vide.
Double-cliquez sur un objet pour louvrir.
Un clic droit sur un objet permet de faire apparaitre une liste de commandes relatives
cet objet. Exemples de commandes proposes pour une table : Ouvrir (il existe plusieurs
modes douverture), Importer, Renommer, Copier, Supprimer.

Modifier la largeur du Volet de navigation

Pour agrandir ou rduire la largeur du Volet de navigation, on dispose de plusieurs
mthodes :
Cliquez sur le bouton flch en haut du Volet : pour le rduire, pour llargir.
Ou bien : appuyez sur la touche F11 du clavier.
Ou bien : cliquez-glissez sur le bord droit du Volet. Le pointeur prend la forme
dune double flche .

Affichage ou masquage des objets dans le Volet de Navigation

- Options daffichage des objets

Concernant laffichage des objets dans le Volet, on peut modifier :

Le classement des objets : ouvrez le menu droulant de la barre de titre du
Volet, puis cliquez sur loption de classement souhaite. Exemples doptions
proposes : affichage par types ou par dates de cration.

COURS BARDON - ACCESS 2010 / CHAPITRE 1
8
La prsentation des objets : clic droit sous la liste des objets du Volet ou sur un
groupe dobjets > Afficher par. Cliquez sur loption de prsentation souhaite :
Dtails, Icne ou Liste.

Lordre des objets : dans le Volet de navigation, faites un clic droit sous la liste des
objets ou sur un groupe dobjets > Ordre de tri. Cliquez sur le critre de tri
souhait.

- Affichage ou masquage des objets

Pour afficher ou masquer les objets dun groupe du Volet, cliquez sur la double flche
situe dans la ligne den-tte du groupe : pour afficher les objets du groupe, pour les
masquer.
- Objets masqus

Un objet masqu peut, au choix :
- Soit ne pas apparatre dans le Volet de navigation,
- Soit figurer dans le Volet sous la forme dune icne transparente.

Pour changer loption daffichage des objets masqus :

- Affichez la fentre Options de navigation : faites un clic droit sur la barre
de titre du Volet de navigation > Options de navigation ;
- Si la case Afficher les objets masqus nest pas coche, les objets masqus
napparaissent pas dans le Volet.
Si elle est coche, les objets masqus y figurent sous la forme dicnes
transparentes.

Description dun objet dans le Volet de navigation

On peut ajouter une description un objet du Volet.
Cette description saffichera alors dans la prsentation en mode Dtails de lobjet (clic
droit sous la liste des objets ou sur le groupe dobjets > Affichage par > Dtails).

Pour ajouter une description un objet, procdez ainsi :
- Clic droit sur lobjet ;
- Affichez la fentre Proprits de lobjet en cliquant sur Proprits ;
- Dans la zone tiquete Description , saisissez le texte souhait, puis validez
(OK ou appuyez sur la touche Entre).

Copie dun objet

On dit copie ou duplication .
Il est intressant de copier un objet si on veut en crer un autre qui lui ressemble, ou
encore par scurit, avant de le modifier.
Pour copier un objet :
- Dans le Volet de navigation, faites un clic droit sur lobjet > Copier ;
- Clic droit dans le Volet > Coller ;
- La fentre Coller (type dobjet) sous apparat. Renseignez-la si ncessaire et
validez.
COURS BARDON - ACCESS 2010 / CHAPITRE 1
9
Renommer un objet

Pour renommer un objet :
- Dans le Volet de navigation, faites un clic droit sur lobjet > Renommer ;
- Saisissez le nouveau nom, puis validez.

Supprimer un objet

Pour supprimer un objet :
- Dans le Volet de navigation, faites un clic droit sur lobjet > Supprimez ;
- Confirmez.

7. PARAMETRAGE DU LOGICIEL

Certaines caractristiques du logiciel sont paramtrables. Pour modifier ces paramtres,
et personnaliser ainsi le logiciel, affichez la fentre Options Access : activez longlet
Fichier > Options .

Exemples :


Les fichiers de bases de donnes cres sous Access, sont par dfaut enregistrs dans
le dossier Documents.

Pour que toute nouvelle base soit enregistre par dfaut dans un autre dossier :
- Affichez la fentre Options Access (onglet Fichier > Options), puis cliquez sur
longlet Gnral .
- A la rubrique Cration de base de donnes par dfaut , saisissez ladresse du
nouveau dossier de base de donnes par dfaut. Vous pouvez utiliser le bouton
Parcourir pour rechercher, puis slectionner un dossier pralablement cr
pour ranger les fichiers de base. Validez (OK ou touche Entre).


Par dfaut, on double-clique sur un objet du Volet de navigation pour ouvrir cet
objet.
Pour quun simple clic permette douvrir un objet dans le Volet :

- Dans la fentre Options Access , choisissez gauche la rubrique Base de
donnes active .
- Dans la zone titre Navigation , cliquez sur le bouton Options de
navigation .
- Cochez la case correspondant Ouvrir les objets avec un simple clic .
- Validez la fentre Options de navigation , galement la fentre Options
Access .
COURS BARDON - ACCESS 2010 / CHAPITRE 2
10
CHAPITRE 2 TABLES : ANALYSE PREALABLE
ET CREATION



1. ANALYSE PREALABLE

Ncessit dune analyse pralable

Comme on la dit au chapitre prcdent, les tables constituent le pivot central dune base
de donnes. Les formulaires, les requtes et les tats sont raliss partir des tables. La
qualit des tables conditionne la qualit de la base.
Un consciencieux travail danalyse du domaine informatiser simpose, pralablement
la cration des tables avec Access.

Principe gnral de lanalyse

Une base de donnes porte sur un domaine nettement dlimit.
Il convient danalyser en dtail le domaine traiter, et de reprer toutes les informations
relever.
- Chaque ensemble homogne dinformations, se rapportant un sujet prcis,
correspondra une table de la base de donnes.
- Chaque type dinformation correspondra au champ dune table.
Une table est compose de champs.

- Exemple
Constitution dune base de donnes concernant lusine WOODTOYS de fabrication de
jouets en bois.

Voici un extrait du relev des informations, disposes sur trois colonnes :

Nom du fournisseur bois Rfrence du jouet Nom du client
Adresse du fournisseur bois Nom du jouet Prnom du client
Code postal du fournisseur bois Poids du jouet Adresse du client
Ville du fournisseur bois Prix du jouet

Ces informations concernent trois sujets : Fournisseur du bois, Jouet et Client.
La base de donnes comprendra donc au moins les trois tables : FOURNISSEURBOIS,
JOUET et CLIENT.
Par exemple, la table JOUET peut tre constitue des champs nomms RefJouet,
NomJouet, PoidsJouet et PrixJouet.

En pratique

Il est pratique de procder ainsi :
- Dlimitez le domaine informatiser et laborez la liste de toutes les informations
prendre en considration ;
COURS BARDON - ACCESS 2010 / CHAPITRE 2
11
- Faites la liste des sujets du domaine, puis numrotez-les. Chaque sujet doit
correspondre un ensemble homogne dinformations ;
- A ct de chaque information, prcisez le n de sujet quelle concerne.


2. EXEMPLE : ANALYSE, TABLES ET ENREGISTREMENTS

Analyse pralable

On souhaite constituer la base de donnes dune bibliothque (cela peut tre nos propres
livres). On suppose quune personne ne peut emprunter quune seule fois un mme livre.

On relvera les informations suivantes, affiches la colonne gauche du tableau :

Informations N de sujet
Titre du livre 1
Nom de lauteur 2
Prnom de lauteur 2
Date demprunt 3
Date retour 3
Nom de lemprunteur 4
Nom de lditeur 1
Adresse de lemprunteur 4

On classe les informations releves en quatre sujets, qui sont numrots : Livre 1,
Auteur 2, Emprunt 3 et Personne 4.
On appelle ainsi ce dernier sujet car, une fois le livre rendu, une personne nest plus
qualifiable demprunteur.
On obtient les valeurs affiches la colonne droite du tableau.

Constitution des tables et champs identifiants

La base de donnes Bibliothque comprendra les quatre tables :
Livre, Auteur, Emprunt et Personne.
Chaque information releve (Titre du livre, Nom de lauteur, etc.) correspondra au
champ dune table.

On obtient les tables suivantes (on a ajout des champs identifiants , voir paragraphe
ci-aprs) :

LIVRE AUTEUR EMPRUNT PERSONNE
nolivre noauteur nolivre nopersonne
titre nomA nopersonne nomP
noauteur prenomA dateemprunt adresseP
editeur dateretour





COURS BARDON - ACCESS 2010 / CHAPITRE 2
12
- Champs identifiants

On a ajout les champs nolivre, noauteur et nopersonne. Ils signifient numro de livre,
numro dauteur et numro de personne. Ces champs permettent didentifier sans risque
dhomonymie un livre, un auteur ou une personne. Ils sont qualifis didentifiants.

Une table doit toujours contenir un champ ou un groupe de champs identifiant :

- Lorsquune table comprend un champ identifiant : une valeur de ce champ
identifie lenregistrement correspondant, permettant de connatre ainsi les valeurs
des autres champs de lenregistrement.
Exemple
Dans la table LIVRE, un numro de livre identifie le livre correspondant. On peut
dduire le titre, le numro dauteur et lditeur de ce livre.

- Lorsquune table comprend un groupe de champs identifiant : un ensemble de
valeurs des champs de ce groupe identifie lenregistrement correspondant,
permettant de connatre ainsi les valeurs des autres champs de lenregistrement.
Exemple
La table EMPRUNT a pour identifiant le groupe de champs compos de nolivre et
de nopersonne.
Un numro de livre et un numro de personne sont ncessaires pour identifier
lemprunt correspondant. On peut dduire la date demprunt et la date de retour
de cet emprunt (On a suppos quune personne ne peut emprunter quune seule
fois un mme livre).

On verra limportance des champs identifiants dans la dfinition des cls primaires, et
leur rle essentiel pour relier les tables entre elles.

Enregistrements

Dans une table, un enregistrement est constitu de lensemble de ses valeurs de champs.
Dans une table en Mode Feuille de donnes, un enregistrement correspond donc une
ligne de valeurs des champs.

Exemple
Voici les deux enregistrements de la table LIVRE correspondant aux numros de
livres 15 et 182 :

nolivre titre noauteur editeur
15 Un arc-en-ciel dans la nuit 27 Robert Laffont
182 120 exercices malins 3 Guy Trdaniel

Remarque :
Lors de la saisie des valeurs des champs, vous pouvez utiliser la touche Tab ou la
touche Entre pour passer dune colonne la suivante. Vous pouvez galement utiliser les
touches flches du clavier.



COURS BARDON - ACCESS 2010 / CHAPITRE 2
13
3. TABLES : METHODES DIVERSES DE CREATION

Crer dabord la base de donnes

Les tables sont des objets inclus dans une base de donnes.
Avant de crer une table, il convient donc de crer dabord la base de donnes. La
cration dune base de donnes a t tudie au chapitre 1 5 Crer, fermer et ouvrir une
base .
Vous pouvez commencer par crer une base de donnes vide, puis lenregistrer.
Une table nomme Table1 est propose par dfaut. Elle est ouverte en Mode Feuille de
donnes, mode mentionn dans le paragraphe ci-aprs.

Mthodes de cration de table

Il existe plusieurs mthodes pour crer une structure de table.

On peut crer une table :
En Mode Cration (cf. 5) : cest le mode le plus utilis car il est le plus puissant.
Cest le mode habituel pour crer une table, do son nom.

En Mode Feuille de donnes (cf. 6) : on entre directement les enregistrements. Par
dfaut, les champs sont nomms : Champ1, Champ2
Les lments quAccess 2007 gnre par dfaut, tels les noms des champs, peuvent
ensuite tre modifis convenance.

On passe facilement de lun lautre de ces deux modes : cf. ci-aprs au 4 Passage
dun mode daffichage lautre .

En important la structure dune table provenant dune autre base de donnes (cf. 7).
Si ncessaire, on importe galement les donnes de la table issue de lautre base.


4. PASSAGE DUN MODE DAFFICHAGE A LAUTRE

Vous pouvez choisir parmi plusieurs mthodes pour passer du Mode Feuille de donnes
au Mode Cration, ou inversement :

- Avec les icnes de la barre dtat
Sur la barre dtat, tout droite, cliquez sur :
- la 1
re
icne, qui reprsente une grille : passage au Mode Feuille de
Donnes
- ou bien sur la 4
me
icne, qui reprsente une querre et une rgle : passage au
Mode Cration .

- Avec le ruban
Ouvrez longlet Accueil > cliquez sur la partie suprieure du bouton Affichage. On
retrouve les icnes prcdentes : la grille pour le Mode Feuille de donnes ou lquerre pour
le Mode Cration.

COURS BARDON - ACCESS 2010 / CHAPITRE 2
14
- Clic droit sur longlet de la table
Faites un clic droit sur longlet de la table dont on souhaite changer le mode daffichage
> Choisissez le mode souhait : Mode Cration ou Mode Feuille de donnes.


5. CREATION DUNE TABLE EN MODE CREATION

Si vous avez cr une base de donnes vide, commencez par fermer la table propose
Table1. Par dfaut, celle-ci est en effet ouverte en Mode Feuille de donnes.
Pour la fermer, cliquez sur la croix situe tout droite, dans la ligne o est plac longlet
Table1 . Quand on pointe sur cette croix, on peut lire son info-bulle : Fermer Table1 .

Principe de cration dune table en Mode Cration

Pour crer une structure de table en Mode Cration :

1) Dans le ruban, cliquez sur longlet Crer > dans le groupe Tables, activez le
bouton Cration de table. Licne de ce bouton contient une querre et une
rgle ; ils symbolisent des outils servant crer un objet structur.
La fentre de longlet Cration saffiche.
2) Dans cette nouvelle fentre, dfinissez les proprits de chaque champ.

Deux zones de dfinition des proprits dun champ

La nouvelle fentre comporte gauche le Volet de navigation (si ncessaire, pour
llargir, cliquez sur la double flche ), ainsi que deux zones pour dfinir les proprits dun
champ :

- Le cadre suprieur : nom, type et description du champ

Le cadre suprieur de la fentre contient trois colonnes, servant dfinir :
- Le nom du champ
- Son type de donnes
- Eventuellement, une description du champ.
Si le nom et le type de donnes sont des proprits fondamentales du champ, la
description est facultative.

Exemple

Nom du champ Type de donnes Description
refjouet NumroAuto Rfrence du jouet
nomjouet Texte
poidsjouet Numrique
prixjouet Montaire Prix HT du jouet
- Le cadre infrieur : les autres proprits

Le cadre infrieur de la fentre permet de dfinir de nombreuses autres proprits pour
chaque champ dune table. Exemples : Taille du champ, Lgende, Valeur par dfaut.
Elles seront tudies au chapitre 5 TABLE : GESTION APPROFONDIE DES CHAMPS.
COURS BARDON - ACCESS 2010 / CHAPITRE 2
15
Quelques prcisions concernant la saisie du Nom du champ, le choix du Type de
donnes et lutilisation de la zone Description :

Nom du champ

Dans une mme table, on ne peut pas donner le mme nom deux champs.
Il est prfrable dviter les espaces et les accents.
Utilis dans un formulaire ou dans un tat, objets principalement utiliss une fois la base
cre, le champ peut porter un autre libell.
Exemple : dans la table JOUET, le champ correspondant au poids du jouet peut tre
nomm par exemple poidsjouet, poidsJ ou encore pdsJ. Dans un formulaire, ce mme champ
peut tre libell Poids du jouet.

Type de donnes

Lexpression type de champ qui est souvent utilise, dsigne en fait le type des donnes
se rapportant au champ.

Pour saisir un Type de donnes, on utilise la liste droulante proposant les diffrents
types possibles : activez une cellule de la colonne titre Type de donnes, puis cliquez sur .

Dix types de donnes sont proposs :

- Texte : le texte dune donne peut compter jusqu 255 caractres. Il sagit du type
de donnes par dfaut.
Exemples dinformations concernes par ce type : nom, adresse, tlphone.

- Choix dun autre type de donnes par dfaut
On peut choisir un autre type de donnes par dfaut que le type Texte.
Affichez dabord la fentre Options Access : activez longlet Fichier > Options .
Ouvrez la rubrique Concepteurs dobjets . Dans la zone Mode Cration de table ,
choisissez le Type de champ par dfaut dans la zone de saisie avec menu droulant .

- Mmo : le texte dune donne peut compter jusqu 65 535 caractres. Les retours
la ligne sont possibles ; le texte peut donc comporter des paragraphes.
Exemples : commentaires, remarques.

- Numrique : des calculs peuvent tre effectus sur les donnes de ce type.
Remarque : a contrario, on choisira le type Texte pour les champs stockant par
exemple des codes postaux ou des numros de tlphone ; ds lors quaucun
calcul ne sera ralis sur ces donnes, il est en effet inutile de choisir le type
Numrique, qui requiert plus de place en mmoire.

- Date/Heure : les donnes stockes seront des dates ou des heures. Une donne
peut galement tre compose dune date suivie dune heure.

- Montaire : les donnes stockes seront des valeurs montaires.

- NumroAuto : NumroAuto est labrviation de Numro automatique.
COURS BARDON - ACCESS 2010 / CHAPITRE 2
16
Ce type est spcial : en effet, dans un champ dot de ce type, cest Access 2010 qui
gnre automatiquement la donne.
Par dfaut, la donne est un nombre incrment de 1 chaque nouvel
enregistrement. On ne peut pas modifier ce numro. Mme si un enregistrement
est supprim, lincrmentation continue comme sil ny avait pas eu de
suppression.
Ce type de donnes est souvent choisi pour les champs identifiants des tables.
Exemple : dans la table JOUET, on pourra doter le champ refjouet du type
NumroAuto.

- Oui/Non : les donnes stockes seront des valeurs boolennes.
Exemples : oui/non, vrai/faux

- Objet OLE : les donnes stockes seront des objets OLE.
Exemples : documents Word, feuilles de calcul Excel, images.

- Lien hypertexte : les donnes stockes seront des liens hypertexte.
Exemples : adresse email, url de site internet

- Calcul : il sagit dun nouveau type de champ. Un champ de ce type affiche une
valeur calcule partir de valeurs dautres champs de la mme table.
Exemple : le champ PrixTTC de type Calcul affiche la valeur PrixHT + TVA, qui
est la somme des valeurs des champs PrixHT et TVA.
Quand on choisit ce type de champ, le Gnrateur dexpression saffiche pour
aider si ncessaire la saisie de lexpression (cf. chapitre 5 3 G Gnrateur
dexpression )

- Pice jointe : les donnes stockes seront des fichiers.

Description

Contrairement aux deux proprits prcdentes, la description dun champ est
facultative. Le texte saisi peut compter jusqu 255 caractres.
Quand on donne une description un champ, elle apparat dans la barre dtat (en bas
dcran) quand la table est ouverte en Mode Feuille de donnes et que le champ est
slectionn. Cette description apparatra galement dans un formulaire utilisant ce champ.


6. CREATION DUNE TABLE EN MODE FEUILLE DE DONNEES

Comme on la dit prcdemment, une table tant lobjet dune base, une base doit
pralablement tre cre.
Quand on cre une base de donnes vide, Access propose une table, ouverte en Mode
Feuille de donnes.
Sinon, pour crer une table en Mode Feuille de donnes : dans le ruban, activez longlet
Crer > dans le groupe Tables, cliquez sur le 1
er
bouton Table, dont licne est une grille.
On obtient une grille invitant entrer directement les enregistrements.


COURS BARDON - ACCESS 2010 / CHAPITRE 2
17
Exemple

N Champ1 Champ2 Champ3 Champ4 Ajouter un nouveau champ
1 textile velours 350 rouge |
(Nouv.)

Attributions automatiques dAccess : noms, types des champs, cl primaire

Une table cre sous le Mode Feuille de Donnes, est dote demble dune structure
dfinie par Access 2010. Cest ce qui la diffrencie dune table cre sous le Mode Cration.

Doffice, Access propose de taper une premire valeur dans la 2
me
colonne, donc dans
le 2
me
champ de la table. Access appellera ce champ Champ1, ds que la saisie sera valide.
En effet, Access a dj nomm N le 1
er
champ, et il lui a attribu le type NumroAuto
(cf. ce chapitre, 5 Type de donnes ).
Access dfinit galement ce premier champ comme champ identifiant, et il le dote dune
cl primaire : on le voit par laffichage de licne dune cl en case den-tte, si on passe en
Mode Cration (nous dsignerons licne de la cl ).
Au fur et mesure de la saisie des valeurs du premier enregistrement (sur la premire
ligne), Access nomme les champs suivants : Champ2, Champ3, etc.

En fonction de la donne saisie, Access dote galement le champ du type de donnes qui
lui semble appropri.
Exemples : le champ dans la colonne duquel on saisit lexpression jeu de ballon ,
sera dot du type Texte. Si on saisit le nombre 16, Access donnera au champ le type de
donnes Numrique.

Noms des champs

Gnralement, on renomme convenance les champs : clic droit sur le nom de la
colonne > Renommer le champ.
Ou bien, sous longlet Feuille de donnes, dans le groupe Champs et colonnes ,
activez le bouton Renommer.
Exemples : dans la table JOUET, le champ N sera renomm refjouet ; le champ Champ1
sera renomm nomjouet.

Type de donnes des champs

Le type de donnes dun champ peut tre modifi : activez longlet Feuille de donnes,
puis dans le groupe Type de donnes et mise en forme , ouvrez le menu droulant de la
zone de saisie du bouton Type de donnes. Choisissez le type de champ souhait.

Proprits des champs

On a vu prcdemment ( ci-avant Noms des champs ) quon pouvait renommer les
champs en tant en affichage Mode Feuille de Donnes.
En rgle gnrale, pour analyser et modifier les proprits des champs, on passe en
Mode Cration (voir procdures de passage dun mode daffichage lautre au 4 de ce
chapitre).

COURS BARDON - ACCESS 2010 / CHAPITRE 2
18
7. CREATION DUNE TABLE PAR IMPORTATION

Pour crer une table, on peut galement copier la structure dune table provenant dune
autre base. Si ncessaire, on importe galement les donnes de la table importe.

Aprs ouverture de la base dans laquelle on souhaite crer la table, procdez ainsi :
- Dans le ruban, activez longlet Donnes externes > dans le groupe Importer et
lier , cliquez sur lapplication do provient la table copier.
- Importez la base. La fentre Importer des objets saffiche.
Slectionnez la ou les tables importer.
Access 2010 importe par dfaut la structure et les donnes de la table. Pour
nimporter que la structure : dans le cadre Importer les tables , cochez la case
Dfinition uniquement . Validez.


8. ENREGISTRER ET FERMER UNE TABLE

Pour fermer une table : faites un clic droit sur son onglet > Fermer.
Pour fermer une table active, on peut cliquer sur la croix situe droite de sa ligne de
titre.
Si la table est enregistre pour la premire fois, la fentre Enregistrer sous est
affiche. On peut y renommer la table.
Sil vous est propos de crer une cl primaire, refusez pour linstant. Il est ncessaire
dattribuer certains champs une cl primaire pour pouvoir tablir des relations entre les
tables. Relations et cls primaires seront tudies chapitre 6 RELATIONS ENTRE LES TABLES.
Pour enregistrer la table les fois suivantes, cliquez sur le bouton Enregistrer de la
barre doutils Accs rapide (tout en haut de la fentre), ou bien cliquez sur longlet Fichier >
Enregistrer.
COURS BARDON - ACCESS 2010 / CHAPITRE 3
19
CHAPITRE 3 TABLE : GESTION DES DONNEES



1. DESCRIPTION ET SAISIE EN MODE FEUILLE DE DONNEES

- Afficher et saisir des donnes

On peut afficher et saisir des donnes :
- Dans une table, affiche en Mode Feuille de donnes : voir ce chapitre.
- Dans un formulaire : voir chapitre 13 LES FORMULAIRES

- Ouvrir une table en Mode Feuille de donnes

Pour ouvrir une table en Mode Feuille de donnes :

- Soit vous crez et ouvrez une nouvelle table en mode Feuille de donnes : dans le
ruban, activez longlet Crer > dans le groupe Tables, cliquez sur le 1
er
bouton
Table, dont licne est une grille . Une table, nomme Table1, est ouverte en
Mode Feuille de donnes.

- Soit, la table tant affiche en Mode Cration, vous passez en Mode Feuille de
donnes : cf. chapitre 2 4 Passage dun mode daffichage lautre .


Description de la feuille de donnes dune table

La feuille de donnes dune table comporte :

o Le nom de la table : il est crit sur longlet actif, dont la couleur diffre.

o Les en-ttes des colonnes : ils constituent la liste des champs de la table.
Dans la feuille de donnes, un champ est dsign :
soit par son nom,
soit par sa lgende si cette proprit a t dfinie (dans ce cas, le champ
a un nom et une lgende).
Cette proprit Lgende est dfinie en Mode Cration, sous longlet
Gnral du cadre Proprits du champ .

o Les lignes, contenant les valeurs des champs. Chaque ligne correspond un
enregistrement.
Dit autrement : chaque cellule contient la valeur, quand elle existe, du champ de
len-tte pour lenregistrement de la ligne.





COURS BARDON - ACCESS 2010 / CHAPITRE 3
20
Exemple

Extrait dune table nomme ANIMAL, affiche en Mode Feuille de donnes :

NumAnimal Nom de lanimal Date de naissance NumProprietaire
10 Frimousse 10/09/2010 2
11 Bandit 08/01/2007 3
12 Choupette 13/04/2005 1

Il y a quatre champs : NumAnimal, Nom de lanimal, Date de naissance et
NumPropritaire. Trois enregistrements sont affichs.
On peut dire par exemple que la donne Choupette est la valeur du
champ Nom de lanimal de lenregistrement affich en dernire ligne, qui est
identifi par NumAnimal = 12.

o La ligne de boutons en bas de la feuille de donnes

Elle comporte :

Des boutons permettant de se dplacer dun enregistrement un autre.
Le rang de lenregistrement actif sur le nombre denregistrements. Exemple :
12/30.
Le bouton dinfo-bulle Nouvel enregistrement (vide) :
Une indication prcisant si un filtre a t appliqu aux donnes.
Une zone de saisie permettant la recherche dune donne dans la feuille :
crivez-y la donne recherche. Si elle est prsente sur la feuille, elle est mise
en vidence. Pour une nouvelle recherche de la mme donne, appuyez sur la
touche Entre.
Quand le nombre de champs devient important (occupant toute la feuille), un
curseur ainsi que deux flches et apparaissent, permettant de
naviguer vers la gauche ou vers la droite de la feuille.

Saisie dune valeur de champ ou dun enregistrement la table

Pour saisir une nouvelle valeur de champ ou un nouvel enregistrement, il est rapide
dutiliser la touche Tab ou la touche Entre.

- Saisie de donnes de type NumroAuto, Date/Heure et Lien hypertexte

Les valeurs dun champ de type NumroAuto sont attribues par Access 2010. Par
dfaut, elles sont incrmentes de 1.

Pour saisir la valeur dun champ de type Date/Heure, on dispose dun calendrier :
cliquez sur son icne, qui apparat droite de la zone de saisie.
Par dfaut, le calendrier affiche le mois de lanne en cours.
Vous pouvez vous servir du calendrier mme, des flches et, ainsi que du bouton
tiquet Aujourdhui . Si vous cliquez sur une date du calendrier, elle saffichera dans la
cellule. Les flches et permettent de passer au mois prcdent ou au mois suivant.
COURS BARDON - ACCESS 2010 / CHAPITRE 3
21
Pour afficher le calendrier du mois dune date (vous pouvez ainsi connatre le jour dune
date quelconque, comme celui de votre anne de naissance) : saisissez la date, cliquez hors
de la cellule pour valider la saisie, puis cliquez nouveau dans la cellule et activez le
calendrier.
La saisie dune adresse email permet, louverture du lien, dafficher la fentre
Nouveau message , dans laquelle est indique comme adresse du destinataire celle qui a
t mentionne dans la cellule.
Pour tre sr de saisir lurl exacte dun site internet :
- Ouvrez le site, et copiez son adresse (exemple : http://www.coursbardon-
microsoftoffice.fr),
- Puis collez-la dans la cellule.

- Affichage dune ligne de dises ##### la place de la valeur saisie

Pas de panique ! Les valeurs sont toujours l. Il suffit dailleurs de cliquer dans une
cellule contenant des dises pour afficher nouveau la valeur saisie.
Une ligne de dises ##### apparat dans une cellule contenant une valeur de type
Numrique, Date/Heure ou Montaire lorsque la colonne nest pas assez large.
Cliquez-glissez sur le bord droit de la case den-tte de la colonne pour largir celle-ci.
Le pointeur prend la forme dune double-flche . Quand la colonne est suffisamment large,
les signes dises laissent place la valeur saisie.

- Ajout denregistrements en provenance dune autre table

On peut ajouter une table des enregistrements en provenance dune autre table, en
utilisant une requte dajout denregistrements (cf. chapitre 12 1 Ajout denregistrements).

Modification et mise en forme de donnes dans une table

Cliquez dans la cellule contenant la valeur modifier, puis effectuez la modification.

- Trois astuces

Pour annuler une ou plusieurs modifications effectues sur les valeurs de
lenregistrement actif, avant sa validation : appuyez sur la touche Echap (Esc ou Escape).
Pour saisir dans une case la mme valeur que celle de lenregistrement prcdent
(mme champ, donc case juste au-dessus) : appuyez sur les touches Ctrl et
apostrophe (Ctrl + ).
Pour modifier la valeur dun champ de type Lien hypertexte, affichez la fentre
Insrer un lien hypertexte : clic droit dans la cellule > Lien hypertexte > Modifier le lien
hypertexte.

- Modification de la mise en forme des caractres

Les modifications effectues affectent automatiquement toutes les donnes de la feuille
de donnes active, et seulement cette feuille. Exemple : si vous changez la taille de la police
dun seul caractre dune donne, toutes les donnes de la feuille acquerront cette taille.
Testez diffrentes mises en forme.
Exemples : vous pouvez mettre les donnes en gras, centrer les donnes dans les
cellules, changer la couleur des caractres.
COURS BARDON - ACCESS 2010 / CHAPITRE 3
22
Pour modifier la mise en forme des caractres, servez-vous des boutons du ruban
dAccess 2010 : longlet Accueil, utilisez les boutons du groupe Mise en forme du texte .
En cliquant sur le lanceur du groupe ( droite du nom du groupe), vous pouvez
afficher la fentre Mise en forme de la feuille de donnes . Elle offre davantage de
possibilits de mise en forme, par exemple leffet 3D. Renseignez-la convenance, puis
validez (OK ou touche Entre) pour appliquer la nouvelle mise en forme aux donnes de la
table active.
Astuce : le nombre de polices proposes tant lev, il peut tre prfrable, au lieu de
cliquer sur un nom, de saisir son ou ses premiers caractres. Par exemple, il suffit de saisir la
lettre V pour obtenir la police Verdana.

Pour changer la mise en forme propose par dfaut par Access 2010 :
- Ouvrez le menu Fichier > Options.
- Cliquez gauche sur Feuille de donnes , puis modifiez les paramtres de mise
en forme souhaits.

Navigation dun enregistrement un autre

On peut atteindre un enregistrement :

- Avec la souris
- En utilisant les raccourcis clavier
- En utilisant les boutons de dplacement situs en bas de la feuille de donnes.

Pour atteindre Raccourcis clavier Boutons de dplacement
Le 1
er
enregistrement Ctrl + Dbut (HOME) (premier champ) I(mme champ)
Lenregistrement prcdent Flche haut ^
Lenregistrement suivant Flche bas +
Le dernier enregistrement Ctrl + fin (End ou ) (dernier champ) I (mme champ)

Slectionner des donnes

La slection est une opration pralable divers traitements, comme la modification ou
la suppression de donnes.

Slection dune chane de caractres : cliquez-glissez sur les caractres slectionner.

Slection dune valeur dans un champ : placez le pointeur sur un bord intrieur de la
cellule contenant la valeur slectionner. Quand il prend la forme dune croix blanche,
cliquez.

Slection dun rectangle de valeurs juxtaposes : slectionnez une valeur comme
indiqu prcdemment, puis glissez sur les autres valeurs slectionner (ne cliquez pas
nouveau).

Slection dune ligne (une ligne correspond un enregistrement) : cliquez sur la case
den-tte de la ligne (le pointeur prend la forme ).
Cette case est appele slecteur denregistrement.
On ne peut pas slectionner une ligne vide.
COURS BARDON - ACCESS 2010 / CHAPITRE 3
23
Slection dune colonne (une colonne correspond toutes les valeurs prises par le
champ dans la table) : la procdure est similaire la prcdente. Cliquez sur la case den-tte
de la colonne (le pointeur prend la forme +).
Cette case est appele slecteur de champ.
On ne peut pas slectionner une colonne vide.

Slection de lignes ou de colonnes juxtaposes : cliquez-glissez sur les slecteurs (cest-
-dire sur les cases den-tte). Ou bien slectionnez une ligne (ou une colonne), puis appuyez
sur la touche Maj (Shift) et slectionnez la dernire ligne (ou colonne).
On ne peut pas slectionner des lignes ou des colonnes non juxtaposes.

Slection de toutes les lignes, de toutes les colonnes : faites Ctrl + A, ou bien cliquez sur
la case den-tte de la 1
re
ligne, o sont inscrits les noms des champs.

Suppression denregistrements

Slectionnez les enregistrements supprimer. Puis appuyez sur la touche Suppr (ou Del
qui signifie Delete, supprimer). Access demande la confirmation de la suppression.

Pour supprimer des enregistrements en fonction de critres dfinis, on utilise une
requte de suppression denregistrements (cf. chapitre 12 1 Suppression denregistrements).

Si la table est en relation avec une autre table, la suppression dun enregistrement peut
ncessiter au pralable la suppression de cette relation. Les relations entre les tables seront
tudies au chapitre 6 RELATIONS ENTRE LES TABLES.

Hauteur de ligne et largeur de colonne

Il existe deux mthodes pour modifier la hauteur des lignes ou la largeur dune colonne :

- Par cliqu-gliss (le pointeur prend la forme dune double flche)

- Hauteur des lignes de la feuille : en effectuant un cliqu-gliss entre deux
slecteurs denregistrements (cases den-tte des lignes), on modifie toutes les
hauteurs des lignes.

- Largeur dune colonne : en effectuant un cliqu-gliss sur le bord droit du
slecteur du champ (case den-tte du champ), on modifie la largeur de la colonne
de ce champ. Les largeurs des autres colonnes restent inchanges.

- Avec la fentre Hauteur de ligne ou la fentre Hauteur de colonne

Slectionnez les lignes ou les colonnes dont on souhaite modifier les dimensions.
Pour afficher la fentre Hauteur de ligne (ou Hauteur de colonne ) : faites un clic
droit sur les slecteurs denregistrements (ou slecteurs de champs) > Hauteur de ligne (ou
Largeur de colonne).
Renseignez la fentre, puis validez.



COURS BARDON - ACCESS 2010 / CHAPITRE 3
24
Champs et colonnes

La fentre de longlet Feuille de donnes comprend le groupe Champs et
colonnes .

Les trois premires actions (Renommer un champ, Ajouter ou Supprimer un champ) qui
seront tudies ci-aprs modifient la table.
Les trois actions suivantes (Dplacer un champ, Figer ou Masquer une colonne)
modifient uniquement la prsentation des donnes sur la feuille.

Vous pouvez le vrifier en affichant la table en Mode Cration (cliquez sur la dernire
icne de la barre dtat, en bas droite ; pour revenir en Mode Feuille de donnes, cliquez
sur la 1
re
icne de la barre dtat ).

- Renommer un champ, lgende et description

Pour renommer un champ :
- Double-cliquez sur le slecteur du champ (case den-tte de la colonne).
- Ou bien, placez le curseur (barre clignotante) dans le champ. Puis, longlet
Champs des Outils de table , groupe Proprits , cliquez sur Nom et
lgende . La fentre Entrez les proprits du champ saffiche.
Saisissez le nouveau nom du champ.
Dans la fentre Entrez les proprits du champ , on peut dfinir les trois proprits
Nom, Lgende et Description du champ.

- Ajouter un nouveau champ

En Mode Feuille de donnes, lajout dun champ correspond lajout dune colonne.
Pour insrer une nouvelle colonne :
- Faire un clic droit dans la case den-tte, droite du champ qui sera cr > Insrer
un champ. Un champ est cr, par dfaut de type Texte.
- Ou bien, placez le curseur dans la colonne gauche de celle crer (contraire du
cas prcdent). Puis, longlet Champs , dans le groupe Ajouter et
supprimer , cliquez sur le bouton Plus de champs . Choisissez le type de
champ crer.

- Supprimer un champ

Slectionnez les champs supprimer, puis :
- Appuyez sur la touche Suppr (Del).
- Ou bien longlet Champs , dans le groupe Ajouter et supprimer , cliquez
sur le bouton Supprimer .
La confirmation de la suppression est demande.

- Dplacer un champ

Pour dplacer un champ, procdez en deux tapes :
- Cliquez sur le slecteur du champ (la case den-tte correspondant sa colonne).
Le champ est ainsi slectionn.
- Puis cliquez-glissez jusqu lemplacement souhait (une barre noire saffiche).
COURS BARDON - ACCESS 2010 / CHAPITRE 3
25
Le dplacement dun champ dans la feuille de donnes naffecte pas la structure de la
table. Le champ garde sa position au sein de la table.

- Figer une colonne

Pour figer une colonne : faites un clic droit sur sa case den-tte > Figer les champs.
Pour la librer : clic droit sur une quelconque case den-tte de champ > Librer tous les
champs.
Plusieurs colonnes peuvent tre figes.

Sans affecter la structure de la table, figer une colonne a deux consquences :
- La colonne fige reste visible, gauche de la fentre, ce qui est pratique quand la
table a de nombreux champs. Par exemple, dans une table PRODUIT, on peut
garder sur la gauche les champs ReferenceProduit et NomProduit.
- Une colonne fige ne peut pas tre dplace par cliqu-gliss. Afin de pouvoir
dplacer la colonne, il faut dabord la librer.

- Masquer une colonne

Pour masquer une ou plusieurs colonnes :
- Slectionnez-les ;
- Faites un clic droit sur la slection effectue > Masquer les champs.
Les colonnes masques restent dans la structure de la table, mais elles ne sont plus
affiches en Mode Feuille de donnes.

Pour afficher nouveau les colonnes :

- Clic droit sur une quelconque case den-tte de champ > Afficher les champs.
- Dans la fentre Afficher les colonnes , cochez les cases correspondant aux
colonnes que vous souhaitez afficher.


2. MISE EN PAGE ET IMPRESSION DES DONNEES DUNE TABLE

Avant dimprimer le document contenant les donnes de la table, il convient de vrifier
la mise en page et de la modifier si ncessaire.

Aperu avant impression et mise en page

Pour tre en mode daffichage Aperu avant impression , activez le bouton Aperu
avant impression , dont licne reprsente une loupe sur une feuille :

- Soit directement, en cliquant sur le bouton situ sur la barre doutils Accs
rapide (en haut du ruban).
Si le bouton nest pas dans cette barre, ajoutez-le : cliquez sur la flche

droite
de la barre > Cochez la case Aperu avant impression .

COURS BARDON - ACCESS 2010 / CHAPITRE 3
26
- Soit (vous ne souhaitez vraiment pas mettre le bouton prcdent dans la barre
doutils Accs rapide) : ouvrez le menu Fichier > Imprimer > Aperu avant
impression .

Le document est affich tel quil sera imprim.

- Affichage du document

Pour modifier laffichage (non la mise en page) du document visualis en mode
Aperu avant impression , utilisez les boutons de commandes du groupe Zoom.
On peut galement modifier le facteur de zoom en dplaant le curseur de zoom, situ
sur la barre dtat (en bas de lcran).

- Mise en page du document

Pour modifier la mise en page du document, utilisez les boutons du groupe Mise en
page de la fentre sous longlet Aperu avant impression .
Pour afficher la fentre Mise en page , cliquez sur le bouton Mise en page .

- Fermeture du mode Aperu avant impression

Pour fermer la fentre de laperu, cliquez sur le dernier bouton, tiquet Fermer
laperu avant impression .

Impression

Il est possible de lancer directement limpression du document : cliquez sur le bouton
Imprimer de la barre doutils Accs rapide.
Les paramtres dimpression dfinis par dfaut sappliquent alors.

Si vous prfrez afficher dabord la fentre Imprimer afin de vrifier et, si
ncessaire, modifier les paramtres dimpression (en indiquant notamment les pages
imprimer) :
- Etant en mode daffichage Aperu avant impression (cf. prcdent), activez
le bouton Imprimer (1
er
bouton).
- Ou bien : ouvrez le menu Fichier > Imprimer.
Renseignez la fentre Imprimer .


3. IMPORTER ET EXPORTER DES DONNEES

Importation de donnes

On peut crer une table par importation, et importer soit uniquement sa structure, soit
galement ses donnes : cf. chapitre 2 7 Cration dune table par importation .

Exportation de donnes

On peut aussi exporter des donnes dune base vers un autre fichier.
COURS BARDON - ACCESS 2010 / CHAPITRE 3
27
A longlet Donnes externes , dans le groupe Exporter , cliquez sur le format dans
lequel doivent tre exportes les des donnes. Dautres formats sont disponibles en cliquant
sur le bouton Plus .
La fentre Exportation (type de fichier) saffiche. Slectionnez le nom du fichier,
ventuellement son format, vers lequel seront exportes les donnes. Si ncessaire, cliquez sur
le bouton Parcourir pour ouvrir la fentre Enregistrer afin dy slectionner le fichier de
destination des donnes.
Choisissez si ncessaire les options dexportation.
En activant le bouton PDF ou XPS, on peut enregistrer les donnes sous forme dun
fichier de ce format.

Exemples

On souhaite exporter les donnes dune table dans une feuille de calcul (format
Excel).
Affichez la table en mode Feuille de donnes. A longlet Donnes externes , dans le
groupe Exporter, activez le bouton Excel. Access cre un fichier nomm
(NomDeLaTable).xlsx. Pour le changer demplacement, cliquez sur le bouton Parcourir et
slectionnez le dossier ou le classeur souhait. Cliquez sur Enregistrer. Validez.
Si le fichier est export vers un classeur, une feuille est ajoute ce classeur, contenant les donnes de la
table.

On souhaite exporter les donnes dune table dans un document Word.
Affichez la table en mode Feuille de donnes. A longlet Donnes externes , dans le
groupe Exporter, activez le bouton Word. Access cre un fichier nomm (NomDeLaTable).rtf.
Pour le changer demplacement, cliquez sur le bouton Parcourir et slectionnez le dossier
souhait. Cliquez sur Enregistrer. Validez.
Aprs ouverture du fichier cr, contenant les donnes de la table, vous pouvez directement faire un
copier/coller dans le document Word, ou lenregistrer dabord sous le format Word (ouvrez le menu Fichier >
Enregistrer sous > Document Word) avant deffectuer un copier/coller dans le document de destination.



COURS BARDON - ACCESS 2010 / CHAPITRE 4
28
CHAPITRE 4 TABLE : RECHERCHER ET
REMPLACER, TRI ET FILTRE



1. RECHERCHER ET REMPLACER UNE CHAINE DE CARACTERES

Une chane de caractres est une suite de caractres quelconques.
On peut rechercher, et si ncessaire remplacer, une chane de caractres qui est une
valeur de champ, ou bien une chane qui est une partie de valeur de champ. Exemple : on peut
rechercher jasmin jaune, jasmin, ou jas.

Rechercher une chane de caractres dans une feuille de donnes

Il existe plusieurs mthodes pour rechercher une chane de caractres dans une feuille de
donnes :
- Directement, la main , si ncessaire en utilisant le curseur vertical droite (en
cas de nombreux enregistrements) ou le curseur horizontal en bas de la fentre (en
cas de nombreux champs). Plutt fastidieux
- En utilisant la zone de saisie situe en bas de la feuille (par dfaut, elle affiche
Rechercher ) : tapez la chane recherche. Si celle-ci est prsente sur la feuille,
elle est mise en vidence. Pour une nouvelle recherche de la chane, appuyez sur la
touche Entre.
- Avec la fentre Rechercher et remplacer , longlet Rechercher. Nous allons
voir ci-aprs cette troisime mthode.

- Recherche dune chane de caractres avec la fentre Rechercher et
remplacer

Avant dafficher cette fentre :
- Vous pouvez slectionner la chane de caractres rechercher. Cette chane
apparatra alors dans la fentre, dans la zone tiquete Rechercher . Sinon,
saisissez-la.
- Si la recherche seffectue dans un champ prcis, cliquez dans sa colonne. Il sera
ainsi propos dans la fentre Rechercher et remplacer , la zone tiquete
Regarder dans .

Pour afficher la fentre Rechercher et remplacer : activez longlet Accueil > dans le
groupe Rechercher, cliquez sur le bouton Rechercher. Elle saffiche longlet Rechercher.

Quelques indications pour renseigner cette fentre Rechercher :

Rechercher : la chane peut contenir des caractres de substitution :
- Le point dinterrogation ? remplace un caractre quelconque (lettre,
chiffre, espace, etc.). Exemple : en recherchant s?cr, on peut localiser les
mots sacr et sucr.
- Le signe dise # remplace un chiffre. Exemple : en recherchant 19##, on
peut localiser les annes 1900.
COURS BARDON - ACCESS 2010 / CHAPITRE 4
29
- Lastrisque * remplace zro ou plusieurs caractres. Exemple : en
recherchant bon*, on peut localiser les valeurs bon, bonjour et bon voyage.
Pour rechercher les cases vides de la table ou dun champ, tapez Null dans
la zone Rechercher et choisissez loption Champ entier dans la zone
O .

Regarder dans : la recherche peut seffectuer dans toute la table, ou bien
dans le champ pralablement slectionn.

O :
- Nimporte o dans le champ : la chane recherche peut constituer une
valeur exacte ou une partie de valeur de champ.
- Champ entier : la chane recherche doit constituer une valeur exacte du
champ pour tre localise. Exemple : si on recherche la chane 05/12/1954, la
date 5/12/1954 ne sera pas repre.
- Dbut de champ : la chane recherche doit tre le dbut dune valeur de
champ, elle peut tre une valeur entire de champ.

Sens :
La recherche est effectue par rapport la position du curseur (barre
clignotante) :
Haut : uniquement avant le curseur / Bas : uniquement aprs le curseur.
Tout : dans tout le champ ou dans toute la table, en fonction de loption choisie
dans Regarder dans .

Respecter la casse : la recherche distingue lettres minuscules et lettres
majuscules. Exemple : si on recherche Quartz, le mot quartz ne sera pas repr.

Renseignez cette fentre, puis activez le bouton Suivant pour lancer la 1
re
recherche.
Ractivez-le si ncessaire pour des recherches successives.
Localise, la chane est mise en vidence.

Remplacer une chane de caractres dans une feuille de donnes

Pour remplacer une chane de caractres, on utilise la mme fentre Rechercher et
remplacer que prcdemment, longlet Remplacer cette fois.
Les indications du paragraphe prcdent sappliquent.
Comme prcdemment, avant dafficher la fentre :
- Vous pouvez slectionner la chane de caractres rechercher. Elle apparatra dans
la zone Rechercher de la fentre.
- Si la recherche seffectue dans un champ prcis, cliquez dans sa colonne, afin que
son nom soit prsent dans la zone Regarder dans de la fentre.

Pour afficher la fentre Rechercher et remplacer directement longlet Remplacer :
activez longlet Accueil > dans le groupe Rechercher, cliquez sur le bouton Remplacer.
Elle contient les mmes zones qu longlet Rechercher, galement dautres zones, en
particulier la zone de saisie Remplacer par .



COURS BARDON - ACCESS 2010 / CHAPITRE 4
30
Prcisions sur les boutons Suivant , Remplacer et Remplacer tout :
- Suivant : permet de lancer la recherche de la chane. Localise, elle est mise en
vidence.
- Remplacer : permet de remplacer la chane mise en vidence.
- Remplacer tout : permet deffectuer en bloc tous les remplacements.


2. TRI SIMPLE OU TRI AVEC FILTRE

- Tri et filtre

- Un tri permet laffichage des enregistrements en fonction des valeurs ordonnes
dun ou de plusieurs champs. Exemple : tri denregistrements en fonction de
lordre alphabtique des valeurs du champ Nom .

- Un filtre permet laffichage slectif denregistrements, en fonction de critre(s)
dfini(s). Contrairement au tri qui affiche tous les enregistrements, lapplication
dun filtre permet un affichage denregistrements choisis. Exemple : filtre qui ne
garde que les enregistrements dont le champ Ville a pour valeur Paris ou
Marseille.

Tri simple sur une ou plusieurs colonnes juxtaposes

Le tri des enregistrements peut seffectuer sur les donnes dune seule colonne (cest--
dire sur un seul champ). Exemple : tri des enregistrements par ordre alphabtique des noms.
On peut galement raliser un tri des enregistrements en fonction des donnes de
plusieurs colonnes (cest--dire sur plusieurs champs). Exemple : tri des enregistrements par
ordre alphabtique des noms, puis par ordre alphabtique des prnoms. Des personnes
portant le mme nom seront classes en fonction de leur prnom. Le tri porte successivement
sur le champ Nom, puis sur le champ Prnom.

Pour effectuer un tri simple, commencez par slectionner la ou les colonnes contenant
les donnes trier : cliquez sur le slecteur (case den-tte) de la colonne, ou cliquez-glissez
sur les slecteurs des colonnes. On ne peut slectionner que des colonnes qui sont
juxtaposes. Pour dplacer une colonne : voir au chapitre 3 1 Champs et colonnes .

Aprs slection, vous pouvez :
- Utiliser les trois boutons de gauche du groupe Trier et Filtrer de longlet
Accueil,
- Ou bien, faire un clic droit sur la slection, puis choisir un tri. Si une seule colonne
a t slectionne, les tris proposs dpendent du type de donnes trier.

Si plusieurs colonnes ont t slectionnes, le tri est effectu de la colonne la plus
gauche vers celle la plus droite.

Pour annuler les tris effectus : sous longlet Accueil, dans le groupe Trier et Filtrer ,
activez le bouton Supprimer un tri dont licne reprsente une gomme .


COURS BARDON - ACCESS 2010 / CHAPITRE 4
31
Tri sur une ou plusieurs colonnes quelconques, avec ou sans filtre

Si le tri porte sur une ou plusieurs colonnes juxtaposes, sans application de filtre, voir
le paragraphe prcdent.
Pour trier sur une ou plusieurs colonnes quelconques, avec ou sans application de filtre :
longlet Accueil, dans le groupe Trier et filtrer, activez le bouton Options avances >
Filtre/tri avanc .

Une nouvelle fentre appele (nom de la table)Filtre1 saffiche.
Le cadre suprieur affiche la table active avec les noms de ses champs.
Le cadre infrieur comporte quatre lignes :
- Dans la 1
re
ligne, on indique le champ sur lequel portera le tri et/ou le filtre.
Utilisez le menu droulant .
- Dans la 2
me
ligne, on peut prciser un type de tri. Utilisez le menu droulant .
- Les 3
me
et 4
me
lignes servent indiquer les critres souhaits pour filtrer les
enregistrements. Peu importe la casse (majuscules ou minuscules).

La fentre ayant t renseigne, cliquez sur le bouton Appliquer le filtre du groupe
Trier et filtrer . Son icne reprsente un filtre .
La table rsultat saffiche en Mode Feuille de donnes. En bas de la fentre, apparait un
bouton marqu Filtr , portant la mme icne de filtre. Cliquez dessus permet dafficher la
table avec ou sans filtre (il indiquera Filtr ou Non filtr ).

Exemple
Le nom de la table est CONTACT. Nous vous invitons la crer afin de raliser les
exemples qui suivent.

N Nom Prnom Ville Age
22 Vignaud Chlo Lyon 16
21 Robin Paul Bordeaux 45
23 Blondel Thierry Paris 19
24 Renou Jean Bordeaux 87
25 Audon Corinne Lyon 56
26 Texier Dominique Bordeaux 28
27 Paillat Thrse Bordeaux 63

Cliquez sur le bouton Options avances > Filtre/tri avanc . Dans la fentre
ContactFiltre1, on applique tri et filtres suivants :

Champ : Nom Ville Age
Tri : Croissant
Critres : Bordeaux >50
Ou : Lyon <50

On obtient la table rsultat :

N Nom Prnom Ville Age
27 Paillat Thrse Bordeaux 63
24 Renou Jean Bordeaux 87
22 Vignaud Chlo Lyon 16
COURS BARDON - ACCESS 2010 / CHAPITRE 4
32
Les enregistrements sont tris par ordre alphabtique des noms.
On na retenu que les habitants de Bordeaux de plus de 50 ans, ainsi que les habitants
de Lyon de moins de 50 ans.
(Pour afficher ceux de Paris, il faudrait ajouter cette ville la ligne suivante, dans la
colonne Ville).

- Annulation de tris

Pour annuler un tri, cliquez sur le bouton Supprimer un tri du groupe Trier et
filtrer .

- Activation/Dsactivation et annulation de filtres

Pour activer ou dsactiver temporairement un filtre : dans le groupe Trier et
filtrer , cliquez sur le bouton Activer/Dsactiver le filtre .
Ou bien cliquez sur le bouton Filtr en bas de la Feuille de donnes. Il indique
Filtr ou Non filtr .

Pour annuler tous les filtres :
Dans le groupe Trier et filtrer , activez le bouton Options avances > Effacer
tous les filtres .

Pour annuler les filtres concernant un seul champ :
Slectionnez ce champ, puis activez le bouton Filtre du groupe Trier et filtrer >
Supprimer le filtre dans (nom du champ slectionn) .


3. FILTRER LES DONNEES DUNE TABLE

Pour filtrer les enregistrements, il existe dautres mthodes que celle tudie dans le
paragraphe prcdent.

Filtrer en cochant certaines valeurs de champs

Si on filtre en cochant certaines valeurs de champs, seuls les enregistrements ayant ces
valeurs de champs apparatront dans la table rsultat.

Pour effectuer cette mthode de filtrage, procdez ainsi :
- Slectionnez le champ dont on souhaite ne retenir que certaines valeurs : cliquez
sur sa case den-tte ;
- Dans le groupe Trier et filtrer , activez le bouton Filtrer ;
- Dans la fentre qui saffiche, utilisez les cases cocher.
Par dfaut, toutes les cellules du champ sont slectionnes.

Coche, la case (Vides) permet de slectionner les cellules sans donnes.
Cochez les cases correspondant aux valeurs souhaites du champ, puis validez.




COURS BARDON - ACCESS 2010 / CHAPITRE 4
33
Exemple

Reprenons la table CONTACT de lexemple prcdent. On ne souhaiter afficher que les
habitants de Lyon et de Paris.
Slectionnez le champ Ville, puis activez le bouton Filtrer.
Dcochez la case Bordeaux (en cliquant dessus) et cochez les cases Lyon et Paris :

E Slectionner tout
E (Vides)
E Bordeaux
E Lyon
E Paris

Aprs validation, on obtient la table rsultat :

N Nom Prnom Ville Age
22 Vignaud Chlo Lyon 16
23 Blondel Thierry Paris 19
25 Audon Corinne Lyon 56

On peut filtrer de la mme manire les valeurs dautres champs. Les filtres se
cumuleront, restreignant les enregistrements.

- Activation/Dsactivation et annulation de filtres
Cf. fin du 2 de ce chapitre.

Filtrer en utilisant une expression

Pour filtrer les enregistrements, on peut galement utiliser une expression dpendant des
valeurs dun champ.

Pour filtrer une feuille de donnes en utilisant une ou plusieurs expressions :
- Commencez comme prcdemment par slectionner le champ (cliquez sur sa case
den-tte) ;
- Puis cliquez sur le bouton Filtre du groupe Trier et filtrer .
Dans la fentre, activez loption Filtres de (type de donnes du champ) . Les
oprateurs et expressions proposs diffrent en fonction du type de donnes du champ.
Ils seront par exemple diffrents pour des filtres de texte, des filtres de chiffres et des
filtres de dates.
Pour des chiffres, sont proposs des oprateurs tels que Est gal , Est
plus petit que , Entre .
Pour des dates, sont proposs dautres oprateurs, galement des expressions
telles que Demain , Cette semaine , Lanne prochaine .

Exemple

Reprenons la table CONTACT de lexemple prcdent.
Slectionnez le champ Nom.
Activez le bouton Filtrer > Filtre de texte > Commence par
Dans la zone de saisie de la fentre Filtre personnalis , tapez R, puis validez.
COURS BARDON - ACCESS 2010 / CHAPITRE 4
34
On obtient la table rsultat :

N Nom Prnom Ville Age
21 Robin Paul Bordeaux 45
24 Renou Jean Bordeaux 87

Seuls les enregistrements dont le nom commence par la lettre R sont affichs.

- Activation/Dsactivation et annulation de filtres
Cf. fin du 2 de ce chapitre.

Filtre en fonction dune valeur, ou dune partie de valeur, slectionne

Pour filtrer les enregistrements dune table en fonction dune valeur ou dune partie de
valeur dun champ, procdez ainsi :
- Slectionnez la valeur ou la partie de valeur souhaite du champ.
- Dans le groupe Trier et filtrer , activez le bouton Slection.
- Diverses options sont proposes en fonction de la slection. Choisissez lune
dentre elles.
- Activez le bouton Appliquer le filtre .

Exemple

Reprenons la table CONTACT de lexemple prcdent.
On souhaite nafficher que les enregistrements correspondant aux habitants de
Bordeaux.

Slectionnez Bordeaux dans le champ Ville.
Dans le groupe Trier et filtrer , cliquez sur le bouton Slection. Choisissez loption
Egal Bordeaux .
Activez le bouton Appliquer le filtre . La table rsultat affiche uniquement les
habitants de Bordeaux.

Si dans la table, il ny a pas dautres villes commenant par B, au lieu de slectionner
tout le mot Bordeaux, il suffit de slectionner la lettre B.
Choisissez alors loption : Commence par B .

- Activation/Dsactivation et annulation de filtres
Cf. fin du 2 de ce chapitre.

Filtrer par formulaire

Le filtre par formulaire nutilise que des valeurs exactes de champ.

Pour procder au filtrage par formulaire :
Dans le groupe Trier et filtrer , activez le bouton Options avances > Filtrer par
formulaire .

Une nouvelle fentre donglet (nom de la table): Filtrer par formulaire saffiche. Cest
une grille comportant en 1
re
ligne les noms des champs de la table.
COURS BARDON - ACCESS 2010 / CHAPITRE 4
35
Chaque cellule de 2
me
ligne dispose dun menu droulant permettant de choisir une
valeur parmi toutes celles du champ.
Renseignez cette grille en fonction du filtrage des enregistrements souhait. Utilisez si
ncessaire le dernier onglet Ou situ en bas de la fentre.
Validez en activant le bouton Appliquer le filtre du groupe Trier et filtrer .

Pour vrifier, et si ncessaire modifier, les informations saisies dans la grille, servez-
vous des onglets en bas de la fentre : cliquez sur longlet Rechercher, puis sur les onglets
successifs Ou.

Pour effacer dun bloc toutes les valeurs saisies dans la grille : activez le bouton
Options avances > Effacer la grille .

Exemple

Reprenons la table CONTACT de lexemple prcdent.
On souhaite nafficher que les habitants de Bordeaux de prnom Jean, les habitants de
Lyon de 16 ans et les habitants de nom Paillat.

Cliquez sur le bouton Options avances > Filtrer par formulaire .

La fentre CONTACT : Filtrer par formulaire saffiche, avec les noms des champs de
la table.
- Dans la 1
re
ligne, cliquez dans la case de la colonne Prnom et choisissez Jean.
Dans la mme ligne, choisissez la ville Bordeaux. Cliquez sur longlet Ou.
- Choisissez lge 16, puis la ville Lyon. Cliquez sur longlet Ou.
- Choisissez le nom Paillat.

Vrifiez les informations saisies dans la grille : cliquez sur longlet Rechercher, puis
successivement sur les deux onglets Ou.
Validez en activant le bouton Appliquer le filtre .

On obtient la table rsultat :

N Nom Prnom Ville Age
22 Vignaud Chlo Lyon 16
24 Renou Jean Bordeaux 87
27 Paillat Thrse Bordeaux 63


- Activation/Dsactivation et annulation de filtres
Cf. fin du 2 de ce chapitre.

COURS BARDON - ACCESS 2010 / CHAPITRE 5
36
CHAPITRE 5 TABLE : GESTION APPROFONDIE
DES CHAMPS



Une table est constitue de champs. Il est important de dfinir le plus prcisment et le
plus tt possible les proprits de ses champs :
- Dune part, la saisie des donnes en sera rendue aise et plus sre (par exemple en
dfinissant un Masque de saisie ou une Valeur par dfaut) et les informations
seront plus lisibles (par exemple en dfinissant une Lgende ou un Format).
- Dautre part, la cration des formulaires et des tats qui utiliseront ces champs en
sera facilite. Il est plus rapide et plus sr de dfinir les proprits des champs sur
une table, plutt que de devoir les dfinir ensuite sur chaque formulaire et sur
chaque tat utilisant ces champs.

En rgle gnrale, on dfinit les proprits des champs dans la table ouverte en Mode
Cration. On peut en effet dfinir dans ce mode toutes les proprits.
Certaines proprits, couramment utilises, sont galement dfinissables en Mode Feuille de donnes, en
utilisant les commandes du groupe Type de donnes et mise en forme de longlet Feuille de donnes
(groupe quil aurait t prfrable de nommer Type de donnes et proprits ). Sont ainsi dfinissables en ce
Mode les proprits Nom, Type de donnes, Format, Dcimales, Index, Null interdit et Chane vide autorise.

Au chapitre 2 5 Cration dune table en mode Cration , on a tudi les deux
proprits fondamentales dun champ, savoir son nom et son type de donnes, ainsi que la
proprit Description.
On peut dfinir de nombreuses autres proprits en utilisant le cadre infrieur intitul
Proprits du champ , qui comporte deux onglets :
- Longlet Gnral : les principales proprits de cet onglet sont tudies dans
ce chapitre au 2. PROPRIETES (ONGLET GENERAL )
- Longlet Liste de choix : les listes de choix sont tudies dans ce chapitre au
3. LISTES DE CHOIX.
Avant dtudier les principales proprits, nous allons voir comment ajouter,
slectionner, dplacer et supprimer des champs dans une table ouverte en Mode Cration.

1. GESTION DES CHAMPS EN MODE CREATION

Dans une table ouverte en Mode Feuille de donnes, le nom du champ et ses valeurs
sont en colonne.
Dans une table ouverte en Mode Cration, le nom du champ et ses deux proprits Type
de donnes et Description sont en ligne.
Lajout et la suppression de champs sont galement possibles en Mode Feuille de donnes (cf. chapitre 3
1 Champs et colonnes ). En revanche, on ne peut modifier lordre des champs dune table quen Mode
Cration.

- Ajout dun champ
Ajout dun champ dans une ligne vide
Il suffit de cliquer sur une cellule vide dans la colonne Nom du champ , puis de saisir
le nom du champ. Choisissez ensuite un type de donnes dans le menu droulant , puis
tapez ventuellement une description du champ.
COURS BARDON - ACCESS 2010 / CHAPITRE 5
37
Insertion dun champ en 1
re
ligne ou entre deux lignes de champs
- Cliquez dans la ligne situe sous celle du futur champ.
- A longlet Cration, dans le groupe Outils, activez le bouton Insrer des
lignes . Une nouvelle ligne est insre. Dfinissez les proprits du nouveau
champ : nom, type de donnes, ventuellement description.

- Slection de champs
La procdure de slection de lignes est similaire celle vue en Mode Feuille de donnes : cf. chapitre 3
1 Slectionner des donnes .
Slection dune ligne : cliquez sur le slecteur du champ (sa case den-tte).
Slection de plusieurs lignes juxtaposes : cliquez-glissez sur les slecteurs de
champ. Ou bien : slectionnez la 1
re
ligne, puis appuyez sur la touche Maj (Shift) et
slectionnez la dernire ligne.

- Dplacement de champs
On peut modifier lordre des champs dune table :
- Slectionnez le(s) champ(s) dplacer ;
- Puis effectuez un cliqu-gliss de la slection jusqu lemplacement souhait.

- Suppression de champs
- Slectionnez le(s) champ(s) dplacer ;
- Puis appuyez sur la touche Suppr.
Autre mthode pour supprimer un champ :
Le curseur (barre clignotante) tant dans une ligne, vous pouvez supprimer cette ligne : longlet
Cration, dans le groupe Outils, activez le bouton Supprimer les lignes .


2. PROPRIETES (ONGLET GENERAL )
A. Taille du champ, B. Nouvelles valeurs, C. Format, D. Dcimales, E. Masque de saisie, F. Lgende,
G. Valeur par dfaut, H. Valide si et Message si erreur, I. Null interdit, J. Index, K. Aligner le texte

Pour dfinir les proprits des champs dune table, on louvre ordinairement en Mode
Cration. Les proprits usuelles sont galement dfinissables en Mode Feuille de donnes.
Afin que la liste des proprits dun champ saffiche dans le cadre Proprits du
champ (onglet Gnral), cliquez dans la ligne du champ. Une proprit sapplique
obligatoirement toutes les valeurs du champ sur lequel elle est dfinie.
La liste des proprits dpend du type des donnes du champ. De nombreuses proprits
sont communes plusieurs types de donnes.

- Valeurs par dfaut attribues par Access

Valeur par dfaut : cest une valeur quAccess attribue doffice une proprit de
champ. Exemple : Access limite les valeurs des champs de type Texte un maximum de 255
caractres.
Modification dune valeur par dfaut dans une table
Considrez ces valeurs par dfaut, modifiez-les si ncessaire dans la table : cliquez ou
double-cliquez dans la zone de saisie et tapez la nouvelle valeur. La modification ne sera
effective que sur le champ de la table courante.


COURS BARDON - ACCESS 2010 / CHAPITRE 5
38
Modification dune valeur par dfaut dans la fentre Options Access
Vous pouvez galement modifier certaines valeurs par dfaut : type du champ, taille
dun champ de type Texte, taille dun champ de type Numrique. Access proposera la
nouvelle valeur par dfaut tout nouveau champ sur lequel elle sapplique . Affichez la
fentre Options Access : ouvrez le menu Fichier > Options. Cliquez sur la rubrique
Concepteurs dobjets . Paramtrez convenance dans la zone Cration de table .

- Saisie dune valeur de proprit dans la fentre Zoom

Aprs avoir plac le curseur (barre clignotante) dans la zone de saisie, si vous souhaitez
saisir les caractres dans un espace plus important ou avec dautres paramtres de police,
affichez la fentre Zoom : appuyez sur les touches Maj (Shift) et F2.
Les paramtres de police dfinis dans la fentre Zoom ne sappliquent qu la saisie
dans cette fentre. Ils ne modifieront pas ceux des caractres de la table.
La fentre Zoom nest affichable que pour certaines proprits le justifiant. Exemple : on
peut en disposer pour saisir la Description dun champ, mais elle nest pas disponible pour
saisir un Type de donnes.

- Fentre Access Aide

Pour obtenir ventuellement une explication dtaille dune proprit : cliquez dans sa
ligne, puis appuyez sur la touche F1. Divers documents sont proposs. Vous pouvez aussi
utiliser la zone tiquete Rechercher de la fentre Access Aide .

A. Taille du champ

Les valeurs diffrent en fonction des types de donnes. Cette proprit est applicable
aux types Texte, Numrique et NumroAuto.
La dfinition de la taille dun champ est particulirement importante, pour la saisie et
laffichage.
Exemples
- Si on attribue un champ de type Texte une taille de champ de 10 caractres, on
ne pourra pas saisir plus de 10 caractres.
- Si on attribue un champ de type Numrique la taille de champ Entier, on ne
pourra pas afficher de dcimales (chiffres aprs la virgule), ou bien ces dcimales
ne seront que des zros. Un nombre dcimal est arrondi lentier le plus proche.

- Texte

Un champ de type Texte peut comporter jusqu 255 caractres, valeur propose par
dfaut par Access. Vous pouvez la remplacer par une autre valeur. Par exemple, pour un
champ Nom, saisissez 30. Cette modification ne sera effective que sur le champ concern.
Vous pouvez galement choisir une autre valeur par dfaut. Elle doit tre infrieure
255. Affichez la fentre Options Access : ouvrez le menu Fichier > Options. Cliquez
sur la rubrique Concepteurs dobjets . Dans la zone Cration de table , changez la
Taille de champ de texte par dfaut . La nouvelle valeur par dfaut sappliquera tout
nouveau champ de type Texte.



COURS BARDON - ACCESS 2010 / CHAPITRE 5
39
- Numrique

La taille dtermine :
- La fourchette des valeurs autorises. Elle doit donc tre choisie en fonction de la
valeur (positive ou ngative), saisie ou saisir, la plus importante.
- Laffichage des dcimales. Un champ de taille correspondant au type de nombre
Octet, Entier ou Entier long ne peut afficher que des nombres sans dcimales (ou
avec dcimales nulles). La valeur saisie est arrondie lentier le plus proche.
Pour saisir des valeurs avec des dcimales (chiffres aprs la virgule), il faut choisir
la taille Rel simple (4 octets), Rel double (8 octets) ou Dcimal (12 octets).

La taille attribue dpend du type de nombre choisi.
Contrairement un champ de type Texte, on ne choisit pas la taille dun champ
Numrique, mais on indique le type de nombre. Access en dduit la taille, cest--dire le
nombre doctets qui sera rserv chaque donne.
Il est prfrable de choisir un type de nombre correspondant le mieux possible aux
valeurs susceptibles de contenir le champ. Une taille infrieure risquera dempcher la saisie
de donnes. Une taille suprieure prendra plus de place en mmoire.

Pour choisir un type de nombre : cliquez dans la zone de saisie, puis utilisez le menu
droulant situ son extrmit.

Exemples :

Nombres entiers compris entre Type de nombre choisir Taille du champ correspondante
0 et 255 Octet 1 octet
- 32 768 et 32 767 Entier 2 octets
- 2 147 483 648 et 2 147 483 648 Entier long 4 octets

La valeur Entier long est la valeur propose par Access par dfaut.
Pour choisir une autre valeur par dfaut, procdez comme indiqu dans le paragraphe
prcdent traitant de la taille dun champ de type Texte, en modifiant cette fois la Taille de
champ numrique par dfaut .

B. Nouvelles valeurs

La proprit Nouvelles valeurs nest prsente que pour un champ de Type de
donnes NumroAuto.
La valeur par dfaut attribue cette proprit par Access est Incrment. Access
augmente chaque fois de 1 la dernire valeur gnre.
Lautre valeur possible est : Alatoire. Si elle est choisie, Access gnre pour chaque
enregistrement une valeur alatoire, diffrente des valeurs prcdentes.
Les valeurs gnres, par incrmentation ou alatoirement, sont des nombres dont la
Taille du champ correspond au type de nombre Entier long .





COURS BARDON - ACCESS 2010 / CHAPITRE 5
40
C. Format

Le format dun champ correspond au mode daffichage de ses donnes. Son choix (sil
est judicieux) est important car il rend plus lisibles les donnes, quelles soient lues sur une
Feuille de donnes, sur un formulaire ou sur un tat.
La proprit Format est propose pour la majorit des types de donnes : Texte,
Mmo, Numrique, Date/Heure, Montaire et Oui/Non.
Les formats applicables diffrent en fonction du type de donnes du champ.

Pour les types Numrique, Date/Heure, Montaire et Oui/Non, la proprit Format peut galement tre
dfinie ou modifie dans la Feuille de donnes.
A longlet Feuille de donnes , dans le groupe Type de donnes et mise en forme , sont proposs :
- Une zone de saisie Format avec un menu droulant
- Trois boutons : le 1
er
(icne avec pices) permet dappliquer le format Montaire, le 2
me
(icne
avec %) le format Pourcentage, le 3
me
(icne avec 000) le format Standard.

- Format dun champ de type Numrique

Exemples
En fonction du format appliqu, la donne de type Numrique 8234,519 sera affiche (si
la taille du champ et le nombre de dcimales le permettent) :
- 8234,519 si on donne au champ le format Nombre gnral . Il ny a pas de
mise en forme particulire.
- 8 234,52 si on lui donne le format Standard . Un espace est insr en tant que
sparateur de milliers. Le nombre affiche par dfaut deux dcimales.
- 823451,90 % si on lui donne le format Pourcentage .

Pour que les dcimales puissent safficher, attribuez la proprit Taille du champ la
valeur Rel simple, Rel double ou Dcimal. Vrifiez galement le nombre de dcimales
(cf. la proprit Dcimales au paragraphe D).

- Format dun champ de type Texte ou de type Mmo

Des formats personnaliss peuvent tre dfinis dans les champs de type Texte ou Mmo.
Exemples
Si on tape le symbole < comme valeur de Format, toutes les lettres des valeurs du
champ seront en minuscules (le format concerne galement les donnes dj saisies).
Si on tape le symbole >, toutes les lettres saisies dans le champ seront en majuscules.

- Format dun champ de type Date/Heure

Dans la ligne de la proprit Format, cliquez sur le menu droulant situ son
extrmit. Considrez les exemples correspondant aux formats proposs, et choisissez le
format souhait.

- Format dun champ de type Oui/Non

Un champ de type de donnes Oui/Non peut avoir comme format :
Le format Oui/Non. Cest le format appliqu par dfaut.
Le format Vrai/Faux
Le format Actif/Inactif
COURS BARDON - ACCESS 2010 / CHAPITRE 5
41
Par dfaut, la valeur dun champ de ce type est saisie au moyen dune case cocher. Si
elle est coche, cela correspond, selon le format appliqu, la valeur Oui, Vrai ou Actif.

A la place des cases, coches ou dcoches, si vous souhaitez que saffichent les valeurs
(enregistres par Access) Oui, Non, Vrai, Faux, Actif ou Inactif, procdez ainsi :
- Affichez, si elle ne lest pas dj, la table en Mode Cration ;
- Cliquez dans la ligne du champ de type Oui/Non ;
- Dans le cadre du bas Proprits du champ , ct de longlet Gnral, cliquez
sur longlet Liste de choix ;
- Cliquez sur la ligne de proprit Afficher le contrle (le contrle est ici la
case cocher). Ouvrez le menu droulant , puis choisissez Zone de texte .

D. Dcimales

On appelle nombre dcimal, ou dcimal, un nombre pouvant avoir une virgule (exemple
38,712).
On appelle dcimales les chiffres situs aprs la virgule (le nombre 38,712 en a trois :
7, 1 et 2). La proprit Dcimales permet de dfinir le nombre de dcimales afficher.

Cette proprit concerne les champs de type Numrique ou Montaire.
Par dfaut, sa valeur est Auto : si les valeurs dfinies dans les proprits Taille du
champ et Format le permettent, les dcimales de la valeur saisie safficheront.
La diminution de dcimales na deffet que sur laffichage. La valeur saisie est
enregistre dans son intgralit.

- Modification du nombre de dcimales en Mode Feuille de donnes

On peut galement modifier le nombre de dcimales en Mode Feuille de donnes.
A longlet Feuille de donnes , dans le groupe Type de donnes et mise en forme
(qui devrait sappeler Type de donnes et proprits ), se trouvent les deux boutons dinfo-
bulle :
- Augmenter le nombre de valeurs dcimales. Son icne indique : ,0 ,00.
- Diminuer le nombre de valeurs dcimales. Son icne indique : ,00 ,0.

E. Masque de saisie

Lapplication dun masque de saisie permet de rendre la saisie plus simple et plus
sre.
On dfinit sa valeur laide de certains caractres du clavier. Exemples : 0, 9, #, L, ?, A,
a, &, C.
La proprit Masque de saisie est utilisable pour un champ de type Texte,
Numrique, Date/Heure ou Montaire.

La table est ouverte en Mode Cration.

Pour raliser un masque de saisie, on peut :
- Si le champ est de type Texte ou Date/Heure, utiliser lAssistant Masque de saisie,
- Ou bien saisir directement le masque, en utilisant les caractres appropris, sur la
ligne de proprit Masque de saisie .

COURS BARDON - ACCESS 2010 / CHAPITRE 5
42
- Cration dun masque laide de lAssistant Masque de saisie

- Cliquez sur la ligne de champ dont les valeurs seront concernes par le masque. Le
champ doit tre de type Texte ou Date/Heure.
- Affichez lAssistant : cliquez sur la ligne de la proprit Masque de saisie , puis
activez son extrmit le bouton contenant les points

La premire fentre de lAssistant Masque de saisie saffiche.
En fonction du type de champ (Texte ou Date/Heure), elle propose une liste de masques,
illustre dexemples facilitant le choix dun masque.
Si vous souhaitez modifier ou ajouter un masque, activez le bouton Modifier la liste .
Une nouvelle fentre Assistant Personnaliser le masque de saisie apparat. Pour ajouter un
masque, cliquez sur le bouton , dinfo-bulle Nouvel enregistrement .
Testez ! Aprs avoir cliqu sur un masque, vous pouvez voir son effet sur la saisie dune
valeur dans la zone Essayer (si ncessaire, avant saisie, placez le curseur devant le premier
caractre espace rserv). Cliquez sur Suivant. Si besoin est, corrigez ou supprimez la valeur
saisie.
Passons maintenant aux tapes suivantes.
Le caractre espace rserv dsigne le caractre rserv pour tre remplac lors de la
saisie. Par dfaut, cest le trait de soulignement. Vous pouvez choisir un autre caractre, puis
cliquez dans la zone Essayer pour visualiser son effet ou pour taper une valeur.
Cliquez sur le bouton Suivant . A la dernire fentre, validez le masque en appuyant
sur Terminer .
Un masque ayant t dfini, sa valeur apparat dans la ligne de proprit Masque de
saisie .
Passez en Mode Feuille de donnes. Vrifiez le bon fonctionnement du masque en
saisissant quelques valeurs dans le champ concern (si ncessaire, avant saisie, placez le
curseur devant le premier caractre espace rserv).

- Cration directe dun masque

On peut utiliser divers caractres du clavier pour crer un masque de saisie :

Le caractre
requiert (obligatoire)
ou permet (sil y a saisie
dun caractre)
la saisie exclusive de :
0 requiert un chiffre
9 permet un chiffre ou un espace
# permet un chiffre, ou le signe +, ou le signe - , ou un espace
L requiert une lettre (A Z, minuscule ou majuscule)
? permet une lettre (A Z, minuscule ou majuscule)
A requiert une lettre ou un chiffre
a permet une lettre ou un chiffre
& requiert un caractre quelconque (ventuellement un espace)
C permet un caractre quelconque (ventuellement un espace)



Nous avons aussi notre disposition les caractres suivants :
COURS BARDON - ACCESS 2010 / CHAPITRE 5
43

Caractre Effet sur la saisie
> Les caractres qui suivent sont en lettres majuscules.
< Les caractres qui suivent sont en lettres minuscules.
\ Le caractre suivant est affich tel quel.
! La saisie seffectue de droite gauche.

Enfin, certains caractres nont pas besoin dtre prcds du caractre \ pour tre
affichs.
Leur liste dpend des paramtres rgionaux. Ils peuvent tre les suivants : . , : ; - /
Eventuellement, ils sont affichs doffice par Access, prcds du signe \ dans la zone
de saisie de la proprit Masque de saisie .

Exemples de masques de saisie, illustrs dexemples de valeurs affiches possibles.

Masque de saisie Exemples de valeurs affiches possibles
0La 7t 6Y2 3hv
90,09 5,1 28,37 93,4
90-90-\2\0\00 15-12-2016 3-8-2005 20-6-2088
A&9 8@2 W x7
## ???C - m +9abc! 12 %
>L<LL\ 00a Ref 32c Art 651 Mme 95d


F. Lgende

Les lgendes rendent plus lisibles feuilles de donnes, formulaires et tats. Exemple : on
lit plus facilement Numro Client que NoCl .
Le champ dot dune Lgende, y est en effet en dsign par celle-ci, tout en gardant son
nom (voir le Nom du champ de la table ouverte en Mode Cration).
Par dfaut, Access nattribue un champ aucune valeur de Lgende. Le champ est
simplement dsign par son nom, tant quune valeur de Lgende na pas t saisie.

G. Valeur par dfaut

Il sagit de la valeur par dfaut dun champ.
Quand la valeur dun champ revient souvent, il peut tre intressant, pour gagner du
temps, de la dfinir en valeur par dfaut.
Il ne faut pas confondre :
- la valeur par dfaut dune proprit (exemple : la taille maximale dorigine, cest--dire sans
paramtrage ultrieur, dun champ de type texte est fixe 255 caractres),
- avec la valeur par dfaut dun champ. Elle est affiche et modifiable dans la ligne de proprit
Valeur par dfaut .

Exemples :
Si un champ de type Numrique, on attribue la valeur par dfaut 100, il affichera
doffice 100 chaque enregistrement nouveau.
COURS BARDON - ACCESS 2010 / CHAPITRE 5
44
Si un champ de type Date/Heure, on attribue la valeur par dfaut Date(), il affichera
la date du jour de la saisie chaque enregistrement nouveau.

La Valeur par dfaut peut tre plus ou moins simple saisir. Si ncessaire, vous pouvez
utiliser le Gnrateur dexpression . Pour lafficher : cliquez sur la ligne de la proprit
Valeur par dfaut , puis cliquez son extrmit sur le bouton contenant des points de
suspension

- Gnrateur dexpression

Le Gnrateur dexpression propose :
Des fonctions intgres : pour y avoir accs, double-cliquez sur le dossier
Fonctions (portant le signe +), puis cliquez sur le dossier Fonctions intgres .
Choisissez au milieu une catgorie de fonctions, puis droite la fonction souhaite.
Les constantes : ChaneVide , Faux, Null et Vrai.
Des oprateurs : choisissez une catgorie au milieu, puis un oprateur droite.

Le 1
er
bouton Annuler ferme la fentre sans validation.
Le second bouton Annuler efface ce qui a t tap dans la zone de saisie.
Sous la zone de saisie, vous disposez de boutons contenant des lments couramment
utiliss.

H. Valide si et Message si erreur
Rgles de validit sur un ou plusieurs champs dune table

- Rgle de validit sur un seul champ

Dfinir une proprit Valide si sur un champ permet de contrler la saisie des
valeurs dans ce champ, afin quelles respectent la rgle stipule. Elle ne sapplique pas aux
valeurs dj saisies.
Exemples
Une rgle de validit peut obliger ne saisir que des valeurs infrieures 24.
Une autre rgle peut interdire dentrer la valeur 29/02/2015.

Si la valeur saisie enfreint la rgle de validit, une fentre de message derreur saffiche.
Pour changer ce message et faire apparaitre le vtre, renseignez la proprit Message
si erreur . Inscrivez-y votre propre message derreur (il sera srement plus explicite !).

Pour crer une rgle de validit, cest--dire pour dfinir une valeur la proprit
Valide si , la table doit tre ouverte en Mode Cration.
Cliquez dans la ligne du champ sur lequel vous souhaitez appliquer une rgle de
validit. Dans la zone de saisie de la proprit Valide si , vous pouvez :
- Soit saisir directement lexpression,
- Soit passer par la fentre Gnrateur dexpression .
Pour lafficher, aprs avoir cliqu sur la ligne de la proprit Valide si ,
activez le bouton contenant les points
Voir les indications sur cette fentre dans le paragraphe Gnrateur
dexpression de la proprit prcdente G. Valeur par dfaut .


COURS BARDON - ACCESS 2010 / CHAPITRE 5
45
Remarques
Dans une rgle de validit, les chanes sont places entre guillemets.
Les dates sont doffice encadres entre deux signes dise # et elles sont formates
jj/mm/aaaa.

Exemples de rgles de validit

Valide si Elments utiliss Effet sur la saisie dune valeur
< Date()
- Oprateur <
- Fonction Date()
La date doit prcder la date du jour
courant.
= 3 Ou (> 7 Et < = 10)
- Oprateurs =, Ou, >, Et,
<=
Le nombre doit tre gal 3, ou compris
entre 7 (exclus) et 10 (inclus)
Entre #01/01/1960# Et Date()
- Oprateurs Entre, Et
- Fonction Date()
La date doit tre comprise entre le 1
er

janvier 1960 et la date courante (inclus).
Pas ( violet Ou gris )
- Oprateur Pas, Ou
- Constante (chane vide)
La valeur ne doit tre ni violet, ni gris
(majuscules ou minuscules)
Comme bon*
- Oprateur Comme
- Constante (chane vide)
Le texte doit commencer par bon
(minuscules ou majuscules acceptes)

Les lments utiliss peuvent tre saisis directement au clavier ou par lintermdiaire du
Gnrateur dexpression.

- Rgles de validit faisant rfrence plusieurs champs de la table

On peut avoir besoin de plusieurs champs pour dfinir une rgle de validit.
Exemple : rgle de validit obligeant saisir dans le champ Age_Enfant une valeur
infrieure celles des champs Age_Pere et Age_Mere.

Pour dfinir une rgle de validit multi champs, servons-nous du Volet Feuille de
proprits .
- Pour afficher le Volet Feuille de proprits : longlet Cration, dans le groupe
Afficher/Masquer, cliquez sur le bouton Feuille de proprits .
- Dans le Volet, cliquez sur la ligne de proprit Valide si , puis son extrmit
sur le bouton contenant les points
La fentre Gnrateur dexpression saffiche. Elle servira taper la rgle de
validit.

Message derreur

De retour dans le Volet Feuille de proprits , vous pouvez taper un message derreur
dans la zone de saisie de la proprit Message si erreur .
Pensez utiliser le zoom pour disposer dune zone de saisie plus grande : appuyez sur
les touches Maj (Shift) et F2.
Sinon vous pouvez largir le Volet en cliquant-glissant (pointeur en double flche) sur
son bord gauche.

Exemple

Reprenons le dernier exemple.
On devra obtenir lexpression suivante :
COURS BARDON - ACCESS 2010 / CHAPITRE 5
46
[Age_Enfant] < [Age_Pere] Et [Age_Enfant] < [Age_Mere]

Le Gnrateur dexpression affiche la table en cours, colonne gauche.
La table tant slectionne, ses champs sont affichs dans la colonne suivante. Double-
cliquez sur le nom du champ saisir. Il saffiche alors dans lexpression entre crochets.
Les lments de lexpression peuvent tre saisis directement ou tre prlevs dans le
Gnrateur.
Aprs validation dans le Gnrateur, lexpression apparat dans le Volet de Proprits
comme valeur de la proprit Valide si .
Dans le Volet, cliquez dans la zone de saisie de la proprit Message si erreur . Pour
avoir plus de place pour crire, affichons le zoom : touches Maj (Shift) et F2.
Nous pouvons taper comme valeur de message derreur : Lge dun enfant est infrieur
celui de ses parents.
De retour dans la table affiche en Mode Feuille de donnes, testez.

- Bouton Tester les rgles de validation

La table tant ouverte en Mode Cration, vous pouvez faire tester par Access si les
enregistrements saisis respectent tous les rgles de validation, ainsi que les proprits Null
interdit et Chane vide autorise .
Le bouton Tester les rgles de validation est situ longlet Cration, dans le groupe
Outils.

I. Null interdit

Le Null signifie labsence de valeur.
Le Null interdit signifie donc linterdiction dabsence de valeur.

Deux valeurs sont possibles pour la proprit Null interdit : Oui et Non.
Oui : cela quivaut rendre obligatoire, pour chaque enregistrement, une saisie de
valeur dans le champ, ne serait-ce quun espace ou une chane vide , valeurs qui ne seront
pas affiches.
Si on ne saisit aucun caractre, une fentre saffiche indiquant : Vous devez entrer une
valeur dans le champ Table.Champ ( Table.Champ signifie le Champ de la Table).
Non : cela quivaut autoriser labsence de saisie dune valeur dans un champ. Cest
loption par dfaut.

En Mode Feuille de donnes , longlet Feuille de donnes , dans le groupe Type de donnes et
mise en forme , il est propos la case cocher Requis .
Si on la coche, la proprit Null interdit prend la valeur Oui et la proprit Chane vide autorise
prend la valeur Non.

J. Index
Index sur un ou sur plusieurs champs

Si on choisit la valeur Oui pour la proprit Index dun champ, un index est cr sur ce
champ.
Lindex dun champ est une table de tri (par dfaut, croissant) sur les valeurs de ce
champ. Elle indique pour chacune de ces valeurs la position de lenregistrement
correspondant dans la Feuille de donnes.
COURS BARDON - ACCESS 2010 / CHAPITRE 5
47
Cette table napparat pas. Lindex est gr par Access comme fonctionne un
programme quand on appuie sur le bouton dune commande.

Un index cr sur un champ permet :
- Dacclrer tris et recherches sur ce champ ;
- Dviter que ce champ ait des valeurs identiques (des doublons ), si cette option
est retenue.
Un index sur un champ ne doit tre cr que sil savre utile.
En effet Access devra le reconstituer chaque ajout, suppression ou modification de
valeur du champ.

Exemple

Reprenons lexemple du chapitre 4 2.
Voici la table CONTACT ouverte en Mode Feuille de donnes :

N Nom Prnom Ville Age
22 Vignaud Chlo Lyon 16
21 Robin Paul Bordeaux 45
23 Blondel Thierry Paris 19
24 Renou Jean Bordeaux 87
25 Audon Corinne Lyon 56
26 Texier Dominique Bordeaux 28
27 Paillat Thrse Bordeaux 63

Ouvrez la table CONTACT en Mode Cration (cliquez sur le dernier bouton du bas
droite).
Cliquez sur la ligne du champ Ville afin dafficher les proprits de ce champ.
Choisissez pour la proprit Index loption Oui Avec doublons . On a choisi
Avec doublons car certaines villes (Bordeaux et Lyon) sont affiches plusieurs fois.
Access cre lindex Ville :

ValeurVille PositionEnregistrement
Bordeaux 2
Bordeaux 4
Bordeaux 6
Bordeaux 7
Lyon 1
Lyon 5
Paris 3

Par dfaut, les noms des villes sont tris par ordre alphabtique croissant.
Si, par exemple lors dune requte, Access doit rechercher Bordeaux, il va utiliser
lindex cr : Bordeaux est en 2
me
, 4
me
, 6
me
et 7
me
positions dans la Feuille de donnes.

En Mode Feuille de donnes , longlet Feuille de donnes , dans le groupe Type de donnes et
mise en forme , il est propos la case cocher Unique . Si on la coche, la proprit Index prend la
valeur Oui Sans doublons .
- Fentre Index

On peut modifier les proprits dun index, en utilisant la fentre Index de la table.
COURS BARDON - ACCESS 2010 / CHAPITRE 5
48
Pour afficher la fentre Index : longlet Cration, dans le groupe Afficher/Masquer,
activez le bouton Index.
La fentre Index: (nom de la table) donne la liste des index de la table active.
Vous pouvez modifier le nom dun index, ainsi que lordre de tri des valeurs du champ.

Cliquez sur la ligne de lindex pour que dautres proprits de lindex apparaissent dans
le cadre infrieur.
Primaire : Oui, si le champ est un champ identifiant de la table, auquel on souhaite
donner une cl primaire (cf. Chapitre 2 2 Champs identifiants ). Sil est le seul champ
identifiant, il ne pourra pas contenir de doublons (plusieurs valeurs identiques).
Unique : Oui, si les doublons ne sont pas autoriss.
Ignorer Nulls : Oui, si lindex ne doit pas prendre en compte les valeurs Null (cest--
dire les cellules sans saisie).

- Index utilisant plusieurs champs

Un index ne porte gnralement que sur un champ.
Cependant, comme on peut ordonner des enregistrements en fonction de plusieurs
champs (exemple : tri par ordre alphabtique des noms, puis pour un mme nom, tri par
ordre alphabtique des prnoms), un index peut utiliser plusieurs champs (jusqu 10
champs !).

Lintrt de crer un index multi champs est de permettre dempcher la saisie
densembles identiques de valeurs.
Exemple : si on cre un index portant sur les champs Nom et Mot de passe, et par
ailleurs si on interdit les doublons, lindex empchera aux personnes ayant le mme nom de
choisir le mme mot de passe.

Pour crer un index multi champs :
La table tant ouverte en Mode Cration, affichez la fentre Index: (Nom de la table) :
longlet Cration, groupe Afficher/Masquer, cliquez sur le bouton Index.
Renseignez la fentre (cf. Fentre Index au paragraphe prcdent). Dans la colonne
Nom du champ , slectionnez les champs souhaits.
Pour supprimer un index multi champs, slectionnez-le dans la fentre Index, puis
appuyez sur la touche Suppr.

K. Aligner le texte

On peut donner la proprit Aligner le texte lune des cinq valeurs suivantes :
- Gnral : cest loption par dfaut. Les donnes de type texte sont alignes
gauche, tandis que les donnes de type nombre sont alignes droite.
- Gauche
- Centre
- Droite
- Distribuer : les caractres sont distribus sur toute la largeur de chaque cellule
du champ, quelle que soit cette largeur.


COURS BARDON - ACCESS 2010 / CHAPITRE 5
49
3. LISTES DE CHOIX

Comme son nom lindique, une liste de choix permet de choisir une valeur dans une
liste, au lieu de taper cette valeur.
Cette mthode vise viter les fautes dorthographe et rendre la saisie plus rapide.

Une liste de choix peut tre cre :
- En Mode Cration ou en Mode Feuille de donnes,
- Avec ou sans lAssistant Liste de choix,
- Soit avec des valeurs entres expressment pour la liste, soit avec des valeurs
provenant dune autre table de la base ou des rsultats dune requte sur la base.
Une liste de choix dispose de nombreuses proprits.

- Principe

On dsigne ou on cre un champ, puis on cre la liste de choix.
Quand on place ensuite le curseur (barre clignotante) dans la cellule afin de saisir une
valeur dans ce champ, un menu droulant apparat. On louvre, et on choisit une valeur
dans la liste. On peut ventuellement taper une valeur hors liste.

- LAssistant Liste de choix

Nous recommandons lutilisation de lAssistant.
Pour afficher lAssistant : la table tant ouverte en Mode Cration, cliquez dans la
cellule Type de donnes du champ, puis ouvrez le menu droulant et choisissez la
dernire option Assistant Liste de choix .
Aprs avoir cr la liste de choix avec lAssistant, libre nous de modifier ensuite les
proprits de cette liste.

- Les proprits dune liste

Pour afficher les proprits dune liste : la table tant ouverte en Mode Cration, cliquez
sur la ligne du champ concern, puis activez longlet Liste de choix dans le cadre intitul
Proprits du champ .
Quand on clique sur une ligne de proprit, le cadre de droite affiche une explication de
cette proprit.

- Valeurs entres dans une liste de choix

Les valeurs proposes dans une liste de choix peuvent tre :
- Soit des valeurs entres expressment pour cette liste.
- Soit des valeurs provenant dun ou de plusieurs champs dune autre table de la
base. Si des valeurs de ces champs sont changes, ajoutes ou supprimes, la
liste de choix sera modifie en consquence. Les deux tables sont
obligatoirement lies.
- Soit des valeurs dune table rsultant dune requte effectue sur la base (les
requtes de slection sont tudies aux chapitres 9, 10 et 11). Le principe de
cration de liste est le mme que pour une liste cre partir de valeurs en
provenance dune autre table de la base.

COURS BARDON - ACCESS 2010 / CHAPITRE 5
50
Liste de choix cre avec des valeurs entres expressment pour la liste

- Constitution dune liste de choix en Mode Cration

Affichez lAssistant Liste de choix : cliquez dans la cellule Type de donnes du
champ, puis ouvrez le menu droulant et choisissez la dernire option Assistant Liste de
choix .
- Dans la fentre de lAssistant, cochez loption Je taperai les valeurs
souhaites . Cliquez sur Suivant .
- Choisissez le nombre de colonnes que vous souhaitez que la liste affiche, sachant
que seules les valeurs de la premire colonne pourront tre saisies dans la cellule
du champ. Les valeurs des autres colonnes ne seront quaffiches.
- Entrez les valeurs que vous souhaitez que la liste affiche. Cliquez sur
Suivant .
- LAssistant invite slectionner la colonne des valeurs stocker. Validez.
- Dans la nouvelle fentre :
Gardez le nom de ltiquette.
Si vous cochez la case Autoriser plusieurs valeurs , la liste de choix se
prsentera sous la forme de cases cocher. Les valeurs choisies seront
affiches dans la cellule, spares par des points-virgules.
Attention : si vous choisissez dautoriser la saisie de plusieurs valeurs
dans une cellule du champ, vous ne pourrez plus linterdire ensuite,
mme en crant une nouvelle liste de choix (vous naurez plus qu crer
un autre champ).
- Pour valider la liste de choix cre, cliquez sur le bouton Terminer .

La table est affiche en Mode Cration.
Affichez les proprits de la liste de choix que vous venez de crer : aprs avoir cliqu
sur la ligne du champ concern, activez longlet Liste de choix dans le cadre Proprits
du champ .
Les proprits de la liste peuvent tre modifies. Exemple : on peut dcider de ne pas
limiter la saisie aux lments de la liste de choix. Pour ce faire, la proprit Limiter
liste , slectionnez loption Non .

- Cration dun champ utilisant une liste de choix

En Mode Feuille de donnes
Pour crer le champ, puis la liste de choix, procdez ainsi :
- Cliquez dans la colonne droite de la colonne crer.
- A longlet Champs , dans le groupe Ajouter et supprimer , activez le
bouton Plus de champs .
- LAssistant Liste de choix saffiche. Procdez comme indiqu prcdemment
dans le paragraphe concernant la cration dune liste dans une table ouverte en
Mode Cration.

En Mode Cration
La table tant ouverte en Mode Cration, le bouton Modifier les recherches , situ
longlet Cration dans le groupe Outils , permet de crer un champ utilisant une liste de
choix.

COURS BARDON - ACCESS 2010 / CHAPITRE 5
51
Liste de choix cre avec des valeurs dune autre table de la base

Cette fois-ci, au lieu de saisir des valeurs exprs pour la liste de choix, on va les prendre
dans un champ dune autre table de la base. On pourra aussi afficher dautres champs de cette
table, source des valeurs.
Si les valeurs des champs de la table source sont modifies, la zone de liste sera
actualise en consquence.

Si ce nest dj fait, ouvrez la table contenant les champs dont les valeurs safficheront
dans la liste de choix.
La table sur le champ de laquelle on va crer une liste de choix est ouverte en Mode
Cration.

Affichez lAssistant Liste de choix : cliquez dans la cellule Type de donnes du
champ, puis ouvrez le menu droulant et choisissez la dernire option Assistant Liste de
choix .
- Dans la fentre de lAssistant, cochez loption Je veux que la liste de choix
recherche les valeurs dans une table . Cliquez sur Suivant .
- Dans la nouvelle fentre, slectionnez la table dont les champs contiennent les valeurs
qui seront celles de la liste de choix. Cliquez sur Suivant .
- Slectionnez les champs de la table. Vous pouvez utilisez les boutons >, >> ,< et <<.
Si vous slectionnez plusieurs champs, les valeurs de chacun constitueront une
colonne de la liste de choix.
Lordre de slection est important : lors de la saisie dans la feuille de donnes, si la
liste de choix comporte plusieurs colonnes, seules les valeurs de la premire sont
affichables dans la cellule de saisie.
- Cliquez sur Suivant .
- Vous pouvez trier les valeurs qui seront affiches, par ordre croissant ou dcroissant,
selon un ou plusieurs champs. Si des tris sont effectus sur plusieurs champs, le tri
dun champ prime sur le tri du champ suivant.
- Dans la fentre suivante, vous pouvez modifier la largeur dune colonne de la liste :
cliquez-glissez ou double-cliquez sur le bord droit dune case den-tte de colonne. Le
pointeur a la forme dune double-flche . Cliquez sur Suivant .
- Gardez le nom de ltiquette.
- Option Autoriser plusieurs valeurs : voir les remarques concernant cette option
dans le paragraphe prcdent Liste de choix cre avec des valeurs entres
expressment.
- Pour valider la liste de choix cre, activez le bouton Terminer .

Suppression dune liste de choix

La table tant ouverte en Mode Cration, cliquez sur la ligne du champ sur lequel
sapplique la liste de choix.
Dans le cadre intitul Proprits du champ , activez longlet Liste de choix .
Choisissez en premire proprit Zone de texte .




COURS BARDON - ACCESS 2010 / CHAPITRE 6
52
CHAPITRE 6 RELATIONS ENTRE LES TABLES



1. LINTERET DE LIER DES TABLES

Mme tant isoles, les tables prsentent des avantages, en particulier : informations
structures, saisie des donnes facilite, application de tris et de filtres, affichage et slection
des donnes.
La cration de relations est utile, elle offre des avantages supplmentaires :
- Relies, les tables permettent de prsenter un systme encore mieux structur, ainsi
que des donnes plus cohrentes (notamment par lapplication de lintgrit
rfrentielle , cf. 5 de ce chapitre).
- Reprsentes par des lignes, les relations permettent didentifier facilement les champs
correspondants.
- Les relations savrent pratiques lors de llaboration des requtes, ainsi que pour la
ralisation de formulaires et dtats (cration de sous-formulaires et de sous-tats).


2. CHAMPS IDENTIFIANTS, CLES PRIMAIRES ET CLES ETRANGERES

Usuellement, une relation entre deux tables est reprsente par une ligne qui part de la
cl primaire dune table, et qui arrive sur une autre table la cl trangre correspondante.
Les notions de champs identifiants et de cls seront expliques en dtail dans les
paragraphes suivants.

Champs identifiants

Une table doit toujours contenir un champ ou un groupe de champs identifiant, do
ltude des champs identifiants ds ltape de la cration de la table (cf. chapitre 2
2 Champs identifiants ).
La caractristique dun champ ou dun groupe de champs identifiant est de permettre
didentifier un enregistrement de la table.

- Table comportant un champ identifiant

Lorsquune table comprend un champ identifiant, une valeur de ce champ permet
didentifier lenregistrement correspondant : connaissant une valeur du champ identifiant, on
peut dduire les valeurs des autres champs de lenregistrement.
Exemple
Dans une table LIVRE, un numro de livre permet didentifier le livre correspondant.
Connaissant le numro dun livre, on peut dduire le titre, le numro dauteur et lditeur de
ce livre (quand le champ est renseign).




COURS BARDON - ACCESS 2010 / CHAPITRE 6
53
- Table comportant un groupe de champs identifiant

Lorsquune table comprend un groupe de champs identifiant, un ensemble de valeurs
des champs de ce groupe permet didentifier lenregistrement correspondant. Connaissant les
valeurs de tous les champs du groupe, on peut dduire les valeurs des autres champs de
lenregistrement.
Le groupe de champs identifiant comporte uniquement les champs ncessaires
lidentification dun enregistrement.
Exemple
Considrons la table EMPRUNT : EMPRUNT
NoLivre
NoPersonne
DateEmprunt
DateRetour

On suppose quune personne ne peut emprunter quune seule fois un mme livre.
La table EMPRUNT a pour identifiant le groupe de champs compos de NoLivre et de
NoPersonne. Il est ncessaire et suffisant de connatre un numro de livre et un numro de
personne pour identifier lemprunt correspondant. On peut en dduire la date demprunt et la
date de retour du livre (le champ DateRetour nest pas renseign si le livre na pas t
rendu).
Supposons maintenant quune mme personne puisse emprunter plusieurs fois le
mme livre, des dates diffrentes. Le groupe de champs identifiant doit dans ce cas inclure
galement le champ DateEmprunt.

Lattribution dune cl primaire

Sans que cela soit obligatoire, il est vivement conseill dattribuer une cl primaire
tout champ ou groupe de champs identifiant.
Il est usuel de dsigner alors ce champ ou ce groupe de champ la cl primaire de la
table.

- Vrifications pralables lattribution dune cl primaire

Avant dattribuer une cl primaire un champ ou un groupe de champs, vrifiez que :
- Le champ a le type NumroAuto, Numrique ou Texte. Ce sont les seuls types
accepts pour une cl primaire.
- Le champ ou le groupe de champs permet didentifier un enregistrement.
- Tous les enregistrements de la table ont ou doivent avoir une valeur pour ce
champ.
Sil sagit dun champ de type Texte, cette valeur peut tre (une seule fois, car les doublons sont
interdits pour une cl primaire) la chane vide . Sans tre vide, la cellule naffichera rien.
- Les valeurs de ce champ sont et seront uniques.
Il est habituel de choisir NumroAuto en type de champ identifiant. Dans un
champ de ce type, Access gnre automatiquement les valeurs, donc il ne peut
pas y avoir dabsence de valeur. De plus, ces valeurs tant uniques, il ny a pas
de risque de doublons , cest--dire de valeurs identiques.




COURS BARDON - ACCESS 2010 / CHAPITRE 6
54
- Attribuer une cl primaire

La table tant ouverte en Mode Cration, pour attribuer une cl primaire un champ ou
un groupe de champs, procdez ainsi :

- Dsignez le champ ou le groupe de champs identifiant :
Sil sagit dun champ identifiant : cliquez sur la ligne de champ concern.
Sil sagit dun groupe de champ identifiant : slectionnez les lignes de
tous les champs du groupe.
Si les lignes de champs ne sont pas juxtaposes, dplacez-les de sorte
quelles le soient : cliquez sur une ligne, puis cliquez-glissez jusqu
lemplacement souhait.
- A longlet Cration, dans le groupe Outils, activez le bouton Cl primaire .

Une icne reprsentant une cl saffiche (nous prendrons le signe pour dsigner la
cl primaire ).
Pour un champ identifiant : licne saffiche dans sa case den-tte. On peut
ds lors dsigner le champ comme cl primaire de la table .
Pour un groupe de champs identifiant : licne saffiche dans la case den-
tte de chaque champ du groupe. Cest le groupe qui est cl primaire.

- Cration dun index

(Cf. chapitre 5 2 J. Proprit Index - Index sur un ou plusieurs champs )
Si la cl primaire de la table est un seul champ, Access cre doffice un index sur ce
champ. Vous pouvez le vrifier en Mode Cration, la proprit Index du champ.
Une cl primaire devant avoir une valeur unique pour chaque enregistrement, Access
cre un index sans doublons.
Si la cl primaire est un groupe de champs, Access ne cre pas dindex sur le groupe.

- Suppression dune cl primaire

Si la table est utilise dans une relation, il faut supprimer dabord la relation (cf. 4 de
ce chapitre Modifier ou supprimer une relation ).
Pour supprimer une cl primaire : en Mode Cration, slectionnez le champ, puis
longlet Cration, dans le groupe Outils, cliquez sur le bouton Cl primaire .

Cls trangres (ou cls externes)

Une cl trangre (ou cl externe) dune table, est un champ analogue une cl primaire
dune autre table. Les valeurs dune cl trangre ont normalement t dabord saisies dans la
cl primaire.
Les deux champs, cl primaire et cl trangre, peuvent porter des noms diffrents.
On nattribue pas de cl trangre, il sagit dune simple dnomination. Contrairement
la cl primaire symbolise par licne reprsentant une cl, un champ qui est cl trangre
nest dot daucun signe particulier.
Une relation est souvent reprsente par une ligne partant dune cl primaire dune table,
et arrivant la cl trangre correspondante dans une autre table.
Souvent , car il nest pas obligatoire (mais fortement conseill) dattribuer une cl primaire au champ
ou groupe de champs identifiant. De plus, une relation peut faire correspondre une cl primaire une autre cl
primaire.
COURS BARDON - ACCESS 2010 / CHAPITRE 6
55
Exemple

PROPRIETAIRE TERRAIN
NoPropr RefCadastrale
Nom Surface
Adresse NoProprietaire
NoVille

Les champs NoPropr et NoPropritaire sont analogues.
Le champ NoPropr de PROPRIETAIRE est la cl primaire de la table.
Le champ NoPropritaire de TERRAIN est la cl trangre correspondant la cl
primaire NoPropr.
Dans la table TERRAIN, le champ NoVille peut tre galement une cl trangre, correspondant la cl
primaire (par exemple NumroVille) dune tierce table.

- Cl trangre correspondant une cl primaire de type NumroAuto

Il est usuel de donner la cl primaire le type NumroAuto. En effet, Access gnre
alors automatiquement la valeur (il ny a donc pas de risque dabsence de valeur) et les
valeurs gnres sont uniques.
Le champ cl trangre correspondant une cl primaire de type NumroAuto, sera dot
du type Numrique. Sa proprit Taille du champ sera Entier long, comme celle de la cl
primaire.
Ce nest pas impos, mais vivement recommand. Les valeurs de la cl primaire
pourront en effet tre alors utilises comme valeurs de cl trangre.


3. TYPES DE RELATIONS ET TABLES DE JONCTION

On dfinit deux types de relations : la relation de type un--plusieurs, la plus commune,
et la relation de type un--un.

Relation de type un--plusieurs

Les relations sont en majorit de ce type.

- Dfinition

Communment, une relation un--plusieurs est reprsentable par une ligne partant de la
cl primaire dune table, et arrivant la cl trangre correspondante dune autre table.
Le premier champ, sil doit tre ncessairement le champ identifiant de la table, nest
pas obligatoirement cl primaire (pour quil le soit, on doit la lui attribuer). Pour plus de
simplicit, on parlera cependant de cl primaire et de cl trangre.
Lexemple prcdent ( 2 in fine) des tables PROPRIETAIRE et TERRAIN illustre une
relation un--plusieurs.

Une relation de type un--plusieurs est telle que :

COURS BARDON - ACCESS 2010 / CHAPITRE 6
56
A un enregistrement de la table avec cl primaire, il correspond zro, un ou
gnralement plusieurs enregistrements de la table avec cl trangre. Do le nom de ce type
de relation un--plusieurs .
Exemple : un auteur de la table AUTEUR, il correspond zro, un ou plusieurs
(gnralement plusieurs) livres de la table LIVRE.

Inversement : un enregistrement de la table avec cl trangre, il ne correspond
quun enregistrement de la table avec cl primaire.
Exemple : un livre de la table LIVRE, il ne correspond quun auteur de la table
AUTEUR (on a pris pour rgle de ne relever quun nom dauteur par livre, mme si le livre est
luvre de coauteurs).

- Cts un et ct plusieurs

Une relation un--plusieurs est reprsente par une ligne :
qui part de la cl primaire : on appelle ce ct le ct un,
et qui arrive la cl trangre : on appelle ce ct le ct plusieurs, ct infini, de
symbole .
Si lintgrit rfrentielle est applique la relation (cf. 5), le chiffre 1 et le symbole sont affichs sur
la ligne de relation.
Exemple : la relation qui relie les tables de lexemple prcdent, a son ct un du ct
de la table AUTEUR et son ct plusieurs (ou ) du ct de la table LIVRE.

Relation de type un--un

Une relation un--un peut tre reprsente par une ligne partant de la cl primaire dune
table et arrivant la cl primaire dune autre table.
Les deux cls primaires sont des champs analogues.
A un enregistrement dune table correspond un enregistrement de lautre table, et vice-
versa. Do le nom de ce type de relation un--un .
Les deux cts de la relation sont ici des cts un .
Si lintgrit rfrentielle est applique la relation (cf. 5), le chiffre 1 est affich prs de chacune des
deux tables sur la ligne de la relation.
La ligne symbolisant la relation, part de la table principale et aboutit la table
secondaire.

Exemple

LIVRE LIVRE_PERSO
NoLivre NumeroLivre
NomAuteur EtatLivre
Editeur Appreciation
DateEdition AGarder(oui/non)
Genre

Les cls primaires des deux tables sont les champs analogues, NoLivre et NumeroLivre.
La relation part de la table principale LIVRE et arrive la table secondaire
LIVRE_PERSO.



COURS BARDON - ACCESS 2010 / CHAPITRE 6
57
Tables de jonction

Supposons quon souhaite relier deux tables, nommes A et B, telles que :
A un enregistrement de la table A, peuvent correspondre plusieurs enregistrements
de la table B,
Et inversement : un enregistrement de la table B, peuvent correspondre plusieurs
enregistrements de la table A.

Par dfinition, cette relation ne peut donc tre ni de type un--plusieurs, ni de type un--
un. Si ce type existait, on pourrait lappeler plusieurs--plusieurs.

Ces tables doivent dans ce cas tre relies par lintermdiaire dune troisime table,
nomme table de jonction.
Les tables A et B sont relies chacune la nouvelle table, dite table de jonction. Les
deux relations ainsi cres sont de type un--plusieurs.
Si on dote la table dune cl primaire, comme cest fortement recommand, on lattribue
au groupe de champs compos des cls trangres, correspondants aux cls primaires des
tables A et B.
La table de jonction peut galement comporter dautres champs.

Exemple

On a les deux tables ETUDIANT et COURS :

ETUDIANT COURS
NoEtudiant NoCours
NomEtudiant NomCours
PrnomEtudiant

Un mme tudiant peut suivre plusieurs cours.
Inversement, un mme cours peut tre suivi par plusieurs tudiants.
Pour relier ces deux tables, il convient donc de crer une table de jonction, quon
appelle par exemple SUIVRE (il est prfrable de donner des noms explicites aux tables comme
aux champs, pour plus de lisibilit).
Ajoutons le champ Moyenne cette table SUIVRE. Elle permettra ainsi dindiquer en
outre la moyenne obtenue par un tudiant un cours donn.
Lidentifiant de la table de jonction est le groupe de champs compos des cls
trangres NoEtudiant et NoCours. A ce groupe de champs identifiant, on attribue une cl
primaire.
Les deux lignes reprsentant les deux relations sont ainsi traces :
- lune part de NoEtudiant la cl primaire (NoEtudiant, NoCours) de la table
SUIVRE.
- lautre part de NoCours et arrive galement la cl primaire de la table SUIVRE.
Les deux nouvelles relations sont de type un--plusieurs.
On obtient les tables et les relations suivantes :

ETUDIANT SUIVRE COURS
NoEtudiant NoEtudiant NoCours
NomEtudiant NoCours NomCours
PrnomEtudiant Moyenne
COURS BARDON - ACCESS 2010 / CHAPITRE 6
58
4. CREATION, MODIFICATION ET IMPRESSION DES RELATIONS

Les tables relier tant maintenant fin prtes (sinon reportez-vous aux paragraphes
prcdents), il reste crer les relations en pratique.

La fentre Relations

La fentre Relations permet de visualiser les tables et les relations.
Quon soit en Mode Cration ou en Mode Feuille de donnes, pour lafficher : longlet
Outils de base de donnes , dans le groupe Relations, activez le bouton Relations.
On utilisera les Outils de relation dont longlet Crer comprend le groupe Outils et le
groupe Relations.

- Gestion des tables

Afficher des tables

Pour afficher des tables dans la fentre Relations , affichez la fentre Afficher la
table : cliquez sur le bouton Afficher la table du groupe Relations , ou bien faites un
clic droit sur larrire-plan de la fentre > Afficher la table.
Les tables saffichent avec leur barre de nom, suivie des noms des champs, prcds
dune icne de cl , pour ceux qui ont t dots dune cl primaire.
Les champs apparaissent dans le mme ordre que dans la table ouverte en Mode
Cration. Cest le nom du champ qui parat, et non sa lgende comme sur la feuille de
donnes.
- Pour ajouter une table : vous pouvez la slectionner, puis activez le bouton
Ajouter , ou bien double-cliquer sur son nom.
En commandant lajout dune table dj prsente, on obtient laffichage (non la
cration) dune mme table, nomme (nom de la table)_1. On peut ainsi afficher le
nombre de fois souhait une mme table.

- Pour ajouter dun bloc plusieurs tables :
Slectionnez-les dabord dans la fentre Afficher la table :
o Si les noms des tables se suivent : cliquez sur le nom de la premire table,
puis appuyez sur la touche Maj (Shift) et cliquez sur le nom de la dernire
table ajouter.
o Si les noms des tables ne se suivent pas : cliquez sur le nom de la premire
table, puis appuyez sur la touche Ctrl et cliquez sur chaque nom de table
ajouter.
Activez le bouton Ajouter de la fentre Afficher la table .

Pour afficher dun bloc toutes les tables relies, activez le bouton Afficher toutes
les relations du groupe Relations.

Slectionnez une table

Pour slectionner une table dans la fentre Relations : cliquez sur son texte.
La couleur de larrire-plan de lun de ses champs change alors de couleur.


COURS BARDON - ACCESS 2010 / CHAPITRE 6
59
Masquer une table

On ne peut masquer les tables quune une.
Pour masquer une table : faites un clic droit sur le texte de la table > Masquer la table.
Il existe une autre mthode pour masquer une table :
- Slectionnez-la, en cliquant sur son texte.
- Dans le groupe Relations , activez le bouton Masquer la table , ou bien
appuyez sur la touche Suppr (Del) (seul sera supprim laffichage de la table
dans la fentre Relations ).
Ne pas confondre masquer une table dans la fentre Relations (il sagit juste de supprimer laffichage
de cette table dans la fentre), et fermer une table. Pour fermer une table : faites un clic droit sur son onglet >
Fermer.
La table peut ne pas paratre dans la fentre Relations , donc tre masque, tout en tant ouverte. Une
table ouverte affiche un onglet portant son nom.

Dplacer une table, modifier sa grandeur

Pour dplacer une table : cliquez-glissez sur la barre de son nom jusqu lemplacement
souhait. Il sagit de la mthode habituelle pour dplacer une fentre.
Pour modifier la grandeur dune table, en hauteur ou en largeur : cliquez-glissez sur le
bord souhait (pointeur en double-flche ). Pour garder les proportions hauteur/largeur de la
table, cliquez-glissez sur un angle de la table (pointeur en flche oblique).

- Afficher les relations

On utilisera longlet Crer des Outils de relation , le groupe Outils et le groupe
Relations.
Les relations sont reprsentes par des lignes reliant deux champs analogues.
Quand il y a application de lintgrit rfrentielle sur la relation (cf. 5), les indications des cts sont
affiches : le chiffre 1 dsigne le ct un, le symbole infini le ct plusieurs.

- Pour afficher toutes les relations dans la fentre : cliquez sur le bouton Afficher
toutes les relations , ou bien faites un clic droit sur larrire-plan de la fentre >
Afficher toutes les relations. Toutes les tables relies sont affiches.

- Pour nafficher que les relations concernant une table donne :
o Masquez dabord tables et relations : dans le groupe Outils , cliquez
sur le bouton Effacer la mise en page . Confirmez.
o Affichez la table : activez le bouton Afficher la table , puis dans la
fentre Afficher la table , double-cliquez sur le nom de la table
afficher.
o Activez le bouton Afficher les relations directes du groupe
Relations .

Cration dune relation

On utilisera longlet Crer des Outils de relation , le groupe Outils et le groupe
Relations.

Pour crer une nouvelle relation, procdez ainsi :

COURS BARDON - ACCESS 2010 / CHAPITRE 6
60
- Avant de crer une relation entre deux tables, fermez dabord ces tables (clic
droit sur longlet de la table fermer > Fermer), sinon vous ne pourrez pas
appliquer loption dintgrit rfrentielle sur la relation.
- Affichez les tables que vous souhaitez relier.
- Affichez la fentre Modifier des relations : cliquez sur le bouton Modifier
des relations du groupe Outils .
- Affichez la fentre Crer une nouvelle relation : dans la fentre Modifier
les relations , cliquez sur le bouton Nouvelle relation .
- Renseignez la fentre Crer une nouvelle relation .
Utilisez les menus droulants pour saisir :
o A gauche, la table do partira la relation, puis sa cl primaire (sinon le
champ identifiant).
o A droite, la table o arrivera la relation, puis la cl trangre
correspondante (sinon le champ analogue), ou la cl primaire (sil sagit
dune relation de type un--un).
- Validez.
- Dans la fentre Modifier des relations , cliquez sur le bouton Crer.

Dans la fentre Relations , une ligne symbolise la relation entre les tables et on peut
visualiser sur quels champs des tables sappuie la relation.
Si on affiche nouveau la fentre Modifier des relations , on peut y voir indiqu le
type de la relation.

Modifier ou supprimer une relation

On utilisera longlet Crer des Outils de relation , le groupe Outils et le groupe
Relations.
Pralablement la modification ou la suppression dune relation :
- Affichez la relation (donc les tables quelle relie).
- Sil y a application de lintgrit rfrentielle sur la relation (les symboles 1 ou
sont alors affichs sur la ligne de relation), il est ncessaire de fermer les tables
lies par la relation modifier ou supprimer.

- Modification dune relation :

- Affichez la fentre Modifier des relations .
Il existe trois mthodes pour lafficher :
o Double-cliquez sur la relation
o Ou bien faites un clic droit sur la ligne de relation > Modifier une relation
o Ou bien dans le groupe Outils, activez le bouton Modifier des
relations .
- Renseignez la fentre, puis validez les modifications effectues.

- Suppression dune relation

Aprs avoir ferm les tables concernes par la relation (cest ncessaire sil y a
application de lintgrit rfrentielle sur la relation), faites un clic droit sur la ligne de la
relation > Supprimer, ou bien slectionnez la relation en cliquant dessus et appuyez sur la
touche Suppr.
Confirmez la demande de suppression.
COURS BARDON - ACCESS 2010 / CHAPITRE 6
61
Imprimer ltat des relations

Si elles ne le sont pas, affichez les relations : longlet Outils de base de donnes ,
dans le groupe Relations, activez le bouton Relations.
Dans le groupe Outils de longlet Crer des Outils de relation , cliquez sur le bouton
Rapport de relations .

- Affichage de ltat des relations en mode Aperu avant impression

Le rapport est titr Relations pour (nom de la base de donnes) et dat.
Y apparaissent les tables avec leur nom et leurs champs, ainsi que les lignes de relations
et, ventuellement les dsignations de leurs cts, symboliss par 1 ou , sil y a application
de lintgrit rfrentielle la base de donnes. Les cls primaires ne sont pas indiques.

Ltat des relations saffiche en mode Aperu avant impression .
Vous pouvez utiliser les commandes de la fentre :
Le bouton Imprimer permet dafficher la fentre Imprimer .
Les commandes du groupe Mise en page permettent de modifier la mise en
page de ltat.
Les commandes du groupe Zoom permettent de modifier laffichage de
ltat.
Le groupe Donnes dispose de commandes pour exporter ltat, par exemple
vers un fichier Word, un fichier Excel ou vers une autre base de donnes. Le
bouton PDF ou XPS permet denregistrer ltat sous lun de ces formats.
Et vous avez le bouton Fermer laperu avant impression .
Si ltat des relations est enregistr, il devient un objet tat de la base de donnes. Il
figure alors dans le Volet de navigation (les tats sont traits au chapitre 14 LES ETATS).

- Impression de ltat des relations

Pour imprimer ltat des relations, cliquez sur le bouton Imprimer du mode Aperu
avant impression . Ou bien ouvrez le menu Fichier > Imprimer, puis choisissez Impression
rapide ou Imprimer (si vous souhaitez dabord vrifier ou modifier les paramtres
dimpression).


5. INTEGRITE REFERENTIELLE

Caractristique fondamentale de lintgrit rfrentielle : il ne peut y avoir de valeur de
cl trangre qui ne soit pas une valeur de la cl primaire correspondante. On ne peut ni saisir,
ni modifier, ni supprimer une valeur dans la cl trangre, ds lors quil ny aurait pas de
valeur identique dans la cl primaire (en revanche, il peut exister des valeurs de cl primaire
qui ne soient pas valeurs de cl trangre).

Si lintgrit rfrentielle impose quelques contraintes, celles-ci savrent ncessaires au
regard de la cohrence des donnes. Nous conseillons de lappliquer sur les relations de la
base de donnes.

COURS BARDON - ACCESS 2010 / CHAPITRE 6
62
Leffet principal de lintgrit rfrentielle est dempcher quune valeur soit saisie dans
le champ o arrive la relation (ordinairement cl trangre), quand cette valeur na pas sa
contrepartie dans le champ do part la relation (ordinairement cl primaire).
- Si le cas existe avant la demande dintgrit rfrentielle, celle-ci est refuse et
un message derreur saffiche.
- Lintgrit rfrentielle tant applique une relation, si on saisit une valeur
dans la cl trangre (ct plusieurs ), alors que cette valeur nest pas prsente
dans le champ analogue (ct 1), la validation de la saisie est refuse.

Exigences de lintgrit rfrentielle

Lapplication de loption Intgrit rfrentielle est rtroactive. Elle nest
applicable une relation que si elle respecte dj les critres dintgrit rfrentielle. Sinon,
procdez aux modifications ncessaires afin de pouvoir lappliquer.

Curieusement, lintgrit rfrentielle nexige pas que le champ do part la ligne de
relation soit dot dune cl primaire.
Elle vrifie juste que le champ identifiant a comme valeur de sa proprit Index la
valeur Oui Sans doublons (comme est doffice cette valeur pour un champ cl primaire).
Si le champ identifiant, usuellement cl primaire, nest pas Index Sans doublons ,
un message derreur saffiche, empchant lapplication de lintgrit rfrentielle.

Afin de pouvoir appliquer lintgrit rfrentielle, il faut que, pour chaque relation,
les deux champs sur lesquels elle sappuie soient dots du mme type de donnes,
lexception importante suivante : si le champ identifiant est de type NumroAuto, cas usuel, le
champ correspondant peut et doit tre du type Numrique.
La proprit Taille du champ doit galement tre la mme pour les deux champs.
Exemple : lintgrit rfrentielle ne peut pas tre applique une relation liant un champ de
type Numrique et de taille Octet son champ correspondant de type Numrique, mais dot,
lui, de taille Entier long.

Exemple dapplication dintgrit rfrentielle sur une relation

Considrons les deux tables relies suivantes :
VILLE PERSONNE
NumeroVille
1
NumeroPers
NomVille NomPers
NbreHabitants

Ville
Dpartement

NumeroVille est le champ identifiant de la table VILLE. On la dot dune cl primaire.
NumeroPers est le champ identifiant de la table PERSONNE. On la dot dune cl primaire.
Le champ Ville est la cl trangre correspondant la cl primaire NumeroVille.

Lapplication de lintgrit rfrentielle sur la relation empche lajout dun numro de
ville dans le champ Ville, ds lors que ce numro nexiste pas dans le champ NumeroVille.
Par ailleurs, le champ NoVille tant de type NumroAuto, le champ correspondant Ville
ne peut pas tre de type Texte. Cela serait contraire aux rgles de lintgrit rfrentielle
(mme type de donnes des champs correspondants, lexception dun champ type NumroAuto qui doit
correspondre avec un champ de type Numrique).

COURS BARDON - ACCESS 2010 / CHAPITRE 6
63
Appliquer lintgrit rfrentielle

Pour appliquer lintgrit rfrentielle sur une relation, procdez ainsi :
- Fermer les deux tables lies par la relation (clic droit sur longlet de la table
fermer > Fermer).
- Affichez la fentre Relations : longlet Outils de base de donnes , dans
le groupe Relations, activez le bouton Relations. Affichez les deux tables lies
par la relation.
Ne pas confondre une table ouverte (elle affiche un onglet portant son nom) et une table affiche
dans la fentre de cration de la requte. Louverture et cet affichage sont indpendants.
- Affichez la fentre Modifier des relations : longlet Crer des Outils de
relation , dans le groupe Outils, activez le bouton Modifier des relations , ou
bien faites un clic droit sur la ligne de la relation > Modifier une relation.
Cochez la case permettant dappliquer lintgrit rfrentielle (la premire case).
Validez.
Si aucun message derreur napparait alors, cela indique que la relation respecte les
critres dintgrit rfrentielle.
Sinon, prenez connaissance du message qui saffiche. Cliquez sur OK, fermez la fentre
Modifier des relations et effectuez les modifications ncessaires pour mettre la relation en
conformit avec les rgles de lintgrit rfrentielle. Puis essayez nouveau de lui appliquer
lintgrit rfrentielle.
Lintgrit rfrentielle tant applique la relation, les cts un ou plusieurs sont
indiqus respectivement par le chiffre 1 ou par le symbole .

Deux options complmentaires : Mises jour en cascade et Effacements en
cascade

Seulement aprs avoir activ loption Intgrit rfrentielle , en ayant coch la case
correspondante dans la fentre Modifier des relations (cf. prcdent), on dispose de deux
autres options, qui sont proposes juste en-dessous :
- Mettre jour en cascade les enregistrements correspondants
- Effacer en cascade les enregistrements correspondants .
Ces deux dernires options ne pourront sappliquer la relation que si lintgrit
rfrentielle est elle-mme applique.

- Mettre jour en cascade les enregistrements correspondants

En gnral, on coche cette option, bien quelle soit peu utile.
Si on active cette option : la modification dune valeur du champ ct 1, usuellement cl
primaire, entranera la mme modification de valeur dans le champ correspondant, ct ,
usuellement cl trangre.
Cette option sert peu : on modifie rarement les valeurs dune cl primaire.
La cl primaire est souvent de type NumroAuto, or toute modification de valeur est
impossible dans ce type de champ.






COURS BARDON - ACCESS 2010 / CHAPITRE 6
64
Exemple

ETAT VILLE
NomEtat
1
NumroVille
Continent NomVille

NomEtat

Supposons quon ait appliqu cette relation lintgrit rfrentielle, ainsi que la
mise jour en cascade .
Si on modifie la valeur Zimbawe du champ NomEtat de la table ETAT, pour lcrire
Zimbabwe , elle sera modifie en consquence dans le champ analogue de la table VILLE.

- Effacer en cascade les enregistrements correspondants

En gnral, on ne coche pas cette option, du fait de son potentiel destructeur.
Si on active cette option : la suppression dun enregistrement, donc en particulier de la
valeur de son champ ct un, entranera la suppression des enregistrements ayant cette valeur
dans la cl ct plusieurs .
La suppression des enregistrements peut elle-mme provoquer la suppression dautres
enregistrements, par le mme processus. Et ainsi de suite.

Il convient donc dtre prudent dans lapplication de cette option, dautant plus si la base
comporte de nombreuses tables relies. Elle risque de faire perdre de faon inattendue nombre
denregistrements. Leffet en chane dune suppression en cascade doit tre examin en dtail
avant dtre appliqu.

Exemple

Dans lexemple prcdent, si on supprime un nom dEtat, toutes les villes de la table
VILLE situes dans cet Etat seront effaces. Supposons quen supprimant Venezuela, on efface
les villes ayant les valeurs de NumroVille 3, 9 et 17.
Si une autre table de la base, par exemple la table CLIENT, a comme champ
correspondant NumroVille, les enregistrements de cette troisime table dont les valeurs de
NoVille sont 3, 9 et 17 sont galement effacs.
La continuation du processus peut continuer provoquer leffacement en chane
dautres enregistrements.

ETAT VILLE CLIENT
NomEtat
1
NumroVille
1
NoClient
1

Continent NomVille NomClient

NomEtat Tlphone (etc.)


NoVille






COURS BARDON - ACCESS 2010 / CHAPITRE 7
65
CHAPITRE 7 TABLES ET ENREGISTREMENTS,
EXEMPLES



Dans les exemples des chapitres suivants, nous utiliserons souvent les tables PEINTRE,
TABLEAU et MUSEE.
Crez les tables. Attribuez une cl primaire aux champs identifiants ( 1).
Crez les relations. Appliquez chacune lintgrit rfrentielle ( 1).
Puis saisissez les enregistrements ( 2)
Vous pourrez ainsi vrifier les rsultats des requtes proposes en exemples, galement
crer des formulaires et des tats partir de ces tables ou partir de requtes utilisant des
champs de ces tables.

1. STRUCTURES ET RELATIONS DES TABLES PRISES EN EXEMPLES


Les tables sont ainsi affiches dans la fentre Relations :

PEINTRE TABLEAU MUSEE
NoPeintre
1
NoTableau
1
NoMusee
NomPeintre NomTab NomMusee
PrenomPeintre Bois/Toile Ville
Nationalite DateTab NbVisiteurs
AnneeNaissance

NoPeintre
AnneeDeces NoMusee



Pour chaque muse, le champ NbVisiteurs a en valeur le nombre de visiteurs par an, indiqu en millions.

Communment, on attribue le type NumroAuto au champ identifiant dune table. Pour
que nous ayons les mmes valeurs, nous vous proposons dattribuer ici le type Numrique aux
champs NoPeintre, NoTableau et NoMusee.

Les champs AnneeNaissance, AnneeDeces et DateTab sont de type Numrique. Pour
chacun, slectionnez Entier en proprit Taille du champ et tapez 0000 en Masque de
saisie (pour que la valeur de ce champ ne puisse tre quune saisie de quatre chiffres).

Champ Bois/Toile : saisissez toile en Valeur par dfaut .

Champs NomPeintre, PrenomPeintre, Nationalit, NomMusee, Ville : saisissez 20 en
Taille du champ .

Champ NomTab : saisissez 50 en Taille du champ .

- Listes de choix

Crez deux listes de choix, lune sur le champ Nationalite, lautre sur le champ
Bois/Toile (cf. chapitre 5 3 Liste de choix cre avec des valeurs entres expressment ) :
COURS BARDON - ACCESS 2010 / CHAPITRE 7
66
Pour crer la liste de choix sur le champ Nationalite :
- Affichez la table PEINTRE en mode Cration.
- En Type de donnes de ce champ, slectionnez Assistant liste de choix .
- Dans la fentre de lAssistant, cochez Je taperai les valeurs souhaites .
- Tapez sur une colonne les valeurs : allemand, anglais, belge, espagnol,
franais, italien, nerlandais, et attribuez la valeur Non la proprit Limiter
la liste (onglet Liste de choix ), afin dautoriser la saisie de valeurs hors
liste.
Sauf exception (par exemple, mot dont lorthographe prte erreur), il est inutile dinclure
dans une liste de choix des valeurs rarement saisies. Cela permet dallger la liste, ce qui rend
la saisie plus rapide.
- Validez.

Procdez de mme pour crer la liste de choix sur le champ Bois/Toile, en ne saisissant
que la valeur bois, la valeur toile tant la valeur par dfaut.


2. ENREGISTREMENTS DES TABLES PRISES EN EXEMPLES

Voici les enregistrements que nous vous proposons de saisir dans chacune des tables :

Table PEINTRE :

NoPeintre NomPeintre PrenomPeintre Nationalite AnneeNaissance AnneeDeces
1 Van Eyck Jan nerlandais 1390 1441
2 Botticelli italien 1445 1510
3 De Vinci Lonard italien 1452 1519
4 Raphal italien 1483 1520
5 Vronse italien 1528 1588
6 Bosch Jrme belge 1453 1516
7 Bruegel Pieter belge 1525 1569
8 Drer Albrecht allemand 1471 1528
9 Greco grec 1541 1614
10 Caravage italien 1570 1610
11 Hals Frans belge 1581 1666
12 Vermeer Johannes nerlandais 1632 1675
13 Fragonard Jean Honor franais 1732 1806
14 Gricault Thodore franais 1791 1824
15 Turner William anglais 1775 1851
16 Monet Claude franais 1840 1926
17 Renoir Auguste franais 1841 1919
18 Van Gogh Vincent nerlandais 1853 1890
19 Picasso Pablo espagnol 1881 1973
20 Klee Paul suisse 1879 1940

COURS BARDON - ACCESS 2010 / CHAPITRE 7
67
Table TABLEAU :

NoTableau NomTab Bois/Toile DateTab NoPeintre NoMusee
100 La Vierge au chancelier bois 1435 1 12
101 Les Epoux Arnolfini bois 1434 1 15
102 Le Printemps bois 1478 2 18
103 La Joconde bois 1507 3 12
104 La Belle Jardinire bois 1507 4 12
105 Les noces de Cana toile 1563 5 12
106 Le Jardin des dlices bois 1505 6 20
107 Les chasseurs dans la neige bois 1565 7 23
108 Jeux d'enfants bois 1559 7 23
109 Autoportrait bois 1498 8 20
110 Portrait d'un gentilhomme toile 1590 9 20
111 Bachus adolescent toile 1594 10 18
112 La Bohmienne bois 1630 11 12
113 Le Bouffon au luth bois 1625 11 12
114 L'Atelier toile 1665 12 23
115 Jeune fille lisant toile 1776 13 25
116 Le Verrou toile 1778 13 20
117 Le Radeau de la Mduse toile 1819 14 20
118 Le Derby d'Epsom toile 1820 14 20
119 Le Four pltre toile 1823 14 20
120 Dernier retour () toile 1838 15 15
121 Rgates Argenteuil toile 1872 16 13
122 Chemin montant () toile 1877 17 13
123 La Chambre de Van Gogh toile 1889 18 13
124 L'Eglise d'Auvers-sur-Oise toile 1890 18 13
125 Guernica toile 1937 19 20


Table MUSEE :

NoMusee NomMusee Ville NbVisiteurs
12 Louvre Paris 9
13 Orsay Paris 3
15 National Gallery Londres 8
18 Offices Florence 3
20 Prado Madrid 4
23 Kunsthistorisches Vienne 1
25 National Gallery Washington 4

COURS BARDON - ACCESS 2010 / CHAPITRE 8
68
CHAPITRE 8 LES REQUETES : INTRODUCTION



Comme lindique son nom, une requte sur une base de donnes est une demande
concernant cette base. Cest une demande dinformation ou de modification.
Une fois enregistre, une requte devient un objet de la base.
Une requte peut porter sur une ou plusieurs tables, y compris les tables rsultats de
requtes prcdentes.
En thorie, pour crer une requte sur deux tables, il nest pas ncessaire que celles-ci soient relies. En
pratique, les relations savrent trs utiles, permettant de voir lagencement des tables dans la base, les champs
correspondants, galement dactiver des jointures automatiques en mode Cration de requte (cf. chapitre 10, 7
Cration automatique de jointures ).


1. REQUETES SELECTION ET REQUETES ACTION

On ralise des requtes principalement pour slectionner des donnes. Sans prcision, le
mot requte sous-entend une requte de slection.
Il est toutefois possible de modifier des lments dune base avec une requte action,
mme si on utilise plutt gnralement pour cela les mthodes prcdemment tudies.


Requtes slection

Une requte slection permet dinterroger la base de donnes afin dobtenir les
informations souhaites. Elle ne modifie aucunement les donnes de la base.
Une requte slection permet de slectionner, trier et afficher des donnes. Elle permet
galement deffectuer des calculs sur les donnes (exemples : nombre de valeurs dun champ,
somme de ses valeurs).

Lexcution dune requte de slection aboutit laffichage dune table en mode Feuille
de donnes. On nomme cette table la table rsultat , ou plus simplement le rsultat de la
requte. On appelle souvent requte ce qui est en fait le rsultat de la requte.
Si les donnes de la base changent, la requte prend en compte dans son rsultat les
modifications qui ont t apportes.
Une table rsultat est temporaire. Elle est affiche lexcution de la requte, puis
supprime la fermeture de la requte. Libre ensuite dexcuter nouveau la requte pour
retrouver le rsultat, ou encore de crer une table partir de ce rsultat (cf. chapitre 12 1).

On peut baser une requte, un formulaire ou un tat sur une requte de slection. Ainsi,
au lieu dutiliser les donnes brutes dune table pour crer ce nouvel objet, on se sert du
rsultat dune requte pralablement cre.






COURS BARDON - ACCESS 2010 / CHAPITRE 8
69

Exemples de requtes de slection

Code SQL dune requte portant sur une table :

select Nom
from AMI
where Ville = "Paris" ;

Cette requte affiche les noms des amis prsents dans la table AMI et qui habitent Paris.

Code SQL dune requte portant sur deux tables :

select DateFacture, MontantFacture
from CLIENT, FACTURE
where CLIENT.NumClient = FACTURE.NumClient
and CLIENT.NumClient = 82 ;

Lexpression TABLE.Champ dsigne le Champ de la TABLE. Exemple : CLIENT.NumClient dsigne le champ
NumClient qui appartient la table CLIENT.
Cette requte porte sur les deux tables CLIENT et FACTURE, elles ont NumClient en
champs correspondants.
Le rsultat affiche les dates et les montants des factures adresses au client rfrenc
numro 82 (on suppose que, pour chaque client, il ne peut y avoir quune seule facture par
jour).

Le langage SQL des requtes de slection est tudi au chapitre 11 REQUETE DE
SELECTION EN MODE SQL.


Requtes action

Beaucoup moins utilise que la requte slection, une requte action ajoute, modifie ou
supprime des lments de la base.
Une requte action peut :
- Soit ajouter, modifier ou supprimer des enregistrements
- Soit crer, modifier ou supprimer une table.
Les requtes action font lobjet du chapitre 12 LES REQUETES ACTION.


2. LASSISTANT, LE MODE CREATION ET LE MODE SQL

On peut crer une requte slection :
- Soit avec lAssistant Requte,
- soit en mode Cration,
- soit en mode SQL.
On ne peut en revanche crer une requte action quen mode Cration ou en mode SQL.

Dune faon comme dune autre, la requte sera toujours gnre en langage SQL avant
dtre excute.
COURS BARDON - ACCESS 2010 / CHAPITRE 8
70
La requte ayant t enregistre, tant donc objet de la base, on peut afficher son code
en SQL, galement afficher et utiliser sa table rsultat.


Cration dune requte de slection avec lAssistant Requte

LAssistant Requte est une mthode qui permet dlaborer une requte de slection, en
tant guid tape aprs tape. A chaque tape, on renseigne la fentre correspondante.
Avec cette mthode, on ne peut que crer une nouvelle requte, lAssistant nest en effet
pas utilisable pour modifier une requte existante (il renvoie alors au mode Cration).
LAssistant Requte permet de raliser plusieurs types de requtes. Cest la mthode la
moins puissante des trois. Les possibilits de slection des enregistrements y sont en effet trs
limites.
La cration dune requte de slection avec lAssistant Requte fait lobjet du chapitre 9.


Cration dune requte en mode Cration

En mode Cration, on labore une requte de slection principalement en renseignant
une grille de saisie. On y indique notamment les champs utiliss, les critres et les tris
souhaits.
Cest la mthode de cration la plus communment utilise. Elle permet de crer et de
modifier une majorit de requtes.
La cration dune requte en mode Cration fait lobjet du chapitre 10.


Cration dune requte en mode SQL

SQL est le sigle de Structured Query Language, qui signifie langage de requte
structure.
Comme son nom lindique, ce langage, apparu dans les annes 1990, a t spcialement
conu pour la cration de requtes.
Cre une requte en mode SQL consiste crire directement la requte dans ce
langage. Dans la zone de saisie prvue pour cela, on tape le code de la requte.
Il sagit de la mthode la plus puissante, la plus cote par les informaticiens, celle qui
permet dcrire les requtes les plus labores.
Connatre le code SQL permet non seulement dcrire directement les requtes, mais
aussi danalyser celles qui ont t enregistres, et si ncessaire de les modifier. Nous vous
conseillons de connatre au moins les rudiments de ce langage simple, utilisant peu
dinstructions.
La cration dune requte en mode SQL fait lobjet du chapitre 11.



COURS BARDON - ACCESS 2010 / CHAPITRE 9
71
CHAPITRE 9 - REQUETE DE SELECTION
AVEC UN ASSISTANT



Les quatre Assistants

Access 2010 met notre disposition quatre Assistants, en fonction du type de requte
crer :
Requte simple : tous les enregistrements sont pris en compte dans le rsultat
de la requte. Dans une table, on choisit les champs afficher. Des calculs relatifs
un champ spcifi peuvent tre effectus sur les enregistrements. Ce type de
requte est tudi au 1 de ce chapitre.
Requte analyse croise : les champs dune table peuvent tre positionns
comme dans une feuille de calcul, en ligne ou en colonne. Des calculs relatifs un
champ spcifi sont effectus aux intersections ligne/colonne, ventuellement
galement sur les valeurs dune ligne. Ce type de requte est tudi au 2.
Requte trouver les doublons : la table rsultat de la requte affiche les
enregistrements ayant des doublons (cest--dire des valeurs identiques) dans un
ou plusieurs champs spcifis. On choisit les champs qui apparaitront dans le
rsultat. Ce type de requte est tudi au 3.
Requte de non correspondance : le rsultat de la requte affiche les
enregistrements dune table auxquels il nest pas fait rfrence dans une autre
table. Ce type de requte est tudi au 4.

Quelques prcisions pralables valables pour tous les types de requtes

LAssistant dAccess guide llaboration dune requte. Elle seffectue en plusieurs
tapes. Chaque fentre indique ce que lon doit faire, en donnant ventuellement des
explications.

Avant dafficher lAssistant, fermez les tables concernes par la requte crer (pour
fermer une table : faites un clic droit sur son onglet > Fermer). Cest souvent ncessaire pour
lexcution de la requte.

Pour raliser une requte, on peut se servir de tables, ou de rsultats de requtes
prcdentes. Cliquez sur lune des cases cocher, afin dafficher au choix tables, requtes (en
fait ce sont les tables rsultats), ou les deux.

Suite la slection dune table, lAssistant affiche une fentre dans laquelle on choisit
les champs de cette table, en utilisant les boutons suivants :
> Le champ slectionn gauche passe droite
>> Tous les champs de gauche passent droite
< Le champ slectionn droite passe gauche
<< Tous les champs de droite passent gauche.
En somme, ces symboles savrent tout fait logiques dans leurs effets respectifs.
Plus rapidement, on peut faire passer un champ de gauche droite en double-cliquant
sur son nom.
COURS BARDON - ACCESS 2010 / CHAPITRE 9
72
Titre dune requte : tapez un titre qui permette de retrouver aisment la requte.

La dernire fentre de lAssistant propose toujours :
- Soit dafficher le rsultat de la requte. Par dfaut, la case correspondant cette
option est coche. La table rsultat apparatra en mode Feuille de donnes.
- Soit de modifier la requte. La requte sera affiche en mode Cration pour tre
modifie (cf. chapitre 10 - REQUETE DE SELECTION EN MODE CREATION).

Affichage du rsultat dune requte

La table rsultat dune requte saffiche toujours en mode Feuille de donnes.
Aprs avoir activ le bouton Terminer de la dernire fentre de lAssistant, le
rsultat de la requte juste cre saffiche en mode Feuille de donnes.
Si vous souhaitez afficher nouveau la table rsultat dune requte :
- Double-cliquez sur le nom de la requte dans le Volet de navigation (la gestion
de ce Volet est traite au chapitre 1 6).
- Ou bien : clic droit sur son nom > Ouvrir.
Remarque : en mode Feuille de donnes, ouvrir ou excuter une requte revient au mme. On
obtient la table rsultat de la requte, affiche en mode Feuille de donnes.

Affichage de la fentre Nouvelle requte de lAssistant

Go ! Pour crer une requte avec un Assistant, commencez par afficher la fentre
Nouvelle requte : longlet Crer, dans le groupe Macros et code , activez le bouton
Assistant Requte .
Tables utilises dans les exemples : nous utiliserons les tables dfinies au chapitre 7.

1. REQUETE SIMPLE AVEC UN ASSISTANT

Dans la fentre Nouvelle requte , double-cliquez sur Assistant Requte simple .

Affichage des valeurs des champs slectionns

Choisissez le nom de la table, puis les noms des champs dont vous souhaitez afficher les
valeurs.
Si parmi les champs slectionns, lun est de type Numrique (sans tre cl primaire),
une fentre offre de choisir entre une requte Dtaille ou une Synthse . Choisissez la
requte dtaille.

Exemple
Affichez les noms, prnoms et annes de naissance des peintres de la table PEINTRE.

Ouvrez la fentre de lAssistant Requte simple .
Dans la zone de saisie du haut, choisissez la table PEINTRE.
Dans la zone de saisie du bas, affichez droite les champs NomPeintre, PrenomPeintre
et AnneeNaissance.
Dans la fentre suivante, gardez loption par dfaut : une requte dtaille.
Comme titre de la requte, vous pouvez saisir peintre-nom-prenom.
COURS BARDON - ACCESS 2010 / CHAPITRE 9
73
Louverture de la requte permet dafficher la table rsultat en mode Feuille de
donnes.

Calculs et regroupements

Si lun des champs slectionns est de type Numrique (sans tre cl primaire), la
requte peut effectuer calculs et regroupements, ce que lAssistant appelle Synthse .
Les Options de synthse permettent deffectuer sur les valeurs dun champ dfini,
une ou plusieurs des quatre oprations suivantes : Somme, Moyenne, Minimum ou
Maximum.
Si on coche la case proposant de compter les enregistrements, la table rsultat affiche
galement le nombre denregistrements de chaque regroupement sur lequel porte lopration.

Exemple

A partir de la table MUSEE, calculons la moyenne des nombres annuels de visiteurs,
ainsi que le maximum de nombres de visites annuelles. Affichons galement le nombre de
muses.

Dans la fentre de lAssistant, slectionnez la table MUSEE, puis le champ NbVisiteurs.
Cochez la case Synthse , puis activez le bouton Options de synthse .
Cochez les cases Moyenne et Maximum, ainsi que la case Compter les
enregistrements . Validez.
Cliquez sur Terminer .

On obtient le rsultat suivant :

Moyenne De NbVisiteurs Max De NbVisiteurs Compte De MUSEE
4,57 9 7

Vous pouvez doter les champs dune lgende. Pour cela, il faut dabord passer en mode
Cration (cf. chapitre 10 6 Les proprits des champs dans la table rsultat ).
Dans cet exemple, le regroupement porte sur tous les enregistrements.
La requte permet de savoir que : il y a en moyenne 4,57 millions de visiteurs par an. Le
muse qui a le plus de visiteurs par an en affiche 9 millions. La table MUSEE comporte 7
enregistrements de muses.

Exemple avec regroupements

Considrons les tables PERSONNE et VERSEMENT en mode Feuille de donnes :

NumPers Nom Prenom
1 Martin Pierre
2 Rivire Paul
3 Texier Jrmie


Elles sont relies, et la relation sappuie sur les champs correspondants des deux tables
NumPers.
NoVersement MontantVerse NumPers
1 10,00 1
2 20,00 1
3 30,00 1
4 400,00 2
5 500,00 2
COURS BARDON - ACCESS 2010 / CHAPITRE 9
74
Faisons une requte avec lAssistant pour afficher le montant touch par chaque
personne (parmi celles qui ont reu un versement), et le nombre de versements pour chacune.
Dans la table VERSEMENT, slectionnez le champ MontantVerse. Sur la mme fentre :
dans la table PERSONNE, slectionnez les champs Nom et Prenom.
En Options de synthse , sur le champ MontantVerse, choisissez Somme. Cochez la
case Compter les enregistrements . Validez. Cliquez sur Terminer .

On obtient le rsultat:

Nom Prenom
Somme De
MontantVerse
Compte De
Versement
Martin Pierre 60,00 3
Rivire Paul 900,00 2

Vous pouvez doter les champs dune lgende. Pour cela, il faut dabord passer en mode
Cration (cf. chapitre10 6 Les proprits des champs dans la table rsultat ).


2. REQUETE ANALYSE CROISEE AVEC UN ASSISTANT

On dsigne des champs pour tre en-tte de ligne ou en-tte de colonne, ainsi quun
champ sur lequel porteront les calculs (exemples : maximum, somme, moyenne, compte)
effectus aux intersections ligne/colonne. Des calculs peuvent galement tre effectus sur les
valeurs de chaque ligne. La table rsultat de la requte ressemble une feuille de calcul.

Exemple
Reprenons la mme table PERSONNE que dans lexemple prcdent.
On suppose maintenant quon peut effectuer plusieurs versements une mme personne
le mme jour. Il est donc ncessaire dajouter la table VERSEMENT une nouvelle colonne,
quon appellera DateVerse.

Voici les deux tables PERSONNE et VERSEMENT, affiches en mode Feuille de donnes :

NumPers Nom Prenom
1 Martin Pierre
2 Rivire Paul
3 Texier Jrmie







Ralisons une requte Analyse croise afin dafficher pour chaque personne le
montant des sommes reues, par date de versement, ainsi que le montant total reu.

NoVersement DateVerse MontantVerse NumPers
1 04/01/2010 20,00 1
2 04/01/2010 40,00 3
3 04/01/2010 30,00 1
4 25/05/2010 100,00 2
5 25/05/2010 500,00 3
6 12/08/2010 60,00 2
7 12/08/2010 200,00 3
8 12/08/2010 10,00 3
COURS BARDON - ACCESS 2010 / CHAPITRE 9
75
Pour cette requte, on a besoin des champs des deux tables. Ne pouvant slectionner
dans la fentre de lAssistant que les champs dune seule table ou dune seule requte,
commenons par crer une requte affichant les champs des deux tables : ouvrez lAssistant
Requte simple , et slectionnez les champs des deux tables en utilisant >> (on
slectionnera plus loin les champs souhaits pour la nouvelle requte). Choisissez
requte Dtaille . Vous pouvez titrer cette requte intermdiaire
Personne_Versement .

Ouvrez lAssistant Requte analyse croise . Cliquez sur la case Requtes , puis
slectionnez la requte prcdente Personne_Versement . Activez le bouton Suivant .
Choisissez comme en-tte de ligne les champs Nom et Prenom. Activez Suivant .
Choisissez comme en-tte de colonne le champ DateVerse. Activez Suivant .
Choisissez un regroupement par Date. Activez Suivant .
Choisissez en intersection ligne/colonne deffectuer des calculs sur le champ
MontantVerse, et en fonction, choisissez Somme. Laissez cocher la case Inclure les sommes
des lignes .
Activez Suivant . Vous pouvez titrer la requte Versement_par_date . Cliquez sur
le bouton Terminer.

On obtient le rsultat :

Nom Prenom
Total de
MontantVerse
04/01/2010 12/08/2010 25/05/2010
Martin Pierre 50 50
Rivire Paul 160 60 100
Texier Jrmie 750 40 210 500


3. REQUETE TROUVER LES DOUBLONS AVEC UN ASSISTANT

Une telle requte permet de reprer des ensembles de valeurs de champ(s) qui sont
identiques, et dafficher des champs supplmentaires si souhait.
La localisation des doublons peut soprer sur plusieurs champs (exemple : dans une
table PERSONNE, on peut rechercher les enregistrements de personnes ayant mme nom et
mme prnom, voire aussi le mme ge).

Exemple
Affichons les noms des muses de la table MUSEE, qui sont situs dans une mme ville.

Slectionnez la table MUSEE, puis le champ Ville. On recherchera les doublons sur ce
seul champ. En champ supplmentaire, slectionnez le champ NomMusee.
Affichez les rsultats.
Le champ Ville comporte un seul doublon : il comprend deux fois la valeur Paris.
On obtient le rsultat :

Ville NomMusee
Paris Orsay
Paris Louvre
COURS BARDON - ACCESS 2010 / CHAPITRE 9
76
4. REQUETE DE NON CORRESPONDANCE AVEC UN ASSISTANT

Une telle requte permet de reprer les enregistrements dune table, auxquels une autre
table ne fait pas rfrence.

Exemple
Ralisons la requte affichant les peintres cits dans la table PEINTRE, mais qui nont
aucun tableau apparaissant dans la table TABLEAU.

Slectionnez la table PEINTRE, puis la table TABLEAU.
Slectionnez le champ NoPeintre gauche ainsi qu droite, afin que les valeurs de ce
champ puissent tre compares dans les deux tables.
Slectionnez les champs afficher NoPeintre, NomPeintre et PrenomPeintre. Si aucun
champ nest ici slectionn, tous les champs de la table PEINTRE seront affichs.

On obtient le rsultat :

NoPeintre NomPeintre PrenomPeintre
20 Klee Paul

Seul le peintre Paul Klee fait partie de la table PEINTRE, sans avoir de tableau dans la
table TABLEAU.
COURS BARDON - ACCESS 2010 / CHAPITRE 10
77
CHAPITRE 10 - REQUETE DE SELECTION
EN MODE CREATION



Beaucoup plus puissante que la prcdente, il sagit de la mthode la plus utilise pour
crer ou modifier une requte.
Bien quon ne dispose pas avec cette mthode dAssistant pour nous guider,
llaboration dune requte est simple.
Elle consiste principalement :
- A afficher les tables (ou les tables rsultats de requtes prcdentes) utilises
dans la requte.
- A renseigner la grille de cration , notamment en prcisant les critres de
slection souhaits.


INDICATIONS PRELIMINAIRES

Fermer les tables

Avant dexcuter la requte, fermez les tables quelle concerne (pour fermer une table :
faites un clic droit sur son onglet > Fermer). Cest ncessaire pour lexcution de nombre de
requtes.

Passage du mode Cration au mode Feuille de donnes, et inversement

Dans la mesure o la requte est cre en mode Cration, et que son rsultat est affich
en mode Feuille de donnes, il est important de savoir passer dun mode lautre.
Il existe plusieurs mthodes pour passer dun mode daffichage lautre :

- Avec les icnes de la barre dtat
Sur la barre dtat (en bas de lcran), droite, cliquez sur :
- Le premier bouton, dont licne reprsente une feuille de donnes :
passage en Mode Feuille de Donnes.
- Ou bien sur le bouton dont licne comporte une querre : passage en
Mode Cration.

- Avec le ruban
Ouvrez longlet Accueil > cliquez sur la partie suprieure du bouton Affichage.
On retrouve les icnes prcdentes : la reprsentation dune feuille de donnes pour le
Mode Feuille de donnes et celle dune querre pour le Mode Cration.

- Clic droit sur longlet de la requte
Faites un clic droit sur longlet de la requte > choisissez le Mode souhait.

Excution dune requte affiche en mode Cration

Le rsultat dune requte saffiche toujours en mode Feuille de donnes.
COURS BARDON - ACCESS 2010 / CHAPITRE 10
78
La requte ayant t labore en mode Cration, il y a plusieurs mthodes pour
lexcuter et afficher son rsultat :
- A longlet Crer des Outils de requte , cliquez sur lun des deux boutons du
groupe Rsultats :
o Soit sur le bouton Excuter, dont licne est un point dexclamation
rouge
o Soit sur le bouton Affichage, dont licne symbolise une feuille de
donnes
Lorsquil sagit dune requte daction, le bouton Affichage permet de visualiser le rsultat avant
dexcuter la requte. Do lexistence des deux boutons Affichage et Excuter.

- Ou bien vous pouvez passer en mode Feuille de donnes :
o Faites un clic droit sur longlet de la requte > Mode Feuille de donnes.
o Ou bien cliquez sur le premier bouton de la barre dtat (en bas de lcran),
dont licne reprsente une feuille de donnes.

Affichage limit de lignes dans la table rsultat

Sans modifier le rsultat de la requte, on peut nafficher que le nombre ou le
pourcentage denregistrements souhait.
La requte tant affiche en mode Cration, pour dfinir le nombre ou le pourcentage
denregistrements afficher : longlet Crer des Outils de requte , dans le groupe
Paramtrage de requte , cliquez sur le bouton Renvoyer . Par dfaut, Tout est
renvoy. Cliquez sur la valeur souhaite, ou bien saisissez un nombre ou un pourcentage
denregistrements afficher.

Enregistrer et fermer une requte

Pour enregistrer une requte : cliquez sur le bouton Enregistrer de la barre doutils
accs rapide (en haut de lcran). Ou bien : faites un clic droit sur longlet de la requte >
Enregistrer. Ou encore : ouvrez le menu Fichier > Enregistrer.

Pour fermer une requte : cliquez sur le bouton Fermer (croix situe droite de
longlet de la fentre de la requte), ou bien : faites un clic droit sur longlet de la requte >
Fermer.


1. FENETRE DELABORATION DUNE REQUETE EN MODE
CREATION

Go ! Pour crer une requte en mode Cration, commencez par afficher la fentre de la
requte, comportant la grille de cration : longlet Crer, dans le groupe Macros et code ,
activez le bouton Cration de requte .
La fentre dlaboration dune requte en mode Cration, ainsi que la fentre Afficher
la table apparaissent. Affichez la ou les tables utilises par la nouvelle requte (si ncessaire
vous pourrez ensuite les supprimer ou en ajouter dautres), puis fermez cette fentre.
Access nomme la nouvelle requte Requte1. Vous pouvez la renommer : faites un clic
droit sur son onglet > Enregistrer. Tapez le nom souhait.
La fentre dlaboration de la requte comprend :
COURS BARDON - ACCESS 2010 / CHAPITRE 10
79
- En haut, la zone daffichage des tables (ou des tables rsultats de requtes).
- En bas, la grille de cration. Llaboration de la requte consiste principalement
saisir des informations dans cette grille.
La fentre dlaboration de la requte en mode Cration tant ouverte, faire un clic droit
sur longlet portant le nom de la requte, ou sur la zone daffichage des tables, ou sur la grille
de saisie des informations permet dafficher une liste de commandes, relatives llment sur
lequel on a cliqu.

Tables utilises dans les exemples : nous utiliserons les tables dfinies au chapitre 7.


2. AFFICHAGE DES TABLES ET DES CHAMPS

Affichage des tables

Ne pas confondre une table ouverte (elle affiche un onglet portant son nom) et une table affiche dans la
fentre de cration de la requte. Louverture et cet affichage sont indpendants.
Naffichez que les tables ncessaires la requte. Mais affichez toutes celles quil faut :
on ne peut utiliser que les champs des tables affiches.

Pour afficher une table dans la partie suprieure de la fentre de la requte, on utilise la
fentre Afficher la table .
Concernant laffichage, la slection, le masquage ou le dplacement des tables, les
mthodes sont similaires celles appliques aux tables affiches dans la fentre Relations
(cf. chapitre 6 4 Gestion des tables ).
En rsum :
Pour ajouter une table, commencez par afficher la fentre Afficher la table : clic
droit sur larrire-plan de la fentre > Afficher la table. Double-cliquez sur le nom de la table
afficher.
Pour slectionner une table, cliquez sur son texte.
Pour masquer une table : faites un clic droit sur le texte de la table > Supprimer une
table.
Pour dplacer une table, cliquez-glissez sur la barre de son nom.
Pour largir ou rduire une table, cliquez-glissez sur lun de ses bords.

Champs utiliss dans la requte

- Saisie des champs

On saisit les noms des champs utiliss dans la requte la ligne Champs de la grille.
Si ncessaire, on peut saisir un mme champ sur plusieurs colonnes.

Il existe plusieurs mthodes pour saisir un champ, ou bien tous les champs :
- Cliquez dans une cellule de la ligne Champs , puis slectionnez un champ dans
le menu droulant . Sont proposs les champs des tables affiches.
Si on choisit table.*, on slectionne tous les champs de la table.
- Ou bien : partir de la table affiche, cliquez-glissez sur le nom du champ jusqu
une cellule de la ligne Champs .
COURS BARDON - ACCESS 2010 / CHAPITRE 10
80
En double-cliquant sur le nom dun champ dune table, il est saisi dans la premire
colonne vide. Si on double-clique sur lastrisque * de la table, on slectionne tous
les champs (on obtient le mme rsultat que le choix prcdent table.*).

On peut galement saisir une slection de plusieurs champs :
- En slectionnant plusieurs champs dans une table affiche : si les champs sont
juxtaposs, cliquez sur le premier, puis appuyez sur la touche Maj (Shift) et
cliquez sur le dernier. Sinon, cliquez sur le premier, puis appuyez sur la touche
Ctrl et cliquez sur les autres champs slectionner ;
- Puis en dplaant la slection dans la cellule souhaite de la grille.

Aprs validation de la saisie (il suffit de cliquer dans une autre cellule), le nom de la
table do vient le champ saffiche en-dessous, dans la ligne Table .
On peut afficher ou masquer cette ligne en activant le bouton Noms des tables , situ
longlet Crer des Outils de requte , dans le groupe Afficher/Masquer.

- Affichage des champs dans le rsultat de la requte

Un champ utilis dans une requte peut tre affich ou ne pas tre affich dans la table
rsultat de la requte.

Exemple
Considrons la requte portant sur la table PEINTRE (cf. chapitre 7), dont le rsultat
affiche uniquement les champs noms et prnoms des peintres ayant les numros 7 et 18.
La requte utilise les trois champs : NoPeintre, NomPeintre et PrenomPeintre.
Elle affiche seulement les champs NomPeintre et PrenomPeintre.

Si vous souhaitez que les valeurs dun champ apparaissent dans le rsultat dune
requte, laissez coche la case de la ligne Afficher E correspondant ce champ (sinon,
cliquez dessus pour la dcocher).

- Gestion des colonnes de champs

Pour slectionner :
- Une colonne : cliquez sur la case den-tte (le pointeur devient une flche + ).
- Plusieurs colonnes juxtaposes : cliquez-glissez sur les cases den-tte des
colonnes. Ou bien : slectionnez une colonne, puis appuyez sur la touche Maj
(Shift) et slectionnez la dernire colonne.
On ne peut pas slectionner des colonnes non juxtaposes.

Pour changer lordre des colonnes :
- Slectionnez une colonne. Relchez le bouton de la souris ;
- Dplacez la colonne par cliqu-gliss sur son bord suprieur (le pointeur prend la
forme dune flche blanche ' ).

Pour insrer une colonne :
- Cliquez dans la colonne situe droite de celle qui sera cre (inutile de la
slectionner).
- A longlet Crer des Outils de requte , dans le groupe Paramtrage de la
requte , activez le bouton Insrer des colonnes .
COURS BARDON - ACCESS 2010 / CHAPITRE 10
81
Pour supprimer des colonnes :
Slectionnez-les, puis appuyez sur la touche Suppr.


3. TRI

Lapplication dun tri sur un champ permet dafficher les valeurs de ce champ en ordre
croissant ou dcroissant.
La grille de cration comporte une ligne Tri . En cliquant dans une cellule de cette
ligne, et en ouvrant le menu droulant , on peut choisir entre les options : Croissant,
Dcroissant ou (Non tri).
Exemple
Crons une requte affichant les noms des peintres par ordre alphabtique croissant.
Affichez le champ NomPeintre, puis cliquez dans la cellule Tri du champ et choisissez
loption Croissant.
Excutez la requte : longlet Crer des Outils de requte tant activ, cliquez sur le
point dexclamation rouge du groupe Rsultats.
Puis repassez en mode Cration de requte (en cliquant sur le bouton du groupe
Affichages).

On peut raliser une requte avec un ordre de tri portant sur plusieurs champs. Les
champs doivent appartenir des tables diffrentes.
Lordre de tri dun champ est prioritaire par rapport celui dun champ plac sa droite.
Exemple
On peut imaginer une requte qui affiche par ordre alphabtique croissant les noms des
peintres de la table PEINTRE. De plus, pour chaque peintre, le rsultat affiche par ordre
alphabtique croissant les noms des tableaux, issus de la table TABLEAU.


4. CRITERES

Lapplication dun critre permet de slectionner dans le rsultat de la requte les
enregistrements rpondant ce critre.
Zone de saisie des critres : on dfinit les critres la ligne Critres ou sur les lignes
suivantes (on peut sauter des lignes).

Exemple
Ralisons une requte naffichant en rsultat que les noms des peintres de nationalit
italienne.
Affichez la table PEINTRE. Slectionnez les champs NomPeintre et Nationalite. A la ligne
Critres du champ Nationalite, tapez italien. Ne laissez coche que la case du champ
NomPeintre. Excutez la requte.

Orthographe et syntaxe

La zone de dfinition des critres nayant ni menu droulant, ni case cocher, le critre
doit tre saisi la main , en respectant orthographe et rgles de syntaxe.

COURS BARDON - ACCESS 2010 / CHAPITRE 10
82
- Orthographe

La casse des lettres (majuscules ou minuscules) nest pas prise en compte. En revanche,
lorthographe est importante pour la reconnaissance des mots par Access.

Exemple
Reprenons lexemple prcdent. Si on tape italienne au lieu ditalien, Access ne
reconnatra pas la valeur du champ. Testez en excutant la nouvelle requte.
Pour quune valeur soit reconnue par Access, il est ncessaire de la saisir exactement
comme elle est crite dans la table affiche en mode Feuille de donnes.
En revanche, le langage SQL dans lequel est traduite la requte, ne reconnat pas la
casse des lettres. Dans lexemple prcdent, on peut crire indiffremment italien, Italien, ou
encore ITALIEN.

- Syntaxe

On tape un nombre sans symbole (exemples : sans , ni %).
On tape une date sous la forme jj/mm/aaaa (exemple : 12/09/1991).
On crit un critre sur un champ de type Oui/Non en utilisant lune des valeurs : Oui,
Non, Vrai, Faux, Actif ou Inactif.

Aprs validation de la saisie :
- Un texte est automatiquement entour de guillemets : texte
- Une date est automatiquement entoure de dises # : #12/09/1991#

Absence de valeur

Si un enregistrement na pas de valeur (valeur Null) sur le champ auquel est appliqu un
critre, lenregistrement nest pas slectionn.

Exemple
Ralisons la requte affichant les numros, noms et prnoms des peintres, dont le
prnom est diffrent de William.

Affichez la table PEINTRE. Slectionnez les champs NoPeintre, NomPeintre et
PrenomPeintre. A la ligne Afficher , laissez coches les cases des trois champs.
A la ligne Critres du champ PrenomPeintre, tapez <> William (il ne doit pas y
avoir despace entre le signe < et le signe >). Excutez la requte.
Remarque : les peintres de numros 2, 4, 5, 9 et 10 nayant pas de prnom affich dans
la table PEINTRE, ne figurent pas dans le rsultat de la requte.

Un critre ET un autre critre

Les critres sajoutent : on slectionne les enregistrements qui ont ce critre ET cet
autre critre ET ce 3
me
critre, etc. Plus on ajoute de critres, plus on est mme de
restreindre la slection des enregistrements.
Exemple : dans la table TABLEAU, le rsultat dune requte peut afficher les tableaux de
numro infrieur 115 ET de support bois ET raliss aprs 1500. Trois critres sont ici
ajouts. On les saisit sur une mme ligne de la zone de dfinition des critres. Peu importe
lordre des critres.
COURS BARDON - ACCESS 2010 / CHAPITRE 10
83
On peut ajouter des critres volont. A chaque nouveau critre ajout, on restreint, on
resserre lEtau de la slection. Plus on ajoute de critres, plus on est slectif.
On positionne (Etale) les critres qui sajoutent sur une mme ligne de la zone de saisie
des critres.

Exemple
Ralisons la requte slectionnant les peintres de nationalit italienne, ns avant 1600.
Seront affichs les noms des peintres et leur date de naissance.
Le mot ET est sous-entendu : on cherche les peintres de nationalit italienne ET ns
avant 1600. Les deux critres sajoutent, restreignant dautant la slection.

Affichez la table PEINTRE. Slectionnez les champs NomPeintre, Nationalite et
AnneeNaissance. A la ligne Afficher , dcochez la case du champ Nationalite.
Sur une ligne de la zone de saisie des critres, dans la colonne du champ Nationalite,
tapez italien.
Sur la mme ligne, dans la colonne du champ AnneeNaissance, tapez <1600.
Excutez la requte.

Reprenons lexemple. En plus des deux critres prcdents, ajoutez le critre : selon
lordre alphabtique, le nom du peintre doit commencer au moins par la lettre e.
Dfinissez les deux critres prcdents (peintres italiens, ns avant 1600).
Ajoutez le troisime critre sur la mme ligne, dans le champ NomPeintre. Tapez >d*.
Dans ce mme champ, vous pouvez galement appliquer un tri croissant. Excutez la
requte.

Un critre OU un autre critre

Les enregistrements sajoutent : on slectionne les enregistrements qui ont ce critre
OU cet autre critre Ou ce 3
me
critre, etc. Aprs slection des enregistrements sur la base
dun premier critre, plus on ajoute de critres, plus on est mme dlargir la slection.
Exemple : dans la table PEINTRE, le rsultat dune requte peut afficher les peintres
italiens OU franais OU ns aprs 1850. Trois critres sont ici appliqus. Peu importe leur
ordre. Le premier dfinit la slection, les autres largissent la slection.

On saisit les critres sur des lignes diffrentes de la zone de dfinition des critres, si
ncessaire en utilisant plusieurs colonnes du mme champ. Si ce champ doit tre affich dans
le rsultat, ne laffichez quune fois (une seule case coche).
Des critres concernant le mme champ peuvent galement tre taps dans la mme
cellule, espacs de loprateur OU.
On peut ajouter des critres volont. A chaque nouveau critre ajout, on Ouvre la
slection, on ouvre laccs dautres enregistrements.

Exemple
Ralisons la requte naffichant en rsultat que les noms des peintres de nationalit
nerlandaise, belge ou grecque. Il est sous-entendu : nerlandaise OU belge OU grecque.
Slectionnez les champs NomPeintre et Nationalite. Laissez leur case Afficher coche.
Sur une ligne de saisie de critres, dans le champ Nationalite, tapez : nerlandais ou
belge ou grec.
Excutez la requte.
COURS BARDON - ACCESS 2010 / CHAPITRE 10
84
On obtient le mme rsultat si, au lieu dcrire lexpression dans une seule cellule, on
crit les critres, dans la colonne du champ Nationalite, sur trois lignes diffrentes :
- Sur une ligne de saisie de critres, tapez nerlandais
- A la ligne suivante : tapez belge
- A la ligne en-dessous : tapez grec.
Excutez la requte.

Autre exemple

Ralisons la requte slectionnant les peintres de nationalit grecque ainsi que ceux ns
aprs 1800. La requte affichera les noms et anne de naissance des peintres.
Le ainsi que se traduit par un oprateur OU.
Slectionnez les champs NomPeintre, Nationalite et AnneeNaissance. Laissez coche
leur case Afficher.
A la ligne Critres du champ Nationalite, tapez grec.
A la ligne suivante du champ AnneeNaissance, tapez >1800. Excutez la requte.

Combinaison des critres ET et OU

On peut combiner volont des critres ET et des critres OU.

Exemple
Ralisons la requte affichant les noms, nationalits et anne de naissance des peintres :
- Italiens, ns avant 1500
- Belges ou grecs, ns avant 1600.

La grille de cration sera ainsi renseigne :

NomPeintre Nationalite AnneeNaissance Nationalite AnneeNaissance
E E E
= "italien" <1500
"belge" Ou "grec" <1600

On cherche (les peintres italiens ET ns avant 1500) OU (les peintres belges ou grecs
ET ns avant 1600), ce quon traduit ainsi dans la grille de cration de requte :
Les peintres italiens ET ns avant 1500 ont leurs critres dfinis sur une mme ligne.
On change de ligne pour signifier loprateur OU.
Les peintres (belges ou grecs) ET ns avant 1600 ont les critres galement dfinis sur
une mme ligne.
A la ligne Afficher , on ne laisse coches quune fois les cases des champs
Nationalite et AnneeNaissance.

Le Gnrateur dexpression

Pour dfinir un critre, on peut saider du Gnrateur dexpression dAccess 2010. Nous
lavons dj utilis au chapitre 5 G.
Pour afficher le Gnrateur dexpression :
- Cliquez dabord dans la cellule o vous souhaitez dfinir le critre.
COURS BARDON - ACCESS 2010 / CHAPITRE 10
85
- A longlet Crer des Outils de requte , dans le groupe Paramtrage de
requte , activez le bouton Gnrateur.

On labore lexpression du critre dans la zone situe en haut de la fentre.
Sous cette zone, sont disponibles des boutons frquemment utiliss, parmi lesquels ceux
des oprateurs Et et Ou.
On choisit (cliquez ou double-cliquez) dabord un lment dans la zone de gauche, puis
une catgorie dans la zone du milieu, enfin, dans la zone de droite, llment insrer dans le
critre.
Colonne de gauche, les lments marqus du signe + peuvent tre ouverts en double-
cliquant dessus (ils affichent alors le signe -). Ils sont referms en double-cliquant dessus.
Le premier bouton Annuler ferme la fentre du Gnrateur sans quil y ait validation.
Le second bouton Annuler permet deffacer toute la saisie dans la zone ddition.
Aprs validation de lexpression gnre, celle-ci apparat dans la cellule de la grille, o
on a pralablement plac le curseur.

- Oprateurs Entre, Comme et Pas

Les oprateurs Entre, Comme et Pas sont souvent utiliss.

Exemples

Vous pouvez utiliser le Gnrateur, ou crire directement lexpression sur une ligne de
saisie de critres, dans la colonne du champ concern.

Oprateur Entre
Les deux bornes sont incluses.
Ralisons une requte slectionnant les peintres dcds entre 1800 et 1900, en utilisant
le Gnrateur dexpression.
Cliquez sur une cellule situe sur une ligne de critres et dans la colonne du champ
AnneeDeces. Affichez le Gnrateur.
Dans la colonne de gauche, cliquez sur le dossier Oprateurs, puis dans la colonne de
droite, cliquez sur loprateur Entre.
Dans la zone de saisie de lexpression, remplacez les deux Expr par 1800 et 1900.
Validez. Excutez la requte.
(Il est plus simple dans cet exemple dcrire directement dans la cellule : entre 1800 et
1900)

Oprateur Comme
Ralisons une requte slectionnant le peintre Botticelli, dont on hsite sur
lorthographe du nom : sur une ligne de critres du champ NomPeintre, tapez : Comme bot*,
puis excutez la requte. Lastrisque peut remplacer plusieurs caractres.
Pour slectionner le peintre Fragonard, dont on hsite sur la dernire lettre (t ou d ?),
on peut taper : Fragonar ? Le point dinterrogation remplace un caractre.

Oprateur Pas
Ralisons une requte slectionnant les peintres ni allemand, ni franais, ni anglais.
Slectionnez les champs NomPeintre et Nationalite. Laissez coche leur case
Afficher .
COURS BARDON - ACCESS 2010 / CHAPITRE 10
86
Sur une ligne de dfinition des critres, dans la colonne du champ Nationalite, tapez :
pas allemand et pas franais et pas anglais. Peu importe la casse (majuscules ou minuscules)
et les espaces.


5. CALCULS EFFECTUES SUR LES DONNEES

Une requte peut renvoyer des calculs effectus sur les donnes. Exemples : somme,
moyenne, minimum, maximum, compte (cest--dire le nombre de valeurs).
Dans ce cas, le rsultat de la requte naffichera quun seul enregistrement, comprenant
les rsultats des calculs effectus.

On peut indiquer les oprations effectuer dans une nouvelle ligne Opration de la
grille de cration.
Pour afficher la ligne Opration :
- Faites un clic droit dans une quelconque colonne de champ > Totaux.
- Ou bien : longlet Crer des Outils de requte , dans le groupe
Afficher/Masquer, activez le bouton Totaux.
(Pour masquer la ligne Opration , cliquez nouveau sur le bouton Totaux)

Exemple
Sur la table MUSEE, ralisons les requtes renvoyant :
1) La moyenne du nombre de visiteurs des muses de Paris
2) Le nombre de muses de Paris.

1) Slectionnez le champ Ville. Sur une ligne de critres, tapez =Paris.
Slectionnez le champ NbVisiteurs.
Affichez la ligne Opration : clic droit dans le champ > Totaux.
Slectionnez Moyenne. Excutez la requte. Puis repassez en mode Cration
(activez le bouton du groupe Affichages).

2) Dans une deuxime colonne de champ NbVisiteurs, la ligne Opration ,
slectionnez Compte.

On obtient le rsultat :

Ville MoyenneDeNbVisiteurs CompteDeNbVisiteurs
Paris 6 2

Il ny a quun seul enregistrement.
On peut donner aux champs une autre lgende (voir paragraphe 6 juste aprs).


6. LES PROPRIETES DES CHAMPS DANS LA TABLE RESULTAT

On peut dfinir ou modifier certaines proprits dun champ affich dans le rsultat
dune requte. Les proprits proposes dpendent du type de champ.
COURS BARDON - ACCESS 2010 / CHAPITRE 10
87
Les nouvelles proprits ne sappliquent que dans le rsultat de la requte. Les
modifications apportes naffectent pas les proprits du champ dfinies dans la structure de
la table.

Exemples
On peut par exemple :
- Ajouter une description un champ. Elle apparaitra dans la barre dtat quand
on affichera le rsultat de la requte.
- Attribuer une lgende un champ. Cest particulirement utile quand des calculs
ont t effectus sur des donnes, et quAccess a attribu automatiquement un
nom au champ ainsi cr. Voir lexemple ci-dessous.
- Dfinir un masque de saisie : un formulaire sappuyant sur une requte, utilisera
par dfaut le masque de saisie dfini dans celle-ci. Si plusieurs formulaires
utilisent la requte, il est plus rapide de dfinir le masque de saisie lors de la
cration de la requte, plutt que de le dfinir dans chaque formulaire.

Les proprits des champs ont t dtailles au chapitre 5 2 PROPRIETES.

La dfinition ou la modification dune proprit dun champ utilis dans la requte,
seffectue dans la fentre Proprits relative au champ.
Procdez ainsi :
- Ouvrez la requte qui affiche ce champ, en mode Cration.
- Cliquez dans la colonne du champ.
- Affichez la fentre Proprits : longlet Crer, dans le groupe
Afficher/Masquer, activez le bouton Feuille de proprits . Ou bien : faites un
clic droit dans la colonne du champ > Proprits.

Exemple
Dans lexemple prcdent, dfinissons une lgende aux champs nomms
MoyenneDeNbVisiteurs et CompteDeNbVisiteurs.
La requte tant affiche en mode Cration, cliquez dans la premire colonne du champ
NbVisiteurs, contenant lopration Moyenne. Affichez la fentre Proprits : clic droit >
Proprits.
Dans cette fentre, la zone de saisie Lgende , tapez : Moyenne de visiteurs par an.
En procdant de mme, on peut lgender lautre champ : Nombre de visiteurs.


7. CREATION DUNE JOINTURE ENTRE DEUX TABLES

Une requte permet de slectionner des enregistrements composites , composs de
donnes issues de plusieurs tables.
Exemple
On souhaite crer une requte pour afficher les tableaux peints par Gricault (ceux qui
sont prsents dans la table TABLEAU).
La requte affichera le nom du peintre, son prnom, ainsi que les noms des tableaux et
leur date de ralisation.
Access ne peut connatre les noms des tableaux raliss par Gricault que par
lintermdiaire de la valeur de NoPeintre, nom des champs correspondants des deux tables
PEINTRE et TABLEAU.
COURS BARDON - ACCESS 2010 / CHAPITRE 10
88
Pour cela, il utilisera la jointure entre les deux tables, jointure qui sappuie sur les
champs NoPeintre.

Concernant une requte, il ne sagit pas de relation , mais de jointure .
Comme une relation, une jointure relie deux champs analogues (gnralement une cl
primaire et la cl trangre correspondante).


Cration automatique de jointures

Pour quil ait cration automatique de jointures, loption Access Activez les jointures automatiques
doit tre active. Vrifiez-le :
Ouvrez le menu Fichier > Options. Slectionnez la rubrique Concepteurs dobjets . Sous le titre
Cration de requte , vrifiez que la case Activez les jointures automatiques est bien coche. Sinon,
cochez-la.

Une jointure est automatiquement cre par Access dans les cas suivants :
- Une relation existe entre les deux tables.
- Les deux tables comportent deux noms de champs identiques, dont lun est
cl primaire.
Les champs seront joints , mme en labsence de relation entre les
tables. En affichant les deux tables, on peut voir une ligne reliant les deux
champs analogues. Elle reprsente la jointure entre les tables.

Contrairement la relation qui revt un caractre permanent (bien quelle puisse tre
supprime), une jointure est propre une requte, elle nexiste que le temps de la requte.
Si on affiche dans la fentre Relations deux tables jointes dans la fentre de la cration de requte,
mais qui nont pas t relies (cration dune relation entre elles), elles demeurent non relies.

Exemple
On souhaite crer une requte pour afficher les noms de muses o sont affichs les
tableaux peints par Van Eyck (ceux qui sont prsents dans la table TABLEAU).
La requte affichera le nom du peintre, les noms des tableaux et les noms des muses o
ceux-ci sont exposs.

La rponse cette requte ncessite que les trois tables PEINTRE, TABLEAU et MUSEE
soient en jointure deux deux : il y a slection des enregistrements de mme valeur
NoPeintre pour les deux premires tables, et slection des enregistrements de mme valeur
NoMusee pour les deux dernires.
Ralisez la requte. Affichez les trois tables. Slectionnez les champs NomPeintre,
NomTab et NomMusee. Sur une ligne de dfinition des critres du champ NomPeintre, tapez
=Van Eyck. Excutez la requte.
On obtient le rsultat :

NomPeintre NomTab NomMusee
Van Eyck La Vierge au chancelier Louvre
Van Eyck Les Epoux Arnolfini National Gallery

Le nombre de jointures cres est toujours gal au nombre de tables utilises, moins un.
Dans lexemple prcdent, on a trois tables, donc deux jointures.

COURS BARDON - ACCESS 2010 / CHAPITRE 10
89
Pour afficher la fentre Proprits de la jointure , double-cliquez sur une ligne de
jointure. Sont proposs trois types de jointure. On utilise essentiellement le premier type.
Quand on parle de jointure , on sous-entend une jointure interne.

Jointure interne

La fentre Proprits de la jointure explique la jointure interne :
1 : Inclure seulement les lignes des deux tables pour lesquelles les champs joints
sont gaux .
Il sagit du type le plus commun. Les enregistrements comportant des donnes de deux
tables, on ne garde que ceux dont les champs correspondants ont des valeurs identiques.
Cest ce type de jointure qui est appliqu dans les deux requtes prcdentes. Prenons un
autre exemple.

Exemple
Crons la requte slectionnant les peintres ayant ralis un tableau aprs 1875. Le
rsultat affichera les noms des peintres, ainsi que les noms et les dates des tableaux.

Affichez la table PEINTRE gauche et la table TABLEAU droite.
Double-cliquez sur la ligne de relation qui les rattache. La fentre Proprits de la
jointure montre que les deux tables sont jointes, par lintermdiaire des champs
correspondants NoPeintre.
Laissez coche loption 1 de jointure, qui est loption de jointure interne. Validez.

Slectionnez les champs NoPeintre, NomPeintre, NomTab et DateTab.
Dans la ligne Afficher , dcochez la case de la colonne du champ NoPeintre (on ne
souhaite pas afficher les numros des peintres).
Sur une ligne de dfinition de critres du champ DateTab, tapez >1875. Excutez la
requte. On obtient le rsultat :


NomPeintre NomTab DateTab
Renoir Chemin montant () 1877
Van Gogh La Chambre de Van Gogh () 1889
Van Gogh L'Eglise d'Auvers-sur-Oise 1890
Picasso Guernica 1937

En code SQL, la requte scrit :
select PEINTRE.NomPeintre, TABLEAU.NomTab, TABLEAU.DateTab
from PEINTRE inner join TABLEAU on PEINTRE.NoPeintre=TABLEAU.NoPeintre;
inner join dsigne la jointure interne.

Jointure externe gauche et Jointure externe droite

Ces deux jointures ont des effets analogues. La jointure externe gauche (droite) garde
chaque enregistrement de la table situe gauche ( droite), mme sil ny a pas de valeur de
champ joint identique dans lautre table, en plus des enregistrements pour lesquels les champs
joints sont gaux.
Prenons lexemple de la jointure externe gauche.
COURS BARDON - ACCESS 2010 / CHAPITRE 10
90
La fentre Proprits de la jointure lexplique ainsi :
2 : Inclure tous les enregistrements de (la table gauche)
et seulement ceux de (la table droite) pour lesquels les champs joints sont gaux .

Exemple
Reprenons lexemple prcdent. Affichez la fentre Proprits en double-cliquant
sur la jointure des tables PEINTRE et TABLEAU.
Choisissez le type jointure externe gauche (option 2) entre les deux tables.
Excutez la requte.
Le rsultat affiche cette fois galement le peintre Klee, appartenant la table gauche de
la jointure, bien que la valeur de son champ NoPeintre (20) napparaisse pas dans la table
TABLEAU.
En code SQL, la requte scrit :
select PEINTRE.NomPeintre, TABLEAU.NomTab, TABLEAU.DateTab
from PEINTRE left join TABLEAU on PEINTRE.NoPeintre=TABLEAU.NoPeintre;
left join dsigne la jointure externe gauche.


8. REQUETE PARAMETREE

On peut faire dpendre le critre dun champ de la valeur saisie par lutilisateur de la
requte.
Exemple
Une requte peut demander de saisir le numro de client afin de pouvoir afficher ensuite
les coordonnes de ce client. On dit que la requte est paramtre.

On peut utiliser plusieurs paramtres au sein dune mme requte.

Pour dfinir un paramtre, il suffit de taper le texte de ce paramtre entre crochets.
Exemple : dans lexemple prcdent, la ligne de critres du champ NoClient, on peut
taper : = [Quel est le numro du client ?].
La valeur saisie par lutilisateur remplacera lexpression entre crochets lors de
lexcution de la requte.

Exemple
Ralisons une requte permettant son utilisateur de connatre la nationalit et la date
de naissance dun peintre dont il donnera le nom (le nom devra figurer dans la table
PEINTRE).

Slectionnez les champs NomPeintre, Nationalite et AnneeNaissance.
Sur une ligne de saisie de critres du champ NomPeintre, tapez = [Nom du peintre ?]
Excutez la requte.
COURS BARDON - ACCESS 2010 / CHAPITRE 11
91
CHAPITRE 11 REQUETE DE SELECTION
EN MODE SQL



Quelle soit cre avec un Assistant ou en mode Cration, toute requte est gnre en
code SQL. Cest un langage de cration de requte qui est puissant, tout en tant simple.
On peut dire code , mode ou encore langage SQL.

Fentre de saisie dune requte en SQL

Pour accder la fentre dans laquelle on tape une requte en mode SQL :
A longlet Crer (situ droite de longlet Accueil), dans le groupe Macros et code ,
activez le bouton Cration de requte . Fermez la fentre Afficher la table .
Puis : soit dans le groupe Rsultats, soit dans la barre dtat, cliquez sur le bouton SQL.

INDICATIONS PRELIMINAIRES

Taille des caractres et police du texte de la requte

Lors de la saisie dune requte, si la taille des caractres vous semble trop petite ou si
vous souhaitez changer de police, vous pouvez modifier ces paramtres :
Ouvrez le menu Fichier > Options. Cliquez sur Concepteurs dobjets . Dans la zone
titre Cration de requte , vous pouvez changer la taille des caractres ainsi que la police
des textes de requtes. Validez.
Les nouveaux paramtres seront pris en compte lors des prochaines requtes.

Casse, espaces et paragraphes

Casse : SQL ne distingue pas les lettres minuscules des lettres majuscules.
Espaces et paragraphes : on peut insrer volont des espaces et des sauts de
paragraphes (en appuyant sur la touche Entre) pour rendre plus lisible le texte de la requte.

Les clauses

Comme tout langage, SQL utilise des mots qui lui sont propres. Certains sont appels
clauses . On les place gnralement en dbut de paragraphe, afin de rendre la requte plus
lisible. Exemples : select, from, where.

Le point-virgule final ;

A la fin dune requte, il est ncessaire de taper un point-virgule, pour signaler la fin de
la saisie du texte de la requte.

Excution dune requte, retour en mode SQL

Avant dexcuter une requte, fermez les tables quelle concerne. Pour fermer une
table : faites un clic droit sur son onglet > Fermer.
COURS BARDON - ACCESS 2010 / CHAPITRE 11
92
Pour excuter une requte, afin dafficher son rsultat en mode Feuille de donnes (on
utilise les mmes mthodes que pour lexcution dune requte en mode Cration) :
A longlet Crer des Outils de requte , dans le groupe Rsultats, cliquez :
- Soit sur le bouton Excuter, dont licne est un point dexclamation
rouge
- Soit sur le bouton Affichage, dont licne symbolise une feuille de
donnes .
Lorsquil sagit dune requte daction, le bouton Affichage permet de visualiser le rsultat avant
dexcuter la requte. Do lexistence des deux boutons Affichage et Excuter, dont lactivation conduit au
mme rsultat pour une requte de slection.

Retour en mode SQL : faites un clic droit sur longlet de la requte > Mode SQL.

Affichage limit des lignes de rsultat dune requte (fonctionnalit identique celle
dune requte en mode Cration)

Sans modifier le rsultat de la requte, on peut nafficher que le nombre ou le
pourcentage denregistrements souhait.
La requte tant affiche en mode Cration, pour dfinir le nombre ou le pourcentage
denregistrements afficher : longlet Crer des Outils de requte , dans le groupe
Paramtrage de requte , cliquez sur le bouton Renvoyer . Par dfaut, Tout est
renvoy. Cliquez sur la valeur souhaite, ou bien saisissez un nombre ou un pourcentage
denregistrements afficher.

Enregistrer et fermer une requte (mthodes identiques celles utilises pour une requte en
mode Cration)

Pour enregistrer une requte : cliquez sur le bouton Enregistrer de la barre doutils
accs rapide (en haut de lcran). Ou bien : faites un clic droit sur longlet de la requte >
Enregistrer. Ou encore : ouvrez le menu Fichier > Enregistrer.

Pour fermer une requte : cliquez sur le bouton Fermer (croix situe droite de
longlet de la fentre de la requte), ou bien : faites un clic droit sur longlet de la requte >
Fermer.

TABLES UTILISEES DANS LES EXEMPLES

Dans les exemples de ce chapitre, nous utiliserons les tables PEINTRE, TABLEAU et
MUSEE dcrites au chapitre 7, auxquelles nous allons ajouter les tables EXPERT et EXPERTISE.
Crez les tables. Attribuez une cl primaire aux champs identifiants.
Dans la table EXPERTISE, la cl primaire est constitue du groupe des trois champs
NoExpert, NoTableau et DateExp. En effet un expert peut valuer un tableau plusieurs dates
diffrentes. Le prix estim dpend donc de lexpert, du tableau et de la date dexpertise.

Crez les relations. Appliquez chacune lintgrit rfrentielle.
Sil est vivement recommand de crer les lignes de relations entre les tables, et de leur appliquer
lintgrit rfrentielle, les requtes cres en mode SQL ne sen servent pas. En revanche, sur toute requte
utilisant plusieurs tables, on doit dfinir les conditions de jointure entre les tables. Nous verrons cela au
paragraphe 4 de ce chapitre.

Puis saisissez les enregistrements.
Vous pourrez ainsi vrifier les rsultats des requtes proposes en exemples.
COURS BARDON - ACCESS 2010 / CHAPITRE 11
93
Les tables sont ainsi affiches dans la fentre Relations (le symbole reprsente la
cl primaire :

EXPERT EXPERTISE TABLEAU PEINTRE
NoExpert
1


NoExpert
1
NoTableau
1
NoPeintre
NomExp NoTableau

NomTab NomPeintre
TelExp DateExp Bois/Toile PrenomPeintre
PrixEstime DateTab Nationalite
NoPeintre

AnneeNaissance
NoMusee

AnneeDeces

MUSEE

1
NoMusee
NomMusee
Ville
NbVisiteurs

On donne au champ TelExp le type Texte (on ny effectue pas de calcul), au champ
DateExp le type Date/Heure et au champ PrixEstime le type Montaire avec le format
Nombre gnral .
Avant de saisir les enregistrements, attribuez les cls primaires. Dans la table
EXPERTISE, slectionnez les trois champs, puis activez le bouton Cl primaire .
La table TABLEAU est relie aux tables EXPERTISE, PEINTRE et MUSEE.

Voici les enregistrements saisis dans les deux nouvelles tables (les prix estims, en
millions de francs, sont imaginaires) :

TABLE EXPERT : TABLE EXPERTISE :


NoExpert NomExp TelExp
30 FOUCHER Anne 09 30 40 50 60
31 RIGAUD Jean 05 45 46 47 48
32 BOUTIN Pierre 06 05 04 03 02





1. CLAUSES SELECT ET FROM

Une requte comporte, au minimum, les deux clauses, select et from.
Exemple : select NomExp, TelExp
from EXPERT ;
Remarque : nous crivons des majuscules, pour que la requte soit plus lisible, mais SQL ne
reconnaissant pas la casse (sauf celles des chanes saisies entre guillemets dans une clause select), on peut
nutiliser que des minuscules.
Saisissez, puis excutez cette requte. Retournez ensuite en mode SQL : clic droit sur
longlet de la requte > Mode SQL.
NoExpert NoTableau DateExp PrixEstime
30 115 01/06/1960 4
30 123 15/02/1990 200
31 114 01/08/1980 10
32 116 01/07/1970 5
32 125 01/01/2000 500
32 116 01/08/1980 40
COURS BARDON - ACCESS 2010 / CHAPITRE 11
94
Pour renommer la requte, fermez dabord la requte (clic droit sur longlet portant son
nom > Fermer), puis faites un clic droit sur son nom dans le Volet de navigation >
Renommer. Tapez le nouveau nom et validez.

Fonctionnement dune requte avec les seules clauses select et from

Expliquons le fonctionnement de lexcution dune requte de la forme select from
partir de lexemple donn : select NomExp, TelExp from EXPERT ;
Bien que la requte commence par la clause select, cest dabord la clause from qui est
traite.
1) from EXPERT : la table EXPERT est prise en compte dans son entier, avec tous ses
champs et tous ses enregistrements.
A noter quon peut raliser une requte partir de tables ou de rsultats de requtes.
2) select NomExp, TelExp : ces deux champs sont slectionns. Ils seront les seuls
tre affichs dans le rsultat.
3) Le rsultat est affich en mode Feuille de donnes. Il est le suivant :

NomExp TelExp
FOUCHER Anne 09 30 40 50 60
RIGAUD Jean 05 45 46 47 48
BOUTIN Pierre 06 05 04 03 02

Nom comportant un espace ou un caractre spcial - Nom mal orthographi

Si le nom dune table ou dun champ comporte un espace ou un caractre spcial, on
doit lencadrer de crochets. Exemples : [nom de la table] ou [nom-champ].
Si le nom dun champ nest pas encadr de crochets, alors quil devrait ltre, ou bien
sil est mal orthographi (ou les deux), SQL ne le reconnat pas, et le considre comme un
paramtre. Une fentre saffiche, sollicitant la saisie dune valeur de paramtre. Annulez.
Placez des crochets, ou corrigez lorthographe du nom.

Attribution dune lgende un champ

Le concepteur de la base donne souvent aux champs des noms abrgs, peu
comprhensibles pour lutilisateur de la base.
Sans modifier son nom, on peut donner au champ une autre appellation plus explicite,
une lgende , qui le dsignera dans le rsultat de la requte. On prcde la lgende du mot
as. Une lgende ainsi dfinie, nexiste quau sein de la requte.
Exemple
Reprenons la requte prcdente, en donnant des lgendes aux deux champs.
select NomExp as [Nom de lexpert], TelExp as Tlphone
from EXPERT ;
Comportant des espaces, la lgende Nom de lexpert a t place entre crochets.
Saisissez, puis excutez la requte. Les champs sont dsigns par leur lgende.
Affichez la table Expert en mode Cration. Les noms des champs restent inchangs.
On peut ensuite utiliser le champ en le dsignant par sa lgende.



COURS BARDON - ACCESS 2010 / CHAPITRE 11
95
Ordre daffichage des champs

Dans le rsultat, les champs sont affichs dans lordre indiqu dans la requte.
Testez la nouvelle requte dans laquelle on a invers lordre des champs :
select TelExp, NomExp from EXPERT ;
Dans la table rsultat, les colonnes des champs TelExp et NomExp sont inverses.

Slection de tous les champs dune table

Il existe deux mthodes pour afficher tous les champs dune table :
- Soit en numrant tous les champs de la table. On peut alors choisir lordre
des champs qui seront affichs dans le rsultat.
- Soit en utilisant lastrisque *. Exemple : select * from EXPERT ;
Dans ce cas, les champs seront affichs dans lordre o ils se prsentent
dans la table en mode Cration.

Enregistrements distincts Oprateur distinct

Quand plusieurs enregistrements ont des valeurs identiques pour tous les champs
affichs dans le rsultat, on utilise loprateur distinct si on veut nen garder quun seul, et
viter ainsi les doublons.

Exemple
Ralisons une requte pour afficher les villes de la table MUSEE, chaque ville ne devant
apparatre quune fois : select distinct Ville from MUSEE ;
Testez cette requte avec et sans loprateur distinct. Sans cet oprateur, la ville de
Paris est affiche deux fois.

Autre exemple

Considrons la table NATURE :

Nolment Elment Couleur Qualificatif
1 Mer Bleu Calme
2 Arbre Vert Majestueux
3 Mer Bleu Agite
4 Mer turquoise Limpide

Excutons la requte : select distinct Elment, Couleur
from NATURE ;
On obtient le rsultat :
Elment Couleur
Arbre Vert
Mer Bleu
Mer turquoise

Seul le premier des deux enregistrements n
os
1 et 3 a t gard.
Loprateur distinct porte sur les champs affichs, qui sont ici Elment et Couleur.
COURS BARDON - ACCESS 2010 / CHAPITRE 11
96
Dans le fonctionnement dune requte, loprateur distinct sapplique en fin dexcution
(juste avant le tri, sil y en a un).


2. CHAMPS OPERES

Un champ opr est un nouveau champ, construit partir dun champ de la mme
table, sur les valeurs duquel on a effectu une opration (on est en plein hpital) laide dun
oprateur (non, pas un chirurgien).
La mme opration est applique toutes les valeurs du champ, pour constituer le
nouveau champ, le champ opr. Le champ opr a donc le mme nombre de valeurs que le
champ de rfrence.
On peut construire un champ opr partir de plusieurs champs issus dune ou de
plusieurs tables.
Il convient de donner une lgende au champ opr (cf. 1 de ce chapitre Attribution
dune lgende un champ ).

Champs de type Numrique

Un champ opr peut tre construit partir dun champ de type Numrique. On peut
utiliser les oprateurs habituels, en particulier +, -, / et *.

Exemple
Supposons que dans une table, on ait le champ Quantit, de type Numrique. On
souhaite crer un nouveau champ, appel Quantit double, tel que ses valeurs soient le
double de celles du champ Quantit :
select Produit, Quantit * 2 as [Quantit double] from COMMANDE ;

Autre exemple
Ralisons la requte qui affiche pour chaque muse le nombre de visiteurs annuel en
milliers (et non plus en millions) :
select NomMusee, NbVisiteurs * 1000 as [Nombre de visiteurs (milliers)] from MUSEE ;
Excutez cette requte sans, puis avec la lgende du champ opr.

Champs de type Texte

Un champ opr peut galement tre construit partir dun champ de type Texte.
Le signe de lesperluette & sert doprateur pour lier des chanes de caractres, ou
encore pour lier une chane avec une valeur de champ.
Une chane de caractres ajoute doit tre place entre guillemets "chane".
Veillez ce que les guillemets soient affichs ainsi " et non (si vous faites un Copier/Coller partir
dune requte tape sous Word, les guillemets ne seront pas valables).
Tout caractre peut tre utilis, y compris lespace.

Exemple
Sur la table TABLEAU, ralisons la requte faisant prcder chaque valeur du champ
Bois/Toile du mot Sur suivi dun espace. Seront affichs les champs NomTab et le champ
opr : select NomTab, "Sur " & [Bois/Toile] as [sur bois ou sur toile] from TABLEAU ;
Lancez lexcution de la requte. Testez-la avec et sans lespace aprs le mot Sur, avec
et sans les guillemets.
COURS BARDON - ACCESS 2010 / CHAPITRE 11
97
Autre exemple
Sur la table EXPERT, ralisons la requte qui prsente sur une seule colonne le nom et le
numro de tlphone de chaque expert :
select NomExp & " Tel : " & TelExp as Expert from EXPERT ;
Saisissez, puis excutez la requte.
Le champ opr a t construit partir des champs NomExp et TelExp.


3. CHAMP DE FONCTION

Une fonction renvoie une seule valeur. On peut crer un champ, appel champ de
fonction, qui permet dafficher la valeur renvoye par une fonction.
Un champ de fonction est un nouveau champ, comportant une seule valeur. Cette valeur
rsulte dun calcul effectu sur toutes les valeurs dun champ.
Comme pour un champ opr, il convient de donner une lgende au champ de fonction
(cf. 1 de ce chapitre Attribution dune lgende un champ ).

Fonctions usuelles

On utilise communment les fonctions suivantes :
- Count (champ) : cette fonction renvoie le nombre de valeurs du champ. Les
cellules non renseignes ne sont pas comptes (quand une cellule nest pas renseigne,
on dit quelle a la valeur Null).
- Max (champ) ou Min (champ) : ces fonctions renvoient la valeur maximale ou
minimale des valeurs du champ.
- Sum (champ) : cette fonction renvoie la somme des valeurs du champ.
- Avg (champ) : cette fonction renvoie la moyenne des valeurs du champ (avg est
le sigle du mot average, qui signifie moyenne).

Un seul enregistrement

Une requte comportant une fonction dans sa clause select, ne peut afficher en rsultat
quun seul enregistrement, constitu de la ou des valeurs des champs de fonction. Le rsultat
peut en effet comporter plusieurs champs de fonction.

Exemples

Ralisons la requte qui affichera le nombre de tableaux de la table TABLEAU.
select count(NomTab) as [Nombre de tableaux] from TABLEAU ;
Excutez cette requte, qui affiche un seul champ de fonction. Enregistrez-la sous le
nom Nombretableaux ( clic droit sur longlet de la requte > Enregistrer, puis tapez le nom).
Elle nous servira plus loin.
Son rsultat est :
Nombre de tableaux
26

Pour compter le nombre denregistrements dune table, on peut utiliser lexpression
count(*). Dans lexemple prcdent, remplacez count(NomTab) par count(*), puis excutez
la requte. On obtient le mme rsultat.
COURS BARDON - ACCESS 2010 / CHAPITRE 11
98
Ralisons la requte qui affichera des statistiques sur les nombres de visiteurs annuels
des muses de la table MUSEE.
select max(NbVisiteurs) as [Maximum visiteurs dun muse],
sum(NbVisiteurs) as [Total visiteurs],
avg(NbVisiteurs)\1 as [Moyenne visiteurs] from MUSEE ;
Excutez cette requte, qui affiche trois champs de fonction. Enregistrez-la sous le nom
Statvisiteurs.
Aprs la fonction avg, on a tap \1, afin dafficher la valeur entire de la moyenne.
Testez la requte sans cette saisie.
Loprateur \ divise, puis il affiche la partie entire du rsultat. Exemple 7\2 affiche 3.

Le rsultat de la requte est :

Maximum visiteurs dun muse Moyenne visiteurs Total visiteurs
9 5 32

Ralisons une requte utilisant les deux requtes prcdentes Nombretableaux et
Statvisiteurs :
select [nombre de tableaux], [moyenne visiteurs], [total visiteurs]
from Nombretableaux, Statvisiteurs ;
(On a repris les lgendes prcdemment attribues aux champs de fonction des requtes)
On obtient le rsultat :

Nombre de tableaux Moyenne visiteurs Total visiteurs
26 5 32

Sur la table EXPERTISE, ralisons la requte qui affichera les dates dexpertise la plus
ancienne et la plus rcente :
select min(DateExp) as [Expertise la plus ancienne],
max(DateExp) as [Expertise la plus rcente] from EXPERTISE ;
Saisissez, puis excutez la requte.


4. CLAUSE WHERE

La clause where permet de filtrer des enregistrements en fonction de critres dfinis.
Elle peut contenir plusieurs critres, spars par le mot and.

Bien quune requte soit toujours prsente sous la forme select from... where..., SQL
traite dans lordre : dabord la clause from, ensuite la clause where, puis la clause select. Sur
examen des tables (from), les enregistrements sont slectionns (where), puis il y a slection
des champs qui seront affichs (select).
Nous vous conseillons de rdiger la requte dans lordre selon lequel SQL excute les
clauses : dabord from, ensuite where, puis select.

Requtes sur une seule table, avec clause where - Exemples

On peut slectionner des enregistrements dont les valeurs sont issues dune seule table.

COURS BARDON - ACCESS 2010 / CHAPITRE 11
99
Voici quelques exemples :

Noms et prnoms des peintres ns aprs 1800

select NomPeintre, PrenomPeintre, AnneeNaissance
from PEINTRE
where AnneeNaissance > 1800 ;
Fonctionnement de la requte : les peintres (from) dont les annes de naissance sont
postrieures 1800 (where) sont slectionns. Puis les champs NomPeintre, PrenomPeintre et
AnneeNaissance (select) sont slectionns.

Si on souhaite mettre les noms et prnoms dans une seule colonne, on cre un champ
opr : select NomPeintre & " " & PrenomPeintre as Nom, AnneeNaissance from (idem)

Noms des peintres de nationalit belge ou grecque

select NomPeintre, Nationalite
from PEINTRE
where Nationalite = "belge" or Nationalite = "grec" ;
Nationalite est de type Texte, donc lexpression aprs loprateur = doit tre entoure
de guillemets. Les guillemets indiquent SQL quil sagit dune chane de caractres.

Date de ralisation et numro du tableau nomm Le Printemps

select NoTableau, NomTab, DateTab
from TABLEAU
where NomTab = "Le Printemps" ;

Requtes sur plusieurs tables Conditions de jointure indispensables

On peut slectionner des enregistrements dont les valeurs sont issues de champs de
plusieurs tables.
Exemple : slection des tableaux peints par Bruegel. Cette requte fait appel aux tables
TABLEAU et PEINTRE.

- Conditions de jointure entre les tables

Concernant une requte, on ne parle pas de relation entre tables, mais de
jointure . Comme une relation, une jointure relie deux champs correspondants.
Quand on slectionne des enregistrements dont les donnes proviennent de champs de
tables diffrentes, on ajoute des conditions de jointure entre les tables, afin de filtrer les
enregistrements et ne garder que ceux dont les champs correspondants ont les mmes valeurs.
En tant que condition dacceptation dun enregistrement, une jointure entre deux tables
est place dans la clause where.
Elle consiste galiser les champs correspondants (gnralement cl primaire et cl
trangre) : Table.Champ = AutreTable.ChampCorrespondant.




COURS BARDON - ACCESS 2010 / CHAPITRE 11
100
- Exemple dune requte faisant appel deux tables

select NomTab, NomPeintre
from TABLEAU, PEINTRE ;

Excutez cette requte, ne comportant pas de condition de jointure entre les tables.
Le rsultat affiche chaque tableau avec tous les peintres, ligne aprs ligne. Il comprend
par exemple lenregistrement : La Joconde Picasso.

Ajouter une condition de jointure permet dliminer les enregistrements aberrants.
Dans lexemple, elle permet de ne garder que les enregistrements comportant un nom de
tableau et le nom du peintre qui la ralis.
Ralisez la nouvelle requte, comportant la condition de jointure entre les tables :
select NomTab, NomPeintre
from TABLEAU, PEINTRE
where TABLEAU.NoPeintre = PEINTRE.NoPeintre ;

- Nombre de jointures

Le nombre de jointures est gal au nombre de tables, moins une. Exemple : sil y a 4
tables, il y aura 3 jointures dans la clause where. Dans lexemple prcdent, on a deux
tables, donc une seule jointure.

- Nom dun champ prsent dans plusieurs tables

Le mme nom de champ peut apparatre dans plusieurs tables. Il sagit gnralement des
champs correspondants de deux tables.
SQL exige dans ce cas que soit prcise la table dappartenance du champ.
Exemple
select NomTab, PEINTRE.NoPeintre , NomPeintre
from TABLEAU, PEINTRE
where TABLEAU.NoPeintre = PEINTRE.NoPeintre ;
Le mme nom de champ NoPeintre apparat dans les tables PEINTRE et TABLEAU. On
doit donc prciser la table dappartenance du champ.

- Alias attribus aux tables (facultatif, mais trs pratique)

Donner un alias une table consiste lui donner un surnom, qui nexistera que dans la
requte. Cest simple et pratique. Lalias est plus rapide taper que le nom de la table (sil est
bien choisi). En revanche, une fois que lalias est dfini, son utilisation devient obligatoire
au sein de la requte, pour dsigner la table.
Souvent, on prend linitiale du nom de la table, si cette lettre nest pas dj prise. Sinon,
lalias comprend plusieurs lettres.
Ecrivons la prcdente requte en utilisant des alias :
select NomTab, P.NoPeintre , NomPeintre
from TABLEAU T, PEINTRE P
where T.NoPeintre = P.NoPeintre ;
Remarque : cette requte est bien la preuve que SQL traite dabord la clause from (o il
y a lalias de la table PEINTRE) avant la clause select (qui utilise lalias de cette table).

COURS BARDON - ACCESS 2010 / CHAPITRE 11
101
- Exemples de requtes portant sur plusieurs tables

Remarque : utilisant plusieurs tables, la requte aura au moins une condition de jointure. Elle comportera
donc la clause where, ne serait-ce que pour dfinir cette jointure.

Noms et villes des muses o sont exposs les tableaux du peintre Fragonard

select NomMusee, Ville
from MUSEE M, TABLEAU T, PEINTRE P
where M.NoMusee = T.NoMusee
and T.NoPeintre = P.NoPeintre
and NomPeintre = "Fragonard" ;

Nombre de tableaux sur bois, qui sont exposs au Louvre

select count([Bois/Toile]) as [Nombre de tableaux sur bois au Louvre]
from TABLEAU T, MUSEE M
where T.NoMusee = M.NoMusee
and [Bois/Toile] = "bois"
and NomMusee = "Louvre" ;
Il est ncessaire de mettre Bois/Toile entre crochets, car le nom du champ comporte un caractre spcial
(/). Par ailleurs, aprs loprateur count, il est ncessaire de placer le champ entre parenthses. Do la prsence
ncessaire des parenthses et des crochets.

Nom de lexpert, prix et date destimation du tableau Le Verrou

select NomExp, PrixEstime, DateExp
from EXPERT E, EXPERTISE EE, TABLEAU T
where E.NoExpert = EE.NoExpert
and EE.NoTableau = T.NoTableau
and NomTab = "Le Verrou" ;

Numros et noms des peintres dont les tableaux ont t valus par Anne Foucher

select P.NoPeintre, NomPeintre
from PEINTRE P, TABLEAU T, EXPERTISE EE, EXPERT E
where P.NoPeintre = T.NoPeintre
and T.NoTableau = EE.NoTableau
and EE.NoExpert = E.NoExpert
and NomExp = "Foucher Anne" ;

Noms des peintres ayant ralis un tableau en 1505 ou en 1507

select NomPeintre, NomTab, DateTab
from PEINTRE P, TABLEAU T
where P.NoPeintre = T.NoPeintre
and ((DateTab = 1505) or (DateTab = 1507)) ;
A la dernire ligne, toutes les parenthses sont ncessaires pour lexcution de la requte. Le nombre de
parenthses ouvrantes doit tre gal au nombre de parenthses fermantes.



COURS BARDON - ACCESS 2010 / CHAPITRE 11
102
Oprateurs like, between and, in

Hormis les oprateurs classiques <, <=, =, >=, > et <> (diffrent ne pas mettre
despace entre les deux signes < et >), trois autres oprateurs savrent particulirement
utiles :

Like (comme) permet de comparer des chanes de caractres. Il est utilis avec les
oprateurs :
- * pour remplacer 0, 1 ou plusieurs caractres quelconques.
- ? pour remplacer un seul caractre.
Exemples
select distinct NomMusee from MUSEE where (NomMusee like "kun*")
or (NomMusee like "National Gal*ery") ;
Testez la requte sans, puis avec loprateur distinct.

select NomExp from EXPERT where NomExp like "Fouche? Anne" ;

Between and (entre et)
Exemple
select NomPeintre from PEINTRE
where AnneeNaissance between 1390 and 1453 ;
Le rsultat montre que les bornes sont incluses.
Il est plus rapide dutiliser ainsi loprateur between, plutt que dcrire :
() where AnneeNaissance >= 1390 and AnneeNaissance <= 1453 ;

In (dans)
Exemple : noms des tableaux qui sont exposs dans les muses n
os
13, 18 et 23
select NomTab, M.NoMusee
from TABLEAU T, MUSEE M
where T.NoMusee = M.NoMusee
and M.NoMusee in (13, 18, 23) ;
Le nom du champ NoMusee tant prsent dans les deux tables, il faut prciser sa table.
Il est plus rapide dutiliser ainsi loprateur in, plutt que dcrire :
() and ((M.NoMusee) = 13 or (M.NoMusee) = 18 or (M.NoMusee)) = 23 ;
Les parenthses sont indispensables pour lexcution de la requte.

Valeur Null (absence de valeur)

Quand on dit quun enregistrement na pas de valeur dans un champ, il est sous-
entendu : pas de valeur indique dans la cellule. Dans ce cas, on dit que sa valeur est Null.
Dans la feuille de donnes dune table, les cellules sans valeur, dites vides , ont la
valeur Null.
Lexpression champ is Null est vrai pour les enregistrements exempts de valeur dans
le champ.
Exemple
Noms des peintres sans indication de prnom, de numro infrieur ou gal 10 :
select NomPeintre from PEINTRE where PrenomPeintre is Null and NoPeintre <=10 ;


COURS BARDON - ACCESS 2010 / CHAPITRE 11
103
5. DATES ET HEURES

Dates

Afin que SQL ne traite pas les signes / comme des oprateurs de division, on entoure
les dates de dises #.
- Exemple
Nombre dexpertises ralises depuis 1er janvier 1990 :
select count (*) as [Nombre dexpertises depuis le 01/01/1990]
from EXPERTISE
where DateExp > #01/01/1990# ;
On peut indiffremment crire 01/01/1990 ou 1/1/1990.

- Date du jour
La fonction Date( ) renvoie la date du jour (lordinateur tant correctement paramtr).
Elle permet de rcuprer la date systme de lordinateur.
Excutez la requte : select distinct date( ) from (table de votre choix) ;
(On ajoute distinct, sinon on obtient toutes les lignes des enregistrements avec la date du jour)

- Oprateurs de comparaison et calculs sur les dates
Les dates tant stockes sous forme de nombres entiers (un jour vaut 1), on peut les
comparer comme des nombres, en utilisant les oprateurs <, <=, =, >=, > et <> (cf. lexemple
ci-dessus).
Une date plus rcente (elle correspond un nombre plus grand) est considre
suprieure une date moins rcente.

Exemples de requtes avec calculs sur des dates
select distinct date( ) + 2 from (table de votre choix) ; Cette requte affiche la date
daprs-demain.
select date( ) - DateExp as [Nombre de jours coules depuis lexpertise] from
expertise ;
Dans cette dernire requte, on a cr le champ opr date( ) DateExp, et on lui a donn une lgende.

- Fonctions renvoyant le jour, le mois et lanne dune date
On dispose des fonctions suivantes (les exemples sont en format jj/mm/aaaa).
- day(date) renvoie le jour de la date : day(#15/02/1954#) renvoie 15.
- month(date) renvoie le mois de la date : month(#15/02/1954#) renvoie 2.
- year(date) renvoie lanne de la date : year(#15/02/1954#) renvoie 1954.
Exemple - Nombre dexpertises en 1980 :
select count(*) as [Nombres dexpertises en 1980] from expertise
where year(DateExp) = 1980 ;

- Format franais et format amricain

Quand on gre des dates, il convient de savoir si elles sont en format franais
jj/mm/aaaa, ou en format amricain mm/jj/aaaa. La date 10/03/2000 correspond au 10 mars
2000 en format franais, et au 3 octobre 2000 en format amricain.
Pour connatre le format dune date, il faut dabord distinguer si elle est entoure de
signes dises #.

COURS BARDON - ACCESS 2010 / CHAPITRE 11
104
Date entoure de signes dises

Une date entoure de signes dises de forme #nb1/nb2/aaaa# (nb1 pour 1
er
nombre et nb2
pour 2
me
nombre) est considre tre :
- Au format amricain mm/jj/aaaa, si nb1 est infrieur ou gal 12
- Sinon, au format franais jj/mm/aaaa.
Exemples :

day (#11/08/2000#) = 8
La date est place entre dises et 11 est infrieur 12, donc SQL la considre tre au
format amricain mm/jj/aaaa.

day (#13/08/2000#) = 13
La date est place entre dises et 13 est suprieur 12, donc SQL la considre tre au
format franais jj/mm/aaaa.

Nombre dexpertises ralises le 1
er
aot 1980
select count(*)
from EXPERTISE
where DateExp=#08/01/1980# ;
La date est entoure de dises et le nombre nb1 (08) est infrieur 12, donc elle sera
crite au format amricain (mm/jj/aaaa), cest--dire : 08/01/1980. Le rsultat de la requte
est 2.

Date non entoure de signes dises

Une date non entoure de signes dises est considre tre au format franais
jj/mm/aaaa.

Exemples

select DateExp, day(DateExp) as jour, month(DateExp) as mois
from EXPERTISE
where NoExpert = 31 and NoTableau = 114 ;
Non entoure de dises, la date du 1
er
aot 1980 est considre tre au format
jj/mm/aaaa.

Nombre dexpertises ralises le 1
er
aot 1980
select count(*)
from EXPERTISE
where ((day(DateExp) = 1) and (month(DateExp) = 8) and (year(DateExp) = 1980)) ;
Le rsultat de la requte est 2. Cette requte est plus longue taper que la requte
prcdente affichant le mme rsultat, en utilisant le format amricain de la date.
Remarque : il doit y avoir autant de parenthses ouvrantes que de parenthses fermantes (sept de chaque,
dans cet exemple).

Heures

On crit toujours les heures au format hh:mm ou au format hh:mm:ss.
Comme une date, une heure doit tre encadre de dises #.
COURS BARDON - ACCESS 2010 / CHAPITRE 11
105
Access stocke galement les heures sous forme de nombres entiers (une heure de la
journe est stocke en nombre de secondes coules depuis minuit). On peut donc utiliser les
oprateurs et effectuer des calculs sur les heures.
Exemples : #15:08#, #07:34:16#


6. REQUETE PARAMETREE

Un paramtre est un lment destin tre remplac. On appelle requte paramtre une
requte qui contient un ou plusieurs paramtres. Lutilisateur est invit entrer une valeur qui
remplacera le paramtre dans la requte.

Fonctionnement dune requte paramtre

Expliquons le fonctionnement dune requte paramtre partir dun exemple.

But de la requte crer : aprs saisie par lutilisateur du nom dune ville (pour que la
requte affiche une valeur, la ville devra se trouver dans la table MUSEE), le rsultat de la
requte affichera les noms des muses de cette ville.

Requte : select NomMusee
from MUSEE
where Ville = [Nom de la ville ?] ;
Dans la clause where, au lieu de prciser une valeur de champ Ville, on a plac un
paramtre. Les crochets sont justifis par la prsence despaces et du caractre spcial dans le texte du
paramtre (il suffit dun espace ou dun caractre spcial pour les rendre ncessaires).

Excution de la requte paramtre :
1. La fentre Entrer la valeur du paramtre apparat, affichant le texte du
paramtre : Nom de la ville ?. Tapez le nom de la ville sans guillemets (par
exemple Paris). Validez.
2. SQL remplace le paramtre [Nom de la ville ?] par le nom de la ville (par
exemple Paris).
3. La requte affiche le rsultat.
Testez la requte en saisissant divers noms de villes.

- Autre exemple

Noms et dates des tableaux raliss par un peintre, dont on saisit le nom
select NomTab, DateTab
from TABLEAU T, PEINTRE P
where T.NoPeintre = P.NoPeintre
and NomPeintre = [Veuillez saisir le nom dun peintre] ;

Remarque : dans une requte, quand le nom dun champ est mal orthographi, SQL ne
le reconnaissant pas, le prend pour un paramtre. Exemple : select NomTablo from TABLEAU ;

Requte contenant plusieurs paramtres

Une requte peut contenir plusieurs paramtres.
COURS BARDON - ACCESS 2010 / CHAPITRE 11
106
La fentre Entrer la valeur du paramtre saffiche autant de fois que la requte
contient de paramtres, afin que lutilisateur puisse entrer toutes les valeurs des paramtres,
lune aprs lautre.
Exemple
select NomTab, DateExp, PrixEstime
from TABLEAU T, EXPERTISE E
where T.Notableau = E.NoTableau
and NoExpert = [Numro de l'expert ?]
and T.NoTableau = [Numro du tableau ?]
and DateExp = [Date de l'expertise ?];
(Pour tester la requte, saisissez la date de lexpertise comme elle est affiche dans la
feuille de donnes)


7. TRI DES ENREGISTREMENTS

Dans lexcution dune requte, SQL effectue le tri juste avant laffichage du rsultat.
Un tri peut tre effectu selon les valeurs dun ou de plusieurs champs, en utilisant la
clause order by.
Par dfaut, le tri est croissant. Si on souhaite un tri par ordre dcroissant, il faut ajouter
le mot desc (abrviation de descendant) ct du champ en fonction des valeurs duquel
portera le tri.

Exemple
select NomPeintre, PrenomPeintre
from PEINTRE
order by NomPeintre ;
Remarque : aucun peintre ne portant le mme nom quun autre, il est inutile de faire un tri sur le prnom.
Le tri des noms de peintre est croissant. Si on le veut dcroissant, on ajoute desc aprs le
champ NomPeintre : order by NomPeintre desc ;

- Utilisation du rang du champ dans la clause select

Dans la clause order by, au lieu de rpter le nom dun champ affich dans la clause
select, il suffit de taper le rang quil a dans cette clause :
select NomPeintre, PrenomPeintre from PEINTRE
order by 1 ;
Le chiffre 1 dsigne le rang du champ NomPeintre dans la clause select.

- Tris sur plusieurs champs

Si le tri porte sur plusieurs champs, le champ de gauche est prioritaire par rapport
celui situ sa droite. Quand il y a galit de valeurs dans un champ, SQL considre le champ
suivant pour raliser le tri.
Exemple
select NoTableau, DateExp, PrixEstime from expertise
order by 1, 2 ;
Il y a tri par NoTableau, puis par DateExp.
COURS BARDON - ACCESS 2010 / CHAPITRE 11
107
Excutez cette requte. Testez la nouvelle requte en modifiant ainsi la dernire ligne :
order by 1, 2 desc ; Les enregistrements relatifs au tableau n 116 sont inverss.

- Tri sur des nombres de type Texte

Crez une table avec un seul champ de type Texte. Enregistrez-la sous le nom de
NOMBRETEXTE. Saisissez les valeurs suivantes dans son champ :
1, 2, 3, 4, 5, 20, 31, 46, 300, 4000
Excutez une requte triant les nombres de type Texte de cette table :
select * from NOMBRETEXTE
order by 1 ;
Les nombres de type Texte sont tris sous le principe dordre alphabtique :
1, 2, 20, 3, 300, 31, 4, 4000, 46, 5


8. SOUS-REQUTES

Comme le suggre son nom, une sous-requte est une requte contenue dans une autre
requte.
Il ne faut pas confondre une sous-requte, dont on utilise le rsultat dans un critre de la clause where,
avec une requte laquelle on fait appel dans la clause from.
Une requte peut contenir des sous-requtes, qui elles-mmes peuvent contenir dautres
sous-requtes, etc. Il convient de bien prsenter (utilisation dalinas) la requte principale
contenant les autres requtes, de sorte quelle soit lisible.
Une sous-requte ne peut avoir quun seul champ en rsultat.
Mthode : on labore dabord la ou les sous-requtes, puis on ralise la requte
principale.
On place la sous-requte entre parenthses, et on ne tape pas de point-virgule final.

Exemples

Noms et prnoms des peintres de mme nationalit quun peintre dont le nom est
saisi en paramtre

Crons dabord la requte qui donne en rsultat la nationalit du peintre donn :
select Nationalite
from PEINTRE
where NomPeintre = [Nom du peintre ?] ;

La requte finale, qui contient cette requte, est :
select NomPeintre, PrenomPeintre
from PEINTRE
where Nationalite = ( select Nationalite
from PEINTRE
where NomPeintre = [Nom du peintre ?])
and NomPeintre <> [Nom du peintre ?] ;

(Le signe <> signifie diffrent, il ne doit pas y avoir despace entre < et >)
La dernire ligne de la requte permet dviter que le peintre dont le nom est saisi en
paramtre, fasse partie du rsultat.
COURS BARDON - ACCESS 2010 / CHAPITRE 11
108
Noms des tableaux peints aprs le tableau La Joconde , tris par numros

La requte finale est :
select NoTableau, NomTab, Datetab
from TABLEAU
where DateTab > (select DateTab
from TABLEAU
where NomTab = "La Joconde")
order by 1 ;

Peintres qui ont ralis un tableau aprs La Joconde et avant La Bohmienne

select NomPeintre, NomTab, DateTab
from PEINTRE P, TABLEAU T
where P.NoPeintre = T.NoPeintre
and DateTab between
(select DateTab from tableau where NomTab = "La Joconde") + 1
and (select DateTab from tableau where NomTab = "La Bohmienne") - 1
order by 3 ;

Les expressions +1 et -1 permettent dexclure les tableaux La Joconde et La
Bohmienne .
On a tri les enregistrements par dates de tableaux.

Oprateurs all, any et exists

Ce sont des oprateurs qui peuvent savrer utiles.

- Oprateur all

Loprateur all correspond tout.
Exemple : Dates des expertises ralises avant toutes celles de lexpert Pierre Boutin
select DateExp
from EXPERTISE EE, EXPERT E
where EE.NoExpert = E.NoExpert
and DateExp < all ( select DateExp
from EXPERTISE EE, EXPERT E
where EE.NoExpert = E.NoExpert
and NomExp = "Boutin Pierre") ;
(On nen obtient quune : 11/02/1960)

Remarque : < all (select) est quivalent < (select (min))
> all (select) est quivalent > (select (max))







COURS BARDON - ACCESS 2010 / CHAPITRE 11
109
- Oprateur any

Loprateur any correspond au moins un.
Exemple : Noms des peintres dcds aprs lun des trois peintres : Turner, Monet et
Renoir
select NomPeintre
from PEINTRE
where AnneeDeces > any (select AnneeDeces
from PEINTRE
where NomPeintre in ("Turner", "Monet" ,"Renoir")) ;
(Monet et Renoir tant dcds aprs Turner, ils apparaissent dans le rsultat)

Remarque : < any (select) est quivalent < (select (max))
> any (select) est quivalent > (select (min))


9. REQUETES DE REGROUPEMENTS

Au paragraphe 3 de ce chapitre, on a vu quune fonction, applique un champ, permet
de renvoyer le rsultat dun calcul effectu sur toutes les valeurs de ce champ.
Exemple : count(champ) renvoie le nombre de toutes les valeurs (non Null) du champ.

Groupes denregistrements clause group by

La clause group by permet dobtenir, les rsultats dune ou de plusieurs fonctions
provenant de calculs effectus sur des groupes denregistrements.

Exemple - Nombre de peintres par nationalit
select Nationalite, count(*) as [Nombre de peintres]
from PEINTRE
group by Nationalite
order by 1 ;
(On a ordonn les nationalits)

- Fonctionnement dune requte avec regroupements denregistrements

1) Recherche ventuelle de paramtres : si la requte contient un ou plusieurs
paramtres, SQL demande les valeurs de ces paramtres, et remplace ceux-ci par les
valeurs donnes (cf. 6 Requte paramtre ).
2) Clause from : SQL prend toutes les combinaisons possibles denregistrements, avec
tous les champs, issues des tables indiques dans cette clause.
3) Clause where : il y a souvent slection des enregistrements, en fonction de critres
dfinis dans cette clause.
4) Clause group by : les enregistrements sont regroups en fonction de valeurs
identiques sur tous les champs indiqus dans cette clause.
4 bis) Clause having : il y a ventuellement slection des groupes en fonction de
critres dfinis dans cette clause (voir plus loin).
5) Clause select : elle ne peut contenir que des champs indiqus dans la clause
group by, ainsi que des fonctions qui permettent deffectuer des calculs sur les
COURS BARDON - ACCESS 2010 / CHAPITRE 11
110
regroupements. La clause select est applique successivement chaque groupe
denregistrements.
6) Loprateur facultatif distinct : en cas denregistrements identiques, SQL nen
conserve quun.
7) La clause facultative order by : les enregistrements peuvent tre tris (cf. 7).
8) Le rsultat est affich.

Comme lexcute SQL, il convient dlaborer la requte en suivant ces tapes.

- Exemples

Par ville, nombre de muses et nombre de visiteurs annuels (table MUSEE)

select Ville, count(*) as [Nombre muses], sum(NbVisiteurs) as [Nombre visiteurs]
from MUSEE
group by Ville ;

Nombre dexpertises ralises par expert

select NomExp, count(DateExp) as [Nombre expertises]
from EXPERTISE EE, EXPERT E
where EE.NoExpert = E.NoExpert
group by NomExp
order by 1 ;
(On a ordonn les enregistrements par ordre alphabtique des noms dexperts)

Nombre de tableaux raliss par peintre, les noms des peintres commenant par la
lettre B ou V

select NomPeintre, count(NomTab) as [Nombre de tableaux]
from PEINTRE P, TABLEAU T
where P.NoPeintre = T.NoPeintre
and ((NomPeintre like "B*") or (NomPeintre like "V*"))
group by NomPeintre
order by 1 ;

Critres sur les groupes denregistrements clause having

On peut dfinir des critres sur les groupes denregistrements. Un critre non respect
par un groupe limine ce groupe du rsultat de la requte.
Dans le fonctionnement de la requte (voir ci-dessus tape 4 bis), la clause
facultative having est prise en compte par SQL juste aprs la clause group by, crant les
regroupements.

Par dfinition, il ne peut y avoir une clause having sans la clause pralable group by.
Les enregistrements sont regroups selon des valeurs identiques de champs (group by), puis
ne sont gards que les groupes ayant certains critres (having).



COURS BARDON - ACCESS 2010 / CHAPITRE 11
111
- Exemples

Reprenons certains exemples en ajoutant des conditions respecter par les groupes
denregistrements.

Nombre des peintres par nationalit, parmi ceux qui ne sont pas franais

select Nationalite, count(*) as [Nombre de peintres]
from PEINTRE
group by Nationalite
having Nationalite <> "franais"
order by 1 ;
(Ne pas mettre despace entre les deux signes < et > de loprateur diffrent <>)

Par ville, nombre de muses ayant plus de 3 millions de visiteurs et nombre de
visiteurs
select Ville, count(*) as [Nombre muses], sum(NbVisiteurs) as [Nombre visiteurs]
from MUSEE
group by Ville
having sum(NbVisiteurs) > 3 ;
Nombre de tableaux raliss par peintre, les noms des peintres commenant par la
lettre B ou V

Le mme rsultat que celui de la requte prcdente peut tre obtenu en utilisant la
clause having :
select NomPeintre, count(NomTab) as [Nombre de tableaux]
from PEINTRE P, TABLEAU T
where P.NoPeintre = T.NoPeintre
group by NomPeintre
having (NomPeintre like "B*") or (NomPeintre like "V*")
order by 1 ;

Nombre de tableaux par peintre, des peintres ayant ralis au moins deux tableaux
(table TABLEAU)

select NomPeintre, count(NomTab) as [Nombre tableaux]
from PEINTRE P, TABLEAU T
where P.NoPeintre = T.NoPeintre
group by NomPeintre
having count(NomTab) >= 2
order by 1 ;
(Au lieu dcrire >=2, on peut taper > 1)



COURS BARDON - ACCESS 2010 / CHAPITRE 12
112
CHAPITRE 12 REQUETES ACTION



On appelle requte action une requte servant :
- Soit crer, modifier ou supprimer une table,
- Soit ajouter, modifier ou supprimer des enregistrements.
On peut crer une requte action en mode Cration (cf. 1) ou en mode SQL (cf. 2).

1. REQUETES ACTION EN MODE CREATION

Il existe quatre types de requtes action.
Le premier type est Cration de table . Les trois autres types de requtes, Mise
jour , Ajout et Suppression , concernent les enregistrements.

Principe de cration dune requte action
- On affiche une requte slection en mode Cration.
- Puis on transforme cette requte slection en requte action : longlet Crer des
Outils de requte , on active lun des boutons du groupe Type de requte .
Transforme en requte action, le nom de la requte apparat dans le Volet de
navigation avec un point dexclamation noir et une icne indiquant son type.

Affichage et excution
Avant dexcuter une requte action, on peut visualiser son action en mode Feuille de
donnes : cliquez sur le bouton Affichage (onglet Crer des Outils de requte ).
Pour excuter la requte action : retournez si ncessaire en mode Cration (clic droit sur
longlet de la requte > Mode Cration), et cliquez sur le bouton Excuter .

Il se peut quune macro dAccess empche la cration dune requte action.
Si en dessous du ruban, apparat le message : Avertissement de scurit Du contenu de la base a t
dsactiv , suivi dun bouton Options :
Cliquez sur le bouton Options , cochez Activer ce contenu , validez. La requte slection, devenue
requte action, saffiche dans le Volet de navigation.

Cration de table

On a cr une requte slection, et on souhaite crer une table analogue son rsultat.
Une requte de type Cration de table permet de crer cette table.

Exemple
On utilisera la table PEINTRE dfinie au chapitre 7.
Nous raliserons la requte de slection qui renvoie les peintres de numros 1 10, ni
grecs et ni allemands. Seront affichs les numros, les noms et les nationalits des peintres.
Puis nous crerons une table analogue au rsultat de la requte.

1) En mode Cration, ralisez la requte slection :
Affichez la table PEINTRE.
Affichez le champ NoPeintre. Sur sa ligne Critres , tapez : entre 1 et 10.
Affichez le champ NomPeintre.
COURS BARDON - ACCESS 2010 / CHAPITRE 12
113
Affichez le champ Nationalite. Sur sa ligne Critres , tapez : pas grec et pas
allemand.
Laissez coches les trois cases de la ligne Afficher .
Enregistrez la requte.

2) Transformez la requte slection en requte action de type Cration de table :
- Affichez la fentre Cration de table : longlet Crer des Outils de
requte , dans le groupe Type de requte , activez le bouton Cration
de table .
- Dans la fentre Cration de table , saisissez un nom. Validez.

3) Affichage et excution :
- Si vous le souhaitez, affichez dabord le rsultat de la requte action. Puis
repassez en mode Cration pour excuter la requte.
- Excutez la requte slection en activant le bouton Excuter .

La nouvelle table apparat dans le Volet de navigation.

Si on modifie cette requte action (par exemple, en ajoutant sur le champ
AnneeNaissance le critre : < 1500), puis si on lexcute nouveau, la table sera modifie en
consquence. Testez.

Modification des enregistrements dun champ : requte de type Mise jour

On a utilis prcdemment la fentre Rechercher et remplacer pour remplacer une chane de
caractres dans une feuille de donnes (cf. chapitre 4 1 Rechercher et remplacer une chane de caractres ).
Une requte de modification des enregistrements permet de remplacer la valeur dun
champ par une autre valeur. Les valeurs dun seul champ peuvent tre modifies.

Exemple
On utilisera la table PEINTRE dfinie au chapitre 7.
On souhaite remplacer dans les enregistrements de cette table la nationalit
nerlandais par la nationalit hollandais .

1) En mode Cration, ralisez la requte slection.
Affichez le champ Nationalite de la table PEINTRE. Enregistrez la requte.

2) Transformez la requte slection en requte action de type Mise jour :
longlet Crer des Outils de requte , dans le groupe Type de requte , activez
le bouton Mise jour .
Dans la grille de cration de la requte action, la ligne Afficher a t
remplace par la ligne Mise jour .

3) Indiquez les modifications effectuer :
A la ligne Critres du champ Nationalite, saisissez la valeur modifier :
nerlandais.
A la ligne Mise jour du mme champ, saisissez la nouvelle valeur :
hollandais.
4) Affichage et excution :
- Si vous le souhaitez, affichez dabord la requte. Elle prsente la table des
enregistrements qui seront modifis (dans lexemple : les enregistrements
COURS BARDON - ACCESS 2010 / CHAPITRE 12
114
des peintres de nationalit nerlandaise). Repassez en mode Cration pour
excuter la requte.
- Excutez la requte.

Ouvrez la table PEINTRE, vrifiez que la mise jour a bien t effectue.

On peut se servir de la requte action pour effectuer de nouvelles modifications.
Exemple : Modifiez la table PEINTRE pour obtenir nouveau la table dorigine :
- Ouvrez la requte action en mode Cration.
A la ligne Critres, tapez hollandais.
- A la ligne Mise jour , tapez nerlandais.
- Excutez la nouvelle requte action.

Ajout denregistrements

Une requte ajout denregistrements permet dajouter des enregistrements en
provenance dune autre table, en fonction de critres dfinis.

Exemple
On utilisera la table TABLEAU dfinie au chapitre 7.
On souhaite lui ajouter les tableaux n
os
7, 8 et 9 provenant de la table AUTRETAB.
Pour tester lexemple, nous vous invitons crer une nouvelle table, nomme
AUTRETAB, contenant uniquement les trois enregistrements. Enregistrez, puis fermez la table.

NoTableau NomTab Bois/Toile DateTab NoPeintre NoMusee
() () () () () ()
7 Le Tmraire toile 1838 15 15
8 La Pie toile 1869 16 13
9 Les Baigneuses toile 1918 17 13
() () () () () ()


1) Crez une requte de slection.
Slectionnez en premire colonne tous les champs de la table AUTRETAB en cliquant
sur AUTRETAB.*.
Colonne suivante, affichez le champ NoTableau. Sur sa ligne Critres , tapez : 7
ou 8 ou 9 (il y a trop peu denregistrements pour utiliser les oprateurs < ou >,
mme si cest possible). Dcochez sa case Afficher , la case de la prcdente
colonne affichant tous les champs (donc NoTableau), tant coche.
Enregistrez la requte.

2) Transformez la requte en requte action de type Ajout .
- Affichez la fentre Ajout : longlet Crer des Outils de requte ,
dans le groupe Type de requte , activez le bouton Ajout .
- Renseignez la zone de saisie : Ajouter : ouvrez le menu droulant
et slectionnez la table TABLEAU. Validez.

3) Dans la grille de cration de la requte action, la ligne Afficher est remplace
par la ligne Ajouter .
COURS BARDON - ACCESS 2010 / CHAPITRE 12
115
Except en 1
re
colonne o sont prciss tous les champs (TABLEAU.*), ne
laissez aucun nom de champ sur cette ligne. Il ferait double emploi, et lajout ne
pourrait pas se faire, le message derreur Destination de sortie (nom du champ)
rplique saffichant alors.
Sur cette ligne, supprimez donc le champ NoTableau (dj prsent en 1
re

colonne).

4) Affichage et excution :
- Si vous le souhaitez, affichez dabord la requte. Elle affichera la table des
enregistrements qui seront ajouts (dans lexemple : les enregistrements
des tableaux n
os
7, 8 et 9). Repassez en mode Cration.
- Excutez la requte.

Ouvrez la table TABLEAU. Vrifiez que les tableaux n
os
7, 8 et 9 ont bien t ajouts.

Suppression denregistrements

Une requte de suppression denregistrements permet de supprimer des enregistrements
en fonction de critres dfinis.

Exemple :
On utilisera la table TABLEAU dfinie au chapitre 7.
Au pralable, vous pouvez copier la table pour sauvegarder la table originale.
On souhaite supprimer de la table TABLEAU tous les tableaux sur bois, ainsi que tous les
tableaux raliss entre 1700 et 1800.

1) Crez la requte slection qui slectionne les enregistrements effacer :
Affichez le champ Bois/Toile. A la ligne Critres de ce champ, tapez bois.
Affichez le champ DateTab. Sur la ligne suivante de la zone de critres,
tapez : entre 1700 et 1800 (les tableaux supprims sont sur bois Ou raliss entre
1700 et 1800).

2) Transformez cette requte en requte action de type Suppression : longlet
Crer des Outils de requte , dans le groupe Type de requte , activez le
bouton Suppression .
Dans la grille de cration, la ligne Afficher est remplace par la ligne
Supprimer . Dans le cas prsent, laissez le O .

3) Il est prudent dans ce type de requte dactiver le bouton Affichage , avant
dexcuter la requte. Lannulation des enregistrements est en effet dfinitive. Sont
affichs les enregistrements qui seront supprims lexcution de la requte action.
Excutez la requte.

Ouvrez la table TABLEAU. Vrifiez que les tableaux sur support bois ont bien t
supprims.

On peut utiliser nouveau la requte action pour supprimer dautres enregistrements, en
appliquant de nouveau critres.

COURS BARDON - ACCESS 2010 / CHAPITRE 12
116
2. REQUETES ACTION EN MODE SQL

Les requtes action en mode SQL sont beaucoup moins utilises que les requtes de
slection. Leur syntaxe est aise. Nous en donnons ci-aprs un aperu.

Crer, modifier ou supprimer une table

- Crer une table

En mode SQL, il est possible de crer une table, en constituant sa structure : noms et
types des champs, attribution ventuelle dune cl primaire.

La syntaxe dune requte de cration dune table est :
create table (nom de la table)
(champ1 type1, champ2 type2, ) ;
Les types de donnes principaux sont :
- counter : Numro automatique
- char (longueur) : Texte (nombre de caractres maximum).
Si on ne prcise pas de longueur, elle est maximale ( lorigine, par dfaut,
une valeur de type Texte comporte au maximum 255 caractres).
- integer : Entier
- float : Rel
- date : Date/Heure

Pour attribuer une cl primaire un champ, tapez primary key juste aprs le type du
champ.

Exemple
Pour crer la table PERSONNE constitue des champs : NoPersonne, Nom,
DateNaissance et Poids, excutez la requte :
create table PERSONNE
(NoPersonne counter primary key, Nom char (20), [Date Naissance] date, Poids float) ;

Un objet table ou champ comportant un espace ou un caractre spcial, doit tre plac entre crochets.

Ouvrez la table PERSONNE en mode Cration. Vrifiez les lments dfinis dans la
requte : les types de donnes des champs, la taille du champ Nom ainsi que la prsence de la
cl primaire sur le champ NoPersonne.

- Modifier une table

Modifier une table consiste modifier sa structure, cest--dire modifier, ajouter ou
supprimer des champs.
Fermez la table (clic droit sur son onglet > Fermer), avant deffectuer toute modification
de ses champs.
Modifier un champ

On ne peut modifier quun seul champ la fois. La modification peut porter sur le type
du champ ou sur lattribution dune cl primaire.

COURS BARDON - ACCESS 2010 / CHAPITRE 12
117
La syntaxe dune requte de modification dun champ est :
alter table (Nom de la table)
alter column champ type ;
(alter signifie changer)

Si on change le type dun champ, le nouveau type doit tre compatible avec les valeurs
contenues dans le champ.
Exemple : si le champ contient des n
os
de tlphone de type integer, on peut lui attribuer
le type char. Par contre, si un champ contient du texte, on ne peut pas lui attribuer le type
integer, ni le type float.

Exemple
Dans la table PERSONNE, le champ Nom a une longueur maximale de 20 caractres.
Attribuons-lui une nouvelle longueur maximale de 50 caractres :
alter table PERSONNE
alter column Nom char (50) ;
Ouvrez la table PERSONNE en mode Cration, et vrifiez la nouvelle taille du champ.

Ajouter un champ

On peut ajouter plusieurs champs la fois, galement dfinir une cl primaire en tapant
lexpression primary key juste aprs le type du champ.

La syntaxe dajout dun champ est :
alter table (nom de la table)
add column champ1 type1, champ2 type2 ;
(add signifie ajouter)

Exemple
Ajoutez le champ Ville et le champ Nombre denfants la table PERSONNE :
alter table PERSONNE
add column Ville char (30), [Nombre denfants] integer ;
Ouvrez la table PERSONNE en mode Cration, et vrifiez la prsence et les types des
deux nouveaux champs.

Supprimer un champ

On ne peut supprimer quun seul champ la fois.

La syntaxe de la requte de suppression dun champ est :
alter table (nom de la table)
drop column champ ;
(drop signifie laisser tomber)

Exemple
Supprimez le champ Poids de la table PERSONNE :
alter table PERSONNE
drop column Poids ;
Ouvrez la table PERSONNE en mode Cration, et vrifiez que le champ Poids a bien t
supprim.

COURS BARDON - ACCESS 2010 / CHAPITRE 12
118
- Suppression dune table

Fermez la table (clic droit sur son onglet > Fermer), avant de la supprimer.

La syntaxe de la requte de suppression dune table est :
drop table (nom de la table) ;

Exemple
Supprimez la table PERSONNE :
drop table PERSONNE ;
Vrifiez que son nom nest plus affich dans le Volet de navigation.

Ajouter, modifier ou supprimer des enregistrements

- Ajout dun enregistrement

La syntaxe dajout dun enregistrement est :
insert into (nom de la table) (champ1, champ2, )
values (valeur1, valeur2, ) ;

Les valeurs doivent tre saisies dans lordre des champs et correspondre chacune au
type de donnes du champ.
Les valeurs de type Texte sont saisies entre guillemets.
Les valeurs de type Date/Heure sont saisies entre signes dises # : #nb1/nb2/aaaa#
Si le nombre nb1 est infrieur ou gal 12, la date sera saisie au format amricain :
mm/jj/aaaa (cf. chapitre 11 5, Dates et heures, format franais et format amricain ).
Une absence de valeur dans un champ est indique par la valeur Null.
On nindique pas un champ de type Numro automatique, Access saisissant
automatiquement une valeur dans ce champ.

Exemple
Crez une nouvelle table PERSONNE :
create table PERSONNE
(NoPersonne counter primary key, Nom char (20), [Date Naissance] date, Poids float,
Tel char (10)) ;
Ajoutez-lui lenregistrement suivant :
insert into PERSONNE (Nom, [Date Naissance], Poids, Tel)
values ("Eric", #05/12/1985#, 72.5, 0202020202) ;
Eric est n le 12 mai 1985. La date est entoure de dises et le jour est infrieur 12,
donc la date doit tre saisie au format amricain (mm/jj/aaaa).
Le sparateur de dcimales est le point (72.5), la virgule servant de sparateur de
champs.

Ajoutez un second enregistrement la table PERSONNE :
insert into PERSONNE (Nom, [Date Naissance], Poids, Tel)
values ("Fred", #21/09/1986#, Null, 0808080808) ;
Fred est n le 21 septembre 1986. Le jour est suprieur 12, donc la date doit tre saisie
au format franais (jj/mm/aaaa). Son poids est ignor, donc la valeur du champ est Null.


COURS BARDON - ACCESS 2010 / CHAPITRE 12
119
- Ajout de plusieurs enregistrements

Pour ajouter plusieurs enregistrements une table, on utilise une sous-requte.
La syntaxe dune requte dajout denregistrements est :
insert into (nom de la table) (champ1, champ2, )
(sous-requte) ;
Les mmes champs doivent figurer la ligne insert into de la requte et la clause
select de la sous-requte.
Remarque : la requte action contient une requte slection.

Exemple : Ajout denregistrements la table PERSONNE
Au pralable, crons une table avec des enregistrements. Avec une requte de slection
en sous-requte de la requte action, on puisera dans cette table pour ajouter des
enregistrements la table PERSONNE.

Cration dune table nomme CONTACT et saisie denregistrements dans cette table :


Cration de la table CONTACT :
create table CONTACT
(NoPersonne counter, Nom char (20), [date naissance] date, Tel char (10)) ;

Ajout de trois enregistrements la table CONTACT :
insert into CONTACT (Nom, [date naissance], Tel)
values ("Tina", #03/04/1990#, 0102030405) ;
(Tina est ne le 4 mars 1990)
insert into CONTACT (Nom, [date naissance], Tel)
values ("Karine", #21/04/1980#, Null) ;
(Karine est ne le 21 avril 1980)
insert into CONTACT (Nom, [date naissance], Tel)
values ("Fanny", #15/02/1970#, 1011121314) ;

Ajout denregistrements la table PERSONNE en utilisant la table CONTACT :
Ajoutons dans la table PERSONNE les enregistrements de la table CONTACT dont un
numro de tlphone est prcis.
insert into PERSONNE (Nom, [date naissance], Tel)
select Nom, [date naissance], Tel from CONTACT where Tel <> Null ;

- Modifier des enregistrements

On peut modifier des enregistrements, y compris des enregistrements dont les valeurs de
champs appartiennent des tables diffrentes (la requte contiendra alors des jointures).
La syntaxe dune requte de modification denregistrements est :
update table1, table2,
set champ1 =valeur1,
champ2 = valeur2,
where

Exemple

On utilisera les tables PEINTRE et TABLEAU dfinies au chapitre 7.
Attribuons le prnom Sandro au peintre Botticelli et modifions la date de ralisation
du tableau Le Printemps :
COURS BARDON - ACCESS 2010 / CHAPITRE 12
120
update PEINTRE P, TABLEAU T
set PrenomPeintre = "Sandro",
DateTab = 1479
where P.NoPeintre = T.NoPeintre and NomPeintre = "Botticelli"
and NomTab = "Le Printemps" ;
Remarque : un seul tableau de Botticelli tant prsent dans la table TABLEAU, les modifications seraient
galement effectues sans la prcision NomTab = "Le Printemps".

- Suppression denregistrements

La syntaxe dune requte de suppression denregistrements est :
delete
from (nom de la table)
where ;
(delete signifie effacer)

Si la requte na pas de clause where, tous les enregistrements de la table sont effacs.

Exemple
Supprimons les enregistrements prcdemment ajouts la table PERSONNE :
delete
from PERSONNE
where Nom in ("Tina", "Fanny") ;



COURS BARDON - ACCESS 2010 / CHAPITRE 13
121
CHAPITRE 13 LES FORMULAIRES



Le formulaire est la principale vitrine de la base de donnes, do limportance de sa
prsentation.
Si un formulaire affiche des donnes, gnralement en prsentant un seul enregistrement
la fois, son utilit principale est la saisie des donnes.

Les principaux modes daffichage dun formulaire sont :
- Le mode Cration : ce mode sert crer un formulaire ou modifier sa structure.
- Le mode Formulaire : ce mode permet de visualiser et de saisir des enregistrements.
- Le mode Page : cest un mode intermdiaire entre les deux prcdents, permettant
des modifications du formulaire et la consultation de ses donnes.
Dans ce mode daffichage, on peut effectuer certaines modifications de structure,
sans risque de modification des donnes.

Pour enregistrer, fermer ou passer un autre mode daffichage, faites un clic droit sur
longlet du formulaire, et activez la commande souhaite.
Pour passer un autre mode daffichage, on peut aussi : utiliser le bouton Affichage
(onglet Accueil) ou lun des boutons de la barre dtat (en bas, droite).
Quand on double-clique sur le nom dun formulaire du Volet de navigation, il souvre
en mode Formulaire.

Nous utiliserons dans les exemples les tables dfinies au chapitre 7.

1. CREER UN FORMULAIRE

Raliser un formulaire consiste prioritairement insrer des champs sur une feuille
vierge. Ces champs peuvent provenir de tables ou de rsultats de requtes.

Linsertion dun champ se traduit par laffichage sur le formulaire de deux contrles :
- Une tiquette portant la lgende, sinon le nom du champ, pour indiquer
lutilisateur ce qui a t saisi, ou ce quil doit saisir dans le contrle associ.
- Le contrle associ permettant dafficher ou de saisir une valeur du champ.
En fonction du type de donnes du champ, il est une zone de texte, une zone de
liste ou une case cocher.
Ce contrle hrite des proprits du champ, en particulier des proprits Lgende,
Format et Masque de saisie.

Il existe plusieurs mthodes de cration dun formulaire, que nous dtaillons plus loin :
- Le Formulaire vierge
- Cration rapide en deux clics
- L Assistant Formulaire
- Le mode Cration, mthode par excellence de cration dun formulaire.
Le formulaire ayant t cr, son nom saffiche dans le Volet de navigation.

Tables utilises dans les exemples : nous utiliserons les tables dfinies au chapitre 7.
COURS BARDON - ACCESS 2010 / CHAPITRE 13
122
Formulaire vierge

Il sagit dune mthode simple, quon peut utiliser ds lors quil y a peu de champs
insrer dans le formulaire. Elle permet dinsrer les champs souhaits, dans lordre souhait.
Pour crer un formulaire :
- A longlet Crer, dans le groupe Formulaires, activez le bouton Formulaire
vierge . Un formulaire vide est cr, affich en mode Page.
- Utilisez le volet, titr Liste de champs , pour insrer les champs souhaits dans
le formulaire. Cliquez sur le signe + dune table pour louvrir. Pour insrer un
champ : cliquez-glissez sur son nom jusquau formulaire, ou bien double-cliquez
sur son nom.
Le formulaire affiche louverture les valeurs du premier enregistrement.
Si on insre galement un champ dune table issue de la zone Champs disponibles
dans les tables associes , les valeurs correspondantes de ce champ saffichent en
dessous, en prsentation analogue celle dune Feuille de donnes. Cest un sous-
formulaire.

Exemple
Nous utiliserons les tables PEINTRE et TABLEAU dfinies au chapitre 7.
Aprs avoir activ le bouton Formulaire vierge , ouvrez la table PEINTRE, puis
double-cliquez sur les champs NoPeintre, NomPeintre, PrenomPeintre et Nationalite.
Ouvrez la table associe TABLEAU (une relation existe entre les tables PEINTRE et
TABLEAU, elle sappuie sur les champs correspondants NoPeintre). Cliquez-glissez sur le
champ NomTab jusquau formulaire.

On obtient :









Lexistence dune relation entre les tables PEINTRE et TABLEAU a permis la cration
automatique du sous-formulaire. Il affiche les noms des tableaux raliss par le peintre
indiqu au-dessus, dans le formulaire.
En bas de lcran, deux barres de boutons de dplacement permettent de passer dun
enregistrement un autre, galement de saisir un nouvel enregistrement ou de rechercher un
enregistrement. La barre infrieure est relative aux enregistrements du formulaire, et la barre
juste au-dessus concerne les enregistrements du sous-formulaire.

Cration rapide dun formulaire

En deux ou trois clics, le formulaire est gnr ! Il est affich en mode Page. Procdez
ainsi :
- Dans le Volet de navigation, cliquez sur une table ou sur une requte.
- A longlet Crer, groupe Formulaires, cliquez sur lun des boutons suivants, en
fonction de la prsentation du formulaire que vous souhaitez crer :
NoPeintre:
NomPeintre:
PrenomPeintre:
Nationalite:
1
Van Eyck
Jan
Nerlandais
NomTab
La Vierge au chancelier
Les Epoux Arnolfini
COURS BARDON - ACCESS 2010 / CHAPITRE 13
123
Formulaire
Tous les champs de la source de donnes (table ou requte) sont doffice insrs, avec
cration ventuelle dun sous-formulaire.
Exemple
Nous utiliserons les tables PEINTRE et TABLEAU dfinies au chapitre 7.
Cliquez sur la table PEINTRE (relie la table TABLEAU), puis activez le bouton
Formulaire . Il y a cration automatique dun sous-formulaire, dans lequel ont t insrs
les contrles correspondant aux champs de la table TABLEAU.
La prsentation est similaire celle du formulaire cr aprs activation du bouton
Formulaire vierge (voir paragraphe prcdent Formulaire vierge ).

Plusieurs lments
Cliquez sur le bouton Plus de formulaires > Plusieurs lments.
Plusieurs lments (enregistrements) sont affichs : il ny a pas un enregistrement
par page comme prcdemment, mais un enregistrement par ligne. La prsentation ressemble
celle dune Feuille de donnes, en tant beaucoup plus paramtrable.

Formulaire double affichage
Cliquez sur le bouton Plus de formulaires > Formulaire double affichage.
Comme son nom lindique, le formulaire prsente un double affichage :
- La partie suprieure affiche un enregistrement. On peut modifier les valeurs de
lenregistrement ou bien saisir les valeurs dun nouvel enregistrement.
- La partie infrieure prsente tous les enregistrements sous la forme dune Feuille de
donnes.
Quand on clique sur un enregistrement situ dans la partie infrieure, il saffiche dans la
partie suprieure.

Feuille de donnes
Cliquez sur le bouton Plus de formulaires > Feuille de donnes.
En cliquant sur le bouton Plus de formulaires , puis en choisissant loption Feuille
de donnes , un formulaire est gnr avec une prsentation analogue celle de la Feuille de
donnes.

Cration dun formulaire avec l Assistant Formulaire

Cette mthode permet une prsentation plus personnalise que les prcdentes.
Commencez par prciser la source de donnes du formulaire : dans le Volet de
navigation, cliquez sur une table ou sur une requte.
Puis affichez la fentre Assistant formulaire : longlet Crer, dans le groupe
Formulaires, cliquez sur le bouton Assistant Formulaire .

LAssistant pose des questions, et gnre le formulaire correspondant aux informations
donnes en rponses.

1
re
tape : Slection des champs
A laide des boutons >, >>, <, <<, ou bien par double-clic, slectionnez les champs que
vous souhaitez insrer dans le formulaire.
Vous pouvez slectionner des champs de plusieurs tables ou requtes.
COURS BARDON - ACCESS 2010 / CHAPITRE 13
124
Exemple : dans la table PEINTRE, slectionnez les champs NoPeintre, NomPeintre,
PrenomPeintre, Nationalite et dans la table TABLEAU, slectionnez les champs NomTab et
DateTab.

2
me
tape : Formulaires et sous formulaires
Si les champs proviennent dune seule table, on passe directement la 3
me
tape.
Sinon, les champs provenant de plusieurs tables relies, lAssistant propose un affichage
des donnes en un formulaire unique, en un formulaire avec sous-formulaire(s) (sur une
mme page) ou en formulaires, attachs. Quand cette dernire option est choisie, deux
formulaires sont crs, et le formulaire principal indique le formulaire attach.
Exemple : choisissez formulaire avec sous-formulaire.

3
me
tape : Disposition des champs
- Si les champs proviennent dune seule table, quatre dispositions sont
proposes pour le formulaire : Colonne simple, Tabulaire (cest--dire en forme de
tableau), Feuille de donnes et Justifi. En cochant sur une case doption, on peut
visualiser la disposition correspondante.
- Si les champs proviennent de plusieurs tables relies, deux dispositions sont
proposes pour le sous-formulaire : Tabulaire ou Feuille de donnes.
Exemple : laissez la case Feuille de donnes coche.

4
me
tape : Titre(s) Ouverture ou modification
Donnez un titre au formulaire, ventuellement au sous-formulaire. Par dfaut, le nom de
la table ou de la requte do sont issus les champs, leur est attribu.
Pour terminer, on choisit soit douvrir le formulaire en affichage mode Formulaire
(option par dfaut), soit de louvrir en mode Cration.
Exemple : ouvrez le formulaire en mode Formulaire.

Raliser un formulaire en mode Cration

Au lieu de crer un formulaire en utilisant lune des mthodes prcdentes, et de le
modifier ventuellement ensuite en mode Cration, on peut directement le crer en mode
Cration.
Cest la mthode par excellence de cration dun formulaire. Sil y en a une garder,
cest celle-l !
Ralisons un formulaire lmentaire en mode Cration.

Affichage du formulaire vide
A longlet Crer, dans le groupe Formulaires, activez le bouton Cration du
formulaire .
Un formulaire vide saffiche, sur sa section principale nomme Dtail (nous verrons
plus loin quun formulaire a cinq sections). La grille aide positionner les contrles.

Indication de la table ou de la requte pourvoyeuse de champs
Lindication de la source de donnes du formulaire seffectue dans sa Feuille de
proprits. Pour afficher celle-ci : longlet Cration, dans le groupe Outils, cliquez sur le
bouton Feuille des proprits . Elle comprend cinq onglets. Activez longlet Donnes.
Ouvrez le menu droulant de la proprit Source, et slectionnez la source de donnes
souhaite.
Exemple : slectionnez la table PEINTRE.

COURS BARDON - ACCESS 2010 / CHAPITRE 13
125
Insertion des champs
Affichez la liste des champs correspondant la source de donnes indique
prcdemment : longlet Cration des Outils de cration de formulaire , dans le groupe
Outils, cliquez sur le bouton Ajouter des champs existants .
Insrez les champs dans le formulaire : cliquez-glissez sur le nom du champ jusqu
lemplacement souhait sur le formulaire (les contrles sont ensuite repositionnables). A
chaque champ insr, sont crs sur le formulaire une tiquette et un contrle zone de saisie :

Nom du champ:
(tiquette) (zone de saisie)

Exemple : insrez les champs de la table PEINTRE, puis cliquez sur le bouton Affichage
pour ouvrir le formulaire en mode Formulaire.

- Trois modes daffichage supplmentaires
Ralis en mode Cration, un formulaire dispose de trois modes daffichage
supplmentaires : le mode Feuille de donnes, le mode Tableau crois dynamique et le mode
Graphique crois dynamique.


2. GESTION DES DONNEES DUN FORMULAIRE

Si le formulaire est ferm, ouvrez-le en double-cliquant sur son nom dans le Volet de
navigation. Le formulaire apparat en mode Formulaire.
Pour grer les donnes dun formulaire, on laffiche en mode Formulaire. Sil ne lest
pas dj :
- Faites un clic droit sur longlet du formulaire > Mode Formulaire
- Ou bien, si le formulaire est ouvert en mode Cration, vous pouvez galement
activer le bouton Affichage, longlet Cration.
Un bouton appel slecteur prcde chaque enregistrement. Laffichage dun
trianglesur ce bouton indique lenregistrement courant.

Boutons de dplacement : navigation, nouvel enregistrement et rechercher

Navigation dun enregistrement lautre
On peut atteindre un enregistrement :
- En utilisant les raccourcis clavier
- En utilisant les boutons de dplacement situs en bas du formulaire.

Sur un formulaire contenant un enregistrement par page :

Pour atteindre Raccourcis clavier Boutons de dplacement
Le 1
er
enregistrement Ctrl + Dbut (HOME) (premier champ) I(mme champ)
Lenregistrement prcdent PgUp (Page Up)
Lenregistrement suivant PgDn (Page Down)
Le dernier enregistrement Ctrl + fin (End ou ) (dernier champ) I (mme champ)

Nom du champ
COURS BARDON - ACCESS 2010 / CHAPITRE 13
126
Sur un formulaire avec une prsentation des enregistrements sur lignes successives, la
navigation seffectue comme sur une feuille de donnes (cf. chapitre 3 1).

Dans la barre, est indique la position de lenregistrement courant sur le nombre total
denregistrements. On peut cliquer sur cette zone, saisir le rang dun enregistrement, puis
valider pour afficher lenregistrement correspondant.

Lactivation du bouton dinfo-bulle Nouvel enregistrement permet dajouter
un enregistrement.

La zone de saisie titre Rechercher permet de saisir une valeur ou une valeur
partielle de champ, qui sera mise alors en vidence dans le formulaire.
Si plusieurs champs ou enregistrements contiennent la chane de caractres recherche,
appuyez sur la touche Entre pour les atteindre successivement.

Modifier, ajouter ou supprimer un enregistrement

Toute modification, ajout ou suppression denregistrement est rpercut sur la table.
Affichez le formulaire en mode Formulaire.

Modification dun enregistrement

Cliquez dans la zone de saisie de la valeur modifier.
Pour annuler une modification avant validation, appuyez sur la touche Echap (Esc).
Pour modifier la valeur dun champ de type Lien hypertexte , affichez la fentre
Insrer un lien hypertexte : clic droit dans la cellule > Lien hypertexte > Modifier le lien
hypertexte.

Ajout dun enregistrement

Dans la barre du formulaire, cliquez sur le bouton Nouvel enregistrement . Ou
bien : tant sur le dernier enregistrement (formulaire avec un enregistrement par page),
appuyez sur la touche PgDn (Page Down).
Saisissez les valeurs des champs du nouvel enregistrement.
Pour rpter une mme valeur de champ que celle de lenregistrement prcdent, tapez
Ctrl + (apostrophe).
Les contrles issus de champs de type NumroAuto ou ceux auxquels on a attribu une
valeur par dfaut, sont automatiquement renseigns par Access.
Pour passer dune zone de saisie une autre, utilisez la touche Tab ou la touche Entre.
Le passage lenregistrement suivant valide lenregistrement dont les valeurs de
champs viennent dtre saisies.
Exemple
Crez le formulaire Peintre insrant les champs de la table PEINTRE, avec cration
automatique de son sous-formulaire insrant les champs de la table TABLEAU :
Cliquez sur la table PEINTRE, puis cliquez sur le bouton Formulaire du groupe
Formulaires, longlet Crer.
Passez en mode Formulaire : clic droit sur son onglet > Mode Formulaire.
Ajoutez les deux nouveaux enregistrements suivants :
- Dans le formulaire Peintre : Morisot, Berthe, franais, 1841, 1895.
- Dans le sous-formulaire : 126, Le Berceau, toile, 1873, 21.
COURS BARDON - ACCESS 2010 / CHAPITRE 13
127
On a suppos que le numro du peintre ajout tait 21, en type NumroAuto. Sinon, sil est de type
Numrique, tapez 21 en valeur de champ NoPeintre.

Suppression dun enregistrement

Slectionnez lenregistrement en cliquant sur son slecteur, plac gauche.
Puis appuyez sur la touche Suppr. Confirmez la suppression.
Si la table do sont issus les champs du formulaire, est en relation avec une autre table,
la suppression dun enregistrement peut ncessiter au pralable la suppression de cette
relation (cf. chapitre 6 RELATIONS ENTRE LES TABLES).

Rechercher et remplacer, trier et filtrer

Le fichier tant affich en mode Formulaire, on utilise les boutons placs dans les
groupes Trier et filtrer et Rechercher de longlet Accueil.
On applique les mmes mthodes que celles appliques aux donnes dune table
affiche en mode Feuille de donnes (cf. chapitre 4 TABLE : RECHERCHER ET REMPLACER,
TRIER ET FILTRER).


3. PERSONNALISATION DUN FORMULAIRE

La personnalisation dun formulaire affectant sa structure, on laffiche en mode
Cration : faites un clic droit sur longlet du formulaire > Mode Cration.
Sur le ruban, les Outils de cration de formulaire sont rpartis sur deux onglets :
Cration et Rorganiser .

Les cinq sections dun formulaire

Jusqu prsent, nous navons utilis que la section Dtail , qui est la section
principale du formulaire. Les enregistrements sont affichs sur cette section.
Un formulaire comporte quatre autres sections, dont lusage est facultatif.
Un clic droit sur la barre de titre dune section donne accs plusieurs commandes :
- Affichage des rgles ou de la grille, qui facilitent le positionnement des contrles
- Affichage dautres sections
- Affichage de la Feuille de proprits de la section.
Inutile dessayer dcrire dans une section (testez !). Tout se fait par insertion de
contrles.

Len-tte et le pied de formulaire
Len-tte peut notamment contenir le titre du formulaire.
Pour quun en-tte ou un pied de formulaire napparaisse pas en mode Formulaire,
donnez la valeur Non sa proprit Visible : affichez sa feuille de proprits en faisant un clic
droit sur sa barre de titre > Proprits, puis slectionnez Non sur la ligne de la proprit
Visible (onglet Format).

Len-tte et le pied de page
Len-tte et le pied de page ne sont visibles quen mode Cration.
A limpression, ils apparaissent sur chaque page du formulaire.
Pour modifier la hauteur (ou largeur) dune section, il y a deux mthodes :
COURS BARDON - ACCESS 2010 / CHAPITRE 13
128
- Cliquez-glissez sur le bord infrieur (ou le bord droit) de la section
- Ou bien : faites un clic droit sur la barre de titre de la section > Proprits, puis
tapez la hauteur (ou largeur) souhaite dans la zone de saisie Hauteur (ou
Largeur ) de la Feuille de proprits.

Feuille de proprits

Le formulaire tant affich en mode Cration, chaque objet (contrle, section,
formulaire) a sa Feuille de proprits , quon peut afficher droite de lcran.
Elle est essentielle car on peut y dfinir ou y modifier les proprits, cest--dire les
caractristiques de lobjet (lgende, nom, taille, couleur).

Si aucune Feuille de proprits nest affiche :
Le plus rapide : double-cliquez sur lobjet.
Sinon, pour afficher la Feuille de proprits :
- Dun contrle : faites un clic droit sur le contrle > Proprits.
- Dune section : faites un clic droit sur sa barre de titre > Proprits.
- Dun formulaire : il faut dabord le slectionner : cliquez dans la case juste en dessous de son
onglet. Un carr noir

apparait alors dans cette case. Faites un clic droit dessus > Proprits.

Si la Feuille de proprits dun autre objet est dj affiche :
Cliquez sur lobjet dont vous souhaitez afficher la Feuille de proprits.

La Feuille de proprits dun objet comprend cinq onglets : Format, Donnes,
Evnement, Autres et Toutes. Longlet Toutes affiche toutes les proprits de lobjet.
Il existe des centaines de proprits. Pour obtenir des explications sur une proprit,
cliquez dans sa ligne, puis appuyez sur la touche F1.

Mise en forme dun formulaire

Le formulaire tant affich en mode Cration, utilisez longlet Cration des Outils
de cration de formulaire , les boutons du groupe Thmes : Thmes, Couleurs et Polices.

Pour insrer une image en arrire-plan du formulaire, affichez la Feuille de proprits
du formulaire. Puis longlet Format du volet, dfinissez la proprit Image .
Pour appliquer une couleur en arrire-plan dune section, affichez la Feuille de
proprits de la section. Puis longlet Format du volet, dfinissez la proprit Couleur de
fond .


4. LES CONTROLES

Affichons un formulaire en mode Cration.
A longlet Cration, le groupe Contrles propose de nombreux contrles.
Pour insrer lun deux sur le formulaire, cliquez sur le bouton correspondant pour le
slectionner, puis cliquez-glissez en diagonale sur le formulaire. Vous pourrez ensuite
dplacer le contrle et lui donner une autre taille (voir le paragraphe Gestion des contrles
dans ce 4).

COURS BARDON - ACCESS 2010 / CHAPITRE 13
129
Pour insrer plusieurs fois de suite le mme contrle, double-cliquez dessus pour le
slectionner (au lieu dun simple clic). En fin dutilisation, appuyez sur la touche Echap (Esc)
ou appuyez nouveau sur le bouton du contrle.
Crez un formulaire vierge ( longlet Crer, cliquez sur le bouton Formulaire
vierge ), puis passez en mode Cration, et testez les boutons de contrles du groupe
Contrles.
Linsertion de certains contrles entrane laffichage dune fentre, qui peut tre un
Assistant. Sil ne lest pas dj, activez le bouton Utiliser les Assistants Contrle plac
dans le groupe Contrles. Cela permet quAccess puisse lancer si ncessaire un Assistant.
LAssistant aide paramtrer certains contrles. On peut ensuite complter ou modifier le
paramtrage ainsi effectu.

Pour afficher la Feuille de proprits dun contrle, double-cliquez sur le contrle si une
Feuille de proprits nest pas dj affiche, sinon un simple clic sur le contrle suffit
louvrir.
Vrifiez toujours quil sagit bien de la Feuille de proprits du contrle (et non de son tiquette, erreur
frquente) : vrifiez le Type de slection et juste en dessous, le nom du contrle (ce nom est galement
affich longlet Autres de la Feuille de proprits du contrle).

Contrles indpendants, contrles dpendants et contrles calculs

- Contrle indpendant

Un contrle indpendant ne dpend daucun champ. Quand on change denregistrement,
le contenu de ce type de contrle est le mme, son affichage reste fixe.
Exemples : titre, tiquette, cadre dobjet indpendant, image.

- Contrle dpendant

Un contrle dpendant est utilis pour insrer des champs provenant dune table ou
dune requte.
Lors de linsertion dun champ sur le formulaire, Access choisit le contrle le plus
adapt au Type de donnes du champ : zone de texte, zone de liste droulante ou case
cocher.

Zone de texte : insr dans un formulaire, un champ de type Texte, sur lequel on na
pas dfini de liste de choix, entrane laffichage dune tiquette associe une zone de texte.
En mode Formulaire, le texte de ltiquette ne change pas, tandis que la valeur de la zone de
texte dpend de la valeur du champ de lenregistrement.

Zone de liste droulante : insr dans un formulaire, un champ de type Texte, sur
lequel on a dfini une liste de choix, entrane laffichage dune tiquette associe une zone
de liste droulante.

Case cocher : insr dans un formulaire, un champ de type Oui/Non entrane
laffichage dune tiquette associe une case cocher ( condition que, dans la table source, la
valeur par dfaut de la proprit Afficher le contrle , prsente longlet Liste de choix nait pas t
modifie et remplace par la valeur zone de texte ou zone de liste droulante - cf. chapitre 5 1 C
Format dun champ de type Oui/Non ).

COURS BARDON - ACCESS 2010 / CHAPITRE 13
130
En revanche si on insre directement dans un formulaire une zone de texte, une zone de liste ou une case
cocher, le contrle ntant reli aucun champ, il est indpendant. Dans sa Feuille de proprits, sa proprit
Source contrle (onglet Donnes) est vide.
N.B. : Dans une Source contrle, on ne peut saisir valablement un nom de champ disponible, que si
celui-ci a t insr dans le formulaire (quitte supprimer ensuite ltiquette correspondante et donner la valeur
Non la proprit Visible du contrle associ).

En contrles dpendants, sont galement souvent utilises la zone de liste et les cases
doption :

Zone de liste : elle se diffrencie de la zone droulante par son absence de zone dans
laquelle on peut taper une valeur. On ne peut effectuer une saisie quen cliquant sur une
valeur de la liste affiche.

Groupe de cases doption

Au lieu de proposer une liste de valeurs, on peut prfrer, lorsque les valeurs sont fixes
et peu nombreuses, prsenter un groupe de cases doption.
Lexemple frquemment cit, est celui de la civilit, o trois cases doption sont
proposes :
M. Mme Melle

Autre exemple
Dans un formulaire ralis partir de la table TABLEAU, nous allons crer un groupe
de cases doption pour le champ Bois/Toile. Il remplacera la zone de liste et son tiquette
associe.

1) Cration du formulaire.
Cliquez sur le bouton Cration du formulaire . Dans la Feuille de proprits du
formulaire vide, slectionnez la table TABLEAU en proprit Source (onglet Donnes).
Puis activez le bouton Ajouter des champs existants , et insrez dans le formulaire
tous les champs de la table.

2) Cration du groupe de cases doption
Nous utiliserons lAssistant Groupe doptions. Dans le groupe Contrles, activez le
bouton Groupe doptions , puis cliquez-glissez en diagonale sur le formulaire pour insrer
le contrle.
En noms dtiquettes des cases doption, tapez Bois, puis Toile. En valeur par dfaut,
slectionnez Toile.
Gardez les valeurs 1 et 2. Ce seront les valeurs respectivement stockes dans le champ
Bois/Toile correspondant aux saisies Bois et Toile .
La fentre suivante, choisissez Stocker la valeur dans ce champ , et slectionnez le
champ Bois/Toile. Validez.
Slectionnez ltiquette du groupe doptions. Saisissez en proprit Lgende (onglet
Format) : Support: . Si ncessaire, largissez ltiquette (cliquez-glissez sur un ct).
Testez les cases doption en mode Formulaire.
Affichez le formulaire en mode Feuille de donnes : ce sont bien les valeurs 1 et 2 qui sont stockes,
correspondant aux saisies respectives Bois et Toile.

Civilit:
COURS BARDON - ACCESS 2010 / CHAPITRE 13
131
3) Vous pouvez supprimer la zone de liste droulante Bois/Toile et ltiquette associe,
elles font double emploi avec le groupe de cases doption et son tiquette que lon vient de
crer.

- Contrle calcul

Un contrle calcul est une zone de texte contenant dans sa proprit Source
contrle une expression prcde du signe gal =. Lexpression peut dpendre de plusieurs
champs du formulaire.
Il existe trois mthodes pour saisir une expression :
- Soit directement dans la Feuille de proprits, la ligne Source contrle ,
- Soit on clique sur les points au bout de la ligne Source contrle et on saisit
lexpression dans la fentre du Gnrateur dexpression,
- Soit on la saisit dans la zone de texte elle-mme.
Les champs utiliss dans une expression doivent avoir t insrs dans le formulaire.
Si on ne veut pas quapparaissent sur le formulaire ltiquette et le contrle associ dun champ insr, il
suffit de supprimer son tiquette et dattribuer la valeur Non la proprit Visible (onglet Format) du
contrle associ.
Pour ajouter des champs, utilisez longlet Cration, dans le groupe Outils , le
bouton Ajouter des champs existants .

Exemple
Crons un formulaire dans lequel nous insrerons deux contrles calculs, crs
partir de champs de la table PEINTRE.

Crons un formulaire vierge : longlet Crer, dans le groupe Formulaires, activez le
bouton Formulaire vierge . Affichez-le en mode Formulaire.
Insrons dans ce formulaire deux contrles calculs :
- Le premier contrle utilisera les champs NomPeintre et PrenomPeintre. Il
convient donc dinsrer dabord ces champs dans le formulaire.
On peut ensuite supprimer les deux tiquettes des champs et donner la valeur Non la proprit
Visible (onglet Format) des deux zones de texte associes.
Puis insrez une zone de texte sur le formulaire.
Tapez-y lexpression : = NomPeintre & " " & PrenomPeintre
Passez en mode Formulaire, et testez le rsultat sur plusieurs enregistrements.
- Le second contrle utilisera les deux champs AnneeNaissance et AnneeDeces.
Comme prcdemment, insrez dabord ces deux champs dans le formulaire.
Puis insrez une zone de texte.
Remplacez la lgende de ltiquette associe en tapant : Dure de vie.
Dans la zone de texte, tapez lexpression : = AnneeDeces AnneeNaissance &
" ans".
Passez en mode Formulaire, et testez le rsultat sur plusieurs enregistrements.

Champ cl primaire et champ cl trangre
Usuellement, le champ cl primaire dune table est de type NumroAuto.
Le champ cl trangre correspondant au champ cl primaire, est ordinairement de type
Numrique. La zone de texte associe est un contrle calcul, qui a pour valeur de Source
contrle : = [champ cl primaire].
Lutilisateur nayant pas saisir de valeur, ltiquette est supprime et la zone de texte est rendue
invisible lutilisateur (en donnant la valeur Non sa proprit Visible).

COURS BARDON - ACCESS 2010 / CHAPITRE 13
132
Exemple
Ralisons un formulaire en mode Cration (activez le bouton Cration du
formulaire , cf. 1 de ce chapitre Raliser un formulaire en mode Cration ) dans lequel
nous insrons les champs NoPeintre, NomPeintre de la table PEINTRE et les champs NomTab
et NoPeintre de la table TABLEAU.
Dans la zone de texte dpendant du champ NoPeintre de TABLEAU, effacez le nom et
tapez sa place lexpression = NoPeintre.
Passez en mode Formulaire, et saisissez un nouvel enregistrement. La zone de texte,
contrle calcul, est automatiquement renseigne, ds validation de la saisie dun numro de
peintre.
Supprimez ltiquette du champ NoPeintre, et donnez la valeur Non la proprit
Visible de la zone de texte associe.

Gestion des contrles

Elle seffectue en mode Cration du formulaire.
Pour grer un contrle, comme tout objet, il faut dabord savoir le slectionner. Un contrle
slectionn prsente un contour plus marqu, avec des poignes sur les cts, qui sont des
carrs servant au dplacement ou au redimensionnement du contrle.

Exemple :


Pour slectionner :
- Un seul contrle : cliquez-dessus. Ou bien, le curseur tant dans le contrle,
cliquez sur le bouton Slectionner du groupe Contrles.
- Plusieurs contrles : appuyez sur la touche Maj (Shift) et cliquez sur chaque
contrle slectionner.
Si les contrles sont juxtaposs, il est rapide de tracer un rectangle de slection :
cliquez-glissez en diagonale pour tracer un rectangle englobant les contrles.

Si le formulaire a une prsentation sous forme de tableau ou de feuille de donnes,
plusieurs des commandes suivantes ntant pas utiles, ne sont pas accessibles.

- Dplacement de contrles

Slectionn, un contrle prsente une poigne de dplacement : le plus grand carr
gauche. Cliquez-glissez sur ce carr pour dplacer le contrle (pointeur en croix flche ).
Pour dplacer plusieurs contrles, slectionnez-les, puis cliquez-glissez sur la slection
(pointeur en croix flche).

- Tailles de contrles

Taille de contrles : trois mthodes pour la modifier (sans ajustement)

- Un contrle slectionn prsente des poignes de dimensionnement : petits carrs
sur ses cts. Cliquez-glissez dessus permet de modifier la Taille du contrle
(pointeur en double-flche).
En cliquant-glissant sur un angle (pointeur en double-flche oblique), on garde la
proportion hauteur / largeur du contrle.
COURS BARDON - ACCESS 2010 / CHAPITRE 13
133
Si on a slectionn plusieurs contrles, la modification de taille par cliqu-gliss
sur lun, est automatiquement effectue sur les autres.
- Pour effectuer de petites modifications de taille : aprs slection, appuyez sur la
touche Maj (Shift) et utilisez les touches flches du clavier.

- Pour donner une valeur numrique une hauteur ou une largeur, affichez la
Feuille de proprits du contrle (double-cliquez sur le contrle). A longlet
Format, donnez les valeurs souhaites aux proprits Largeur et Hauteur.
Contrairement aux autres mthodes, celle-ci ne sapplique qu un seul contrle
la fois.

Ajustement de tailles de contrles

Nous prciserons les commandes utiliser sur le ruban. Il est galement possible de
procder en faisant un clic droit sur la slection, puis en choisissant loption souhaite.

- Ajustement de hauteurs de contrles par rapport la hauteur dun autre :
Aprs slection des contrles, longlet Organiser des Outils de cration de
formulaire , dans le groupe Redimensionnement et classement , activez le
bouton Taille/Espace, puis choisissez une option parmi : Au plus grand , Au
plus petit , Au plus large et Au plus troit .
Exemple : Ajuster Au plus grand donne tous les contrles slectionns la
hauteur du plus grand.

- Ajustement de la taille dun contrle indpendant, par rapport son contenu :
Aprs slection du contrle, choisissez dans le menu du bouton Taille/Espace
loption Au contenu . Cet ajustement ne peut sappliquer qu un contrle
indpendant (exemple : une tiquette).

- Disposition : alignement, espacement et ordre de superposition

Nous prciserons les commandes utiliser sur le ruban. Il est galement possible de
procder en faisant un clic droit sur la slection, puis en choisissant loption souhaite.
On utilise longlet Organiser, des commandes du groupe Redimensionnement et
classement .

Alignement de plusieurs contrles
Aprs slection des contrles, activez le bouton Aligner du groupe
Redimensionnement et classement . Choisissez une option parmi : Gauche, Droite, Haut et
Bas.
Exemple : aligner Gauche permet daligner les contrles slectionns au niveau du
bord gauche du contrle le plus gauche, excepts les contrles se situant sur la mme ligne
de la grille que le contrle le plus gauche. Ces derniers seront placs bord bord,
gauche.

Espacement entre les contrles
Aprs slection des contrles, activez le bouton Taille/Espace du
groupe Redimensionnement et classement :
- Pour espacer uniformment les contrles : activez le bouton Horizontal quilibr
ou le bouton Vertical quilibr .
COURS BARDON - ACCESS 2010 / CHAPITRE 13
134
- Pour augmenter lespace entre les contrles : activez le bouton Augmentation
horizontale ou le bouton Augmentation verticale .
- Pour diminuer lespace entre les contrles : activer le bouton Diminution
horizontale ou le bouton Diminution verticale .

Superposition des contrles
Des contrles tant superposs, on peut modifier lordre de superposition.
Aprs slection du contrle, activez dans le groupe Redimensionnement et
classement le bouton Mettre au premier plan ou le bouton Mettre larrire-plan .

- Mise en forme des contrles

Aprs slection de contrles, on peut modifier leur mise en forme en utilisant des
commandes du groupe Police longlet Format des Outils de cration de formulaire .
On peut modifier les paramtres : police, taille, gras, italique, soulign, alignement
(gauche, centre, droite), couleur du texte (par dfaut noir), couleur de larrire-plan (par
dfaut blanc).

Mise en forme conditionnelle
On peut appliquer sur une slection de contrles une mise en forme conditionnelle.
Utilisez la fentre Gestionnaire de rgles de mise en forme conditionnelle . Pour
lafficher : longlet Format, dans le groupe Contrler la mise en forme , activez le bouton
Mise en forme conditionnelle .

Copie de la mise en forme dun contrle sur dautres contrles
Elle seffectue comme sous Word :
- Slectionnez le contrle dont vous souhaitez copier la mise en forme.
- Dans le groupe Police , activez le bouton dont licne est un pinceau, dinfo-
bulle Reproduire la mise en forme .
- Cliquez sur le contrle auquel doit tre applique la nouvelle mise en forme.
Pour appliquer la mme mise en forme plusieurs contrles, double-cliquez (au lieu de
cliquer) dabord sur le bouton dicne pinceau. Appliquez la mise en forme. En fin
dapplication, appuyez sur la touche Echap (Esc).

- Ordre de tabulation : passage dune zone de saisie une autre

Lordre de tabulation signifie lordre de passage dune zone de saisie la suivante,
en utilisant la touche Tab ou la touche Entre.
Lordre de tabulation sapplique au formulaire affich en mode Formulaire.
Il est dfinissable sur chacune des trois sections : en-tte de formulaire, dtail et pied de
formulaire.
Pour le modifier, le formulaire tant affich en mode Cration ou en mode Page,
affichez la fentre Ordre de tabulation : longlet Cration des Outils de cration de
formulaire , groupe Outils , activez le bouton Ordre de tabulation .
Renseignez la fentre. En activant le bouton Ordre automatique , on obtient lordre
commun : de gauche droite et de bas en haut.

Saut dun contrle
Une zone de saisie, peu souvent renseigne ou modifie, ne ncessite pas darrt de
tabulation. Pour quon ne puisse pas sy arrter (en mode Formulaire) en utilisant la touche
COURS BARDON - ACCESS 2010 / CHAPITRE 13
135
Tab ou la touche Entre : dans sa Feuille de proprits, longlet Autres, donnez la valeur
Non sa proprit Arrt tabulation .
On peut cliquer dans la zone de saisie pour saisir ou modifier une valeur, mais on ne
peut pas sy arrter en utilisant la touche Tab ou la touche Entre, le contrle est saut.


5. CREER UN SOUS-FORMULAIRE

Un sous-formulaire est un formulaire inclus dans un autre formulaire, quon appelle
formulaire principal.
Communment, un sous-formulaire affiche les donnes dune table contenant la cl
trangre, champ correspondant la cl primaire contenue dans une autre table, dont le
formulaire principal affiche les donnes.
Exemple : on peut crer le formulaire principal insrant les champs de la table PEINTRE
(cl primaire NoPeintre) et son sous-formulaire insrant les champs de la table relie
TABLEAU (cl trangre NoPeintre).

Il existe deux mthodes de cration de sous-formulaire :
- Soit on cre conjointement un formulaire et son sous-formulaire, avec lAssistant
- Soit, un formulaire tant cr, on lui ajoute un sous-formulaire (dj cr ou que
lon cre).

Cration conjointe dun formulaire et de son sous-formulaire,
avec lAssistant Formulaire

On a vu cette mthode prcdemment : cf. 1. CREER UN FORMULAIRE, Cration dun
formulaire avec lAssistant Formulaire.
On slectionne les champs dune table, destins au formulaire principal, et ceux de la
table relie.
LAssistant, dtectant la relation entre les deux tables, propose la cration dun sous-
formulaire. Lexistence dune relation entre les tables est ncessaire.

Cration dun sous-formulaire dans un formulaire dj cr

Ouvrez le formulaire en mode Cration. Il constituera le formulaire principal.
A longlet Cration, dans le groupe Contrles, vrifiez que le bouton Utiliser les Assistants Contrle
est activ, afin quune fentre Assistant puisse souvrir. Sinon, cliquez dessus.

Affichez la fentre Assistant Sous-formulaire : dans le groupe Contrles, activez
le bouton dinfo-bulle Sous-formulaire/Sous-tat , puis cliquez sur le formulaire (il
sagit de linsertion dun contrle).
Exemple
Crez un formulaire, qui sera le formulaire principal, contenant les champs de la table
PEINTRE (cf. 1 Raliser un formulaire en mode Cration ).
On va insrer dans ce formulaire le sous-formulaire contenant les champs de la table
TABLEAU. Cliquez sur le bouton dinfo-bulle Sous-formulaire/Sous-tat , puis cliquez
sur le formulaire.

La fentre Assistant Sous-formulaire tant affiche, procdez ainsi, selon que le
formulaire qui sera sous-formulaire existe ou quil nexiste pas :
COURS BARDON - ACCESS 2010 / CHAPITRE 13
136
- Sil existe : cochez la case Utiliser un tat ou un formulaire existant , puis
slectionnez le formulaire utiliser.
- Sil nexiste pas, il faut le crer : cochez la case Utiliser les tables et les requtes
existantes . Puis ltape suivante, slectionnez les champs insrer dans le
formulaire.
Dans lexemple, il sagit de crer le formulaire contenant les champs de la table
TABLEAU. Slectionnez les champs de la table TABLEAU.
Indiquez les champs correspondants des deux tables.
- Soit une relation existe entre les tables des champs du formulaire et du sous-
formulaire : cochez loption Choisir partir dune liste , et validez.
Dans lexemple, les champs correspondants des deux tables sont NoPeintre.
- Sinon, cochez la case Les dfinir moi-mme , puis saisissez les deux champs
correspondants. Un lien temporaire est ainsi cr.

Par dfaut, le nom de la table do sont issus les champs, est donn au sous-
formulaire. Vous pouvez saisir un autre nom.
Appelez le sous-formulaire de notre exemple : ssformTableau.
Validez.

Le sous-formulaire, prsent sous forme de Feuille de donnes, est cr dans le
formulaire principal.
Dans lexemple, passez le formulaire en mode Formulaire, et affichez des
enregistrements.

Le sous-formulaire a la nature dun contrle. Il sagit dun contrle du formulaire principal. Ce contrle
est un lien vers le formulaire utilis (dans lexemple, lien vers le formulaire ssformTableau).
Affichons la Feuille de proprits de ce contrle, longlet Donnes :
- En Objet source , le contrle a pour valeur ssformTableau.
- Les proprits Champs pres et Champs fils ont pour valeurs les noms des champs
correspondants des tables relies, dans notre exemple NoPeintre.






COURS BARDON - ACCESS 2010 / CHAPITRE 14
137
CHAPITRE 14 LES ETATS



La fonction principale dun tat est la restitution des donnes. Cest un document
destin tre imprim. Il na pas linteractivit du formulaire.
Un tat affiche souvent les enregistrements rsultant dune requte.
Tandis que le formulaire naffiche gnralement quun seul enregistrement la fois,
ltat affiche une ou plusieurs listes denregistrements.
Etats et formulaires prsentent toutefois de nombreuses similarits, notamment en ce
qui concerne les mthodes de cration et la gestion des contrles.

1. CREER UN ETAT

Il existe plusieurs mthodes de cration dun tat :
- L Etat vide
- Cration rapide en deux clics
- L Assistant Etat
- Le mode Cration.

Access 2007 dispose galement dun Assistant Etiquette . Comme son nom
lindique, cet Assistant permet de crer un tat affichant des tiquettes.

Etat vide

Il sagit dune mthode simple, quon peut utiliser ds lors quil y a peu de champs
insrer dans ltat. Elle permet de choisir les champs insrer, ainsi que leur ordre daffichage
dans ltat.

Pour raliser un tat :
1) Cration dun tat vierge : longlet Crer, groupe Etats, activez le bouton Etat
vide . Un tat vide est cr, affich en mode Page.
2) Insertion des champs dans ltat :
Si le volet Liste de champs nest pas affich ( droite de la fentre), cliquez
longlet Cration des Outils de prsentation dtat , dans le groupe Outils, sur le
bouton Ajouter des champs existants .
Utilisez ce volet pour insrer des champs dans ltat. Cliquez sur le signe + dune
table pour louvrir. Pour insrer un champ : double-cliquez sur son nom, ou bien
cliquez-glissez sur son nom jusqu ltat.

Ltat affiche la liste des enregistrements, en mode Page.

Exemple
Nous utiliserons les tables PEINTRE et TABLEAU dfinies au chapitre 7.
Crez un tat vierge : activez le bouton Etat vide .
Insrez les champs dans ltat : ouvrez la table PEINTRE, puis double-cliquez sur les
champs NoPeintre, NomPeintre, PrenomPeintre. Ouvrez la table TABLEAU, puis double-
cliquez sur le champ NomTab.
COURS BARDON - ACCESS 2010 / CHAPITRE 14
138
On obtient ltat (extrait des enregistrements) :

NoPeintre NomPeintre PrenomPeintre NomTab
1 Van Eyck Jan La Vierge au chancelier
1 Van Eyck Jan Les Epoux Arnolfini
2 Botticelli Le Printemps
3 De Vinci Lonard La Joconde

Si les noms des tableaux ne saffichent pas en entier, passez en mode Cration (un clic droit sur longlet
de ltat > Mode Cration). Cliquez-glissez sur le bord droit de la zone de texte NomTab pour llargir. Puis
repassez en mode Page, ou passez en mode Etat.

Chaque en-tte de colonne est une tiquette portant la lgende, sinon le nom dun
champ. En dessous, les valeurs des champs sont affiches dans des zones de texte.
Le nom du nouvel tat apparat dans le Volet de navigation.

Cration rapide dun tat

Comme pour le formulaire : en deux clics, ltat est gnr !
Procdez ainsi :
- Dans le Volet de navigation, cliquez sur une table ou sur une requte.
- A longlet Crer, groupe Etats, cliquez sur le bouton Etat .
Ltat est affich en mode Page, il prsente la liste des enregistrements.

Cration dun tat avec l Assistant Etat

Cette mthode permet de personnaliser ltat.
Commencez par prciser la source de donnes de ltat : dans le Volet de navigation,
cliquez sur une table ou sur une requte.
Puis affichez la fentre Assistant Etat : longlet Crer, dans le groupe Etats, activez
le bouton Assistant Etat .
Exemple : cliquez sur la table PEINTRE, puis sur le bouton Assistant Etat .

La ralisation dun tat se droule en plusieurs tapes :

1
re
tape : Slection des champs
A laide des boutons >, >>, <, <<, ou bien par double-clic, slectionnez les champs que
vous souhaitez insrer dans ltat.
Vous pouvez slectionner des champs de plusieurs tables ou requtes.
Exemple : dans la table PEINTRE, slectionnez les champs NomPeintre, PrenomPeintre,
Nationalite.

2
me
tape : Regroupement des enregistrements
Des regroupements denregistrements peuvent tre raliss en fonction de leurs valeurs
identiques sur un ou plusieurs champs.
On peut dfinir des intervalles de regroupement sur les champs de type de donnes
Numrique, Date ou Texte.
Exemple : cliquez sur Suivant, sans effectuer de regroupement.
Nous regrouperons les enregistrements sur le champ Nationalite au 3 de ce chapitre Tri,
regroupements et totaux .


COURS BARDON - ACCESS 2010 / CHAPITRE 14
139
3
me
tape : Tri et totaux
Des tris peuvent tre effectus, jusqu quatre niveaux, en ordre croissant ou
dcroissant.
Options de synthse :
Des totaux (Somme, Moyenne, Maximum, Minimum) sont ralisables sur des champs
de type Numrique.
Loption Dtail entrane laffichage dun total par regroupement.
Loption Total entrane laffichage dun total de synthse (le total du tout).
Exemple : paramtrez un tri croissant par nationalit, puis par nom.

4
me
tape : Prsentation de ltat
Choisissez la prsentation souhaite.
Exemple : Optez pour une prsentation tabulaire (sous forme de tableau).

5
me
tape : Titre Ouverture : Aperu avant impression ou mode Cration
Donnez un titre ltat. Par dfaut, le nom de la requte ou de la table lui est donn.
Pour terminer, choisissez entre ouvrir ltat en mode Aperu avant impression ou
louvrir en mode Cration.

Exemple : Nommez ltat NationalitePeintre, puis ouvrez-le en mode Aperu avant
impression .
On obtient (extrait des enregistrements) :

Nationalite NomPeintre PrenomPeintre
allemand Drer Albrecht
anglais Turner William
belge Bosch Jrme
belge Bruegel Pieter
belge Hals Frans
espagnol Picasso Pablo

Raliser un tat en mode Cration

Cest la mthode par excellence de cration dun tat.
Ralisons un tat lmentaire en mode Cration.

Affichage de ltat vierge

A longlet Crer, dans le groupe Etats, activez le bouton Cration dtat .
Un tat vide saffiche, contenant trois sections : la section principale Dtail et les
deux autres sections En-tte de page et Pied de page .

Indication de la table ou de la requte pourvoyeuse de champs

Lindication de la source de donnes de ltat seffectue dans sa Feuille de proprits.
Pour afficher celle-ci : longlet Cration du nouvel onglet Outils de cration dtat , dans
le groupe Outils, cliquez sur le bouton Feuille des proprits . Elle comprend cinq onglets.
Activez longlet Donnes. Ouvrez le menu droulant de la proprit Source, et slectionnez la
source de donnes souhaite.
Exemple : slectionnez la table PEINTRE.

COURS BARDON - ACCESS 2010 / CHAPITRE 14
140


Insertion des champs

Affichez la liste des champs correspondant la source de donnes indique
prcdemment : longlet Cration, dans le groupe Outils, cliquez sur le bouton Ajouter des
champs existants .
Insrez les champs dans ltat :
- Double-cliquez sur le nom de chaque champ,
- Ou bien : cliquez sur le nom dun champ, puis appuyez sur la touche Maj (Shift) et
cliquez sur chaque autre champ slectionner. Cliquez-glissez sur la slection
jusque dans ltat.
A chaque champ insr, correspondent dans ltat une tiquette et une zone de texte.
Exemple : insrez les champs de la table PEINTRE, puis cliquez sur le bouton Affichage
pour ouvrir ltat. Ltat apparat en affichage mode Etat.

L Assistant Etiquette

LAssistant Etiquette permet dditer un tat affichant des tiquettes.
Commencez par prciser la source de donnes de ltat : dans le Volet de navigation,
cliquez sur une table ou sur une requte.
Puis affichez la fentre Assistant Etiquette : longlet Crer, dans le groupe Etats,
activez le bouton Etiquettes .

La cration dun tat se droule en plusieurs tapes :

- 1
re
tape : Taille, type et fabriquant
Lunit de mesure est le pouce " ou le mm.
Les options Feuille feuille et Continu concernent le type dalimentation
des feuilles dans limprimante.
Exemple : Aprs avoir cliqu sur la table PEINTRE, activez le bouton Etiquettes .
Slectionnez Durable 1451. Gardez les autres options. Validez.

- 2
me
tape : Police des caractres
Dfinissez le nom, la taille, lpaisseur et la couleur de la police des caractres.
Exemple : Gardez les options proposes.

- 3
me
tape : Champs et textes des tiquettes
Dans la zone titre Etiquette prototype , vous pouvez :
o Saisir des champs, slectionns parmi les champs disponibles gauche :
utilisez le bouton >, ou bien double-cliquez sur le nom du champ.
o Egalement taper des textes. Les retours la ligne sont permis.
Exemple :
Saisissez le texte suivant, qui comporte les trois champs NomPeintre, Nationalite et
AnneeNaissance :
NomPeintre a la nationalit Nationalite
Il est n en AnneeNaissance

- 4me tape : Tri
Un tri est possible, sur un ou plusieurs champs.
COURS BARDON - ACCESS 2010 / CHAPITRE 14
141
Exemple : Triez par NomPeintre.

- 5
me
tape : Titre Ouverture : Aperu avant impression ou mode Cration
Donnez un titre ltat. Par dfaut, le nom de la requte ou de la table lui est donn.
Pour terminer, choisissez douvrir ltat en mode Aperu avant impression ou bien
de louvrir en mode Cration.
Exemple : Affichez ltat en mode Aperu avant impression.


2. AFFICHAGE, MISE EN PAGE ET IMPRESSION

Communment, aprs cration dun tat, on laffiche, on vrifie et on modifie si
ncessaire sa mise en page, puis on limprime.

Modes daffichage

Un tat peut tre ouvert en mode Cration, en mode Etat, en mode Page ou en mode
Aperu avant impression .

Pour modifier le mode daffichage, on peut :
- Utiliser le bouton Affichage, longlet Cration des Outils de prsentation
dtat .
- Ou faire un clic droit sur longlet de ltat, ou sur son nom dans le Volet de
navigation, puis choisir le mode daffichage souhait.
- Ou encore utiliser le bouton de mode daffichage, situ sur la barre dtat (en
bas, droite).
Quand on double-clique sur le nom dun tat dans le Volet de navigation, il souvre en
mode Etat.

- Mode Cration

Le mode Cration permet de crer ltat, ou den modifier la structure.

- Mode Etat

Ce mode permet de vrifier les donnes qui sont affiches dans ltat.
Pour en faciliter la lecture, on peut marquer temporairement une ligne en cliquant prs
de son bord infrieur (pointeur en forme de flche blanche ').

- Mode Page

Cest un mode intermdiaire entre les deux prcdents.
Il permet laffichage des donnes ainsi que certaines modifications de la structure de
ltat, en particulier lajout de champs et la modification des regroupements.

- Mode Aperu avant impression

Pour afficher ltat actif en mode Aperu avant impression , on peut appliquer la
mthode usuelle : menu Fichier > Imprimer > Aperu avant impression.
COURS BARDON - ACCESS 2010 / CHAPITRE 14
142
Ou, plus rapidement : cliquez sur le bouton Aperu avant impression situ dans la
barre doutils Accs rapide (en haut gauche de lcran). Il est conseill de placer ce bouton sur cette
barre. Sil ny est pas, cliquez sur le menu droulant droite de la barre , et cochez Aperu avant
impression .

Longlet Aperu avant impression dispose de nombreuses commandes, permettant
des modifications daffichage et de mise en page de ltat.
Cest en utilisant ce mode daffichage, quon peut zoomer sur ltat, galement
afficher les sauts de page.
En bas de la fentre, une barre de boutons de dplacement permet dafficher facilement
la page souhaite. Son fonctionnement est similaire celui de la barre affiche dans un
formulaire, pour passer dun enregistrement un autre (cf. chapitre 13 LES FORMULAIRES,
2 Gestion des donnes dun formulaire ).

Si ltat comporte un grand nombre denregistrements, on peut prfrer nafficher que
les dix premiers enregistrements (par gain de temps) : affichez ltat en mode Cration, puis
faites un clic droit sur la section du Pied dtat et choisissez loption Aperu des 10 premiers
enregistrements .

Mise en page et impression

Affichez ltat en mode Aperu avant impression .

Pour modifier la mise en page, utilisez :
- Les commandes des groupes Taille de la page et Mise en page ,
- Ou la fentre Mise en page : pour lafficher, cliquez sur le lanceur du
groupe (petit bouton droite du titre du groupe Mise en page ).

La mise en page tant termine, vous pouvez imprimer ltat.


3. PERSONNALISATION DUN ETAT

La personnalisation dun tat affectant sa structure, on laffiche en mode Cration.
Sur le ruban, les Outils de cration dtat sont rpartis sur quatre onglets :
Cration , Organiser , Format et Mise en page .
Ce dernier onglet contient les deux groupes de commandes Taille de la page et
Mise en page . Il sagit des mmes groupes prsents longlet Aperu avant
impression .
Nous utiliserons dans cette partie les onglets Cration , Organiser et Format .

Les sections dun tat

Ltat comporte les cinq sections similaires celles tudies au chapitre des
formulaires :
- Dtail , la section principale, qui comporte principalement des tiquettes et des
zones de texte. Cest la seule section obligatoire, les autres tant dusage facultatif.

- LEn-tte dtat, qui contient souvent le titre de ltat, et le Pied dtat, qui parait en
dernire page de ltat, pour afficher par exemple bilan, commentaires ou totaux.
COURS BARDON - ACCESS 2010 / CHAPITRE 14
143

- LEn-tte de page, pouvant contenir les en-ttes de colonnes, et le Pied de page,
contenant par dfaut la date du jour et les numros de pages. Les informations de
ces deux sections sont rptes sur chaque page de ltat, actualises si ncessaire
(le numro de page en particulier change).

Pour afficher ou masquer lune de ces deux paires de sections : faites un clic droit sur
len-tte dune section, puis activez le bouton En-tte et pied de page ou le bouton En-
tte/pied de rapport (le rapport est ltat).
Pour quune section ne soit visible quen mode Cration, donnez la valeur Non sa
proprit Visible (onglet Format).

- Sections En-tte de groupe et Pied de groupe

Si les enregistrements de ltat ont t regroups, ltat peut galement afficher des
sections En-tte de groupe et Pied de groupe.
On place ordinairement dans la section En-tte de groupe la zone de texte du champ en
fonction des valeurs duquel le regroupement est ralis (nous verrons des exemples plus loin).
La section Pied de groupe contient souvent un ou plusieurs sous-totaux relatifs aux
valeurs du groupe (exemples : somme, moyenne, maximum des valeurs du groupe).

Ltat comportant au moins un regroupement, procdez ainsi, si ncessaire, pour
afficher les sections En-tte de groupe ou Pied de groupe :
- Affichez le volet Regrouper, trier et total : longlet Cration des Outils
de cration dtat , groupe Regroupement et totaux , activez le bouton
Regrouper et trier . Ou bien, faites un clic droit sur la barre de titre de la
section Dtail > Trier et grouper.
Le volet saffiche sous ltat.
- Dans ce volet, cliquez sur le bouton Plus , dinfo-bulle Autres options .
- Pour afficher la section En-tte de groupe : cliquez sur le menu droulant du
bouton sans section den-tte et slectionnez avec une section den-tte .
Pour afficher la section Pied de groupe : cliquez sur le menu droulant du
bouton sans section de pied de page et slectionnez avec une section de
pied de page .

Feuille de proprits, mise en forme et contrles

Elments et mthodes concernant la Feuille de proprits des objets, ainsi que la mise
en forme et les contrles, sont similaires ceux vus au chapitre prcdent traitant des
formulaires (chapitre 13 LES FORMULAIRES). Pour un tat, on utilise les onglets Cration,
Organiser et Format des Outils de cration dtat .

Tri, regroupements et totaux

Comme lindique son nom, le volet Regrouper, trier et total permet de raliser des
tris, des regroupements et des totaux sur les donnes dun tat.
Pour afficher ce volet : longlet Cration, dans le groupe Regroupement et totaux ,
activez le bouton Regrouper et trier . Ou bien, faites un clic droit sur la barre de titre
Dtail > Trier et grouper. Le volet saffiche sous ltat.

COURS BARDON - ACCESS 2010 / CHAPITRE 14
144
- Tri

On trie gnralement les donnes dun tat, au moins en fonction des valeurs dun
champ.
Exemples
Les enregistrements dun tat relatif la table PEINTRE, peuvent tre tris :
- Par ordre alphabtique croissant des noms des peintres (un niveau de tri)
- Par nationalit des peintres, puis par nom (deux niveaux de tri).

Ltat tant affich en mode Cration, si on souhaite effectuer un tri :

Sur un seul champ (cas le plus courant)
Il suffit de faire un clic droit sur la zone de texte du champ > choisissez loption Tri
croissant ou loption Tri dcroissant .

Sur plusieurs champs
Ouvrez le volet Regrouper, trier et total pour dfinir les tris successifs.
Pour raliser un tri :
- Dans le volet, activez le bouton Ajouter un tri et slectionnez le champ
concern, ou prcisez une expression.
- Sur la mme ligne, spcifiez lordre du tri (exemple : avec A en haut ).

Si vous souhaitez ajouter un tri sur un autre champ, rptez ces deux oprations ligne
suivante. Dix niveaux de tri sont possibles !
Pour modifier les niveaux de tri : utilisez les boutons flchs lextrmit droite du
volet : Monter ^ et Descendre -.
Pour supprimer un tri : cliquez dans le volet sur la ligne du tri, puis cliquez sur la
croix (juste aprs les flches) ou bien appuyez sur la touche Suppr.

Exemple

Crons un tat contenant les champs de la table Peintre : dans le volet de Navigation,
cliquez sur la table Peintre, puis longlet Crer, cliquez sur le bouton Etat .
Affichez ltat en mode Cration. Supprimez les zones de texte AnneeNaissance et
AnneeDeces. Dplacez la zone de texte Nationalite pour la placer en premier.
Nous raliserons un tri par nationalit, puis par nom.

Ouvrez le volet Regrouper, trier et total pour dfinir les deux tris successifs.
- Cliquez sur Ajouter un tri , puis slectionnez le champ Nationalite.
- Cliquez nouveau sur Ajouter un tri , puis slectionnez le champ
NomPeintre.
Affichez ltat en mode Etat. On obtient (extrait de donnes de ltat) :

anglais Turner William
belge Bosch Jrme
belge Bruegel Pieter
belge Hals Frans
espagnol Picasso Pablo



COURS BARDON - ACCESS 2010 / CHAPITRE 14
145
- Regroupements

Les regroupements denregistrements permettent damliorer la prsentation, galement
deffectuer des sous-totaux sur les groupes denregistrements.
Les mthodes pour raliser ou modifier un regroupement sont similaires celles que
lon vient de voir pour le tri.

Ouvrez le volet Regrouper, trier et total pour dfinir un ou plusieurs regroupements.
Pour raliser un regroupement :
- Dans le volet, activez le bouton Ajouter un groupe .
- Slectionnez le champ concern, ou prcisez une expression.
Ltat affiche une section En-tte de groupe, avec indication du champ sur lequel est
effectu le regroupement.
Rptez ces deux oprations (activation du bouton Ajouter un groupe, puis slection
dun champ) si vous souhaitez ajouter un nouveau regroupement. Une autre section En-tte de
groupe sera cre. Dix niveaux de regroupement sont possibles.

Linsertion dune section den-tte de groupe nest pas obligatoire. Elle est cependant
communment utilise pour y placer la zone de texte du champ de regroupement, ce qui
permet laffichage dune seule valeur de ce champ par groupe.

Pour modifier les niveaux de regroupement : utilisez les boutons flchs lextrmit
droite du volet : Monter ^ et Descendre -.
Pour supprimer un regroupement : cliquez dans le volet sur la ligne du regroupement,
puis cliquez sur la croix (juste aprs les flches) ou bien appuyez sur la touche Suppr.
Pour attribuer un titre aux groupes dun champ : dans le volet, activez le bouton Plus,
dinfo-bulle Plus doptions , situ sur la ligne du regroupement. A ct de avec titre ,
cliquez sur cliquer pour ajouter . La fentre Zoom apparat. Dans cette fentre, tapez le
titre et modifiez si ncessaire la police des caractres, en activant le bouton Police. Validez.

Exemple

Reprenons ltat prcdent, cr au paragraphe Tri .
Affichons-le en mode Cration.
Nous raliserons un regroupement des enregistrements sur le champ Nationalite.

Dans le volet Regrouper, trier et total , activez le bouton Ajouter un groupe .
Slectionnez le champ Nationalite. Une section nomme En-tte de groupe Nationalite est
insre dans ltat.

Par Couper/Coller, dplaons la zone de texte Nationalite situe dans la section Dtail,
et plaons-la dans la section En-tte de groupe Nationalite : slectionnez la zone de texte,
faites un clic droit dessus > Couper. Puis faites un clic droit sur la section En-tte de groupe
Nationalite, et collez dans cette section la zone de texte.






COURS BARDON - ACCESS 2010 / CHAPITRE 14
146
Affichez ltat en mode Etat. La valeur du champ Nationalite napparat plus quune
seule fois par groupe :

anglais
Turner William

belge
Bosch Jrme
Bruegel Pieter
Hals Frans

espagnol
Picasso Pablo

- Totaux

Aprs regroupement, des calculs peuvent tre effectus sur chaque groupe. On peut
galement afficher des calculs de synthse ;
Exemple : on peut indiquer, pour chaque groupe de valeurs numriques, la somme, la
moyenne et le maximum de valeurs du champ de regroupement.
Il existe plusieurs mthodes pour insrer des totaux sur un tat dans lequel a t ralis
au moins un regroupement :
- Avec le volet Regrouper, trier et total : ouvrez le menu droulant du bouton
avec un total de : . Dans la fentre Totaux, indiquez le champ concern (Total
sur). Indiquez lopration (Type). Choisissez une ou plusieurs options daffichage.
Cest la seule mthode sur les trois qui propose des options daffichage.
- Avec le ruban : cliquez sur la zone de texte du champ sur les valeurs duquel
seffectuera le calcul. A longlet Cration des Outils de cration dtat , groupe
Regroupement et totaux , activez le bouton relatif aux totaux > choisissez le type
dopration effectuer.
- En faisant un clic droit sur la zone de texte concerne par le calcul > Total >
choisissez le type dopration effectuer.

Pour supprimer un sous-total ou un total, affichez ltat en mode Cration et supprimez
la zone de texte correspondante.

Exemple

Reprenons ltat prcdent. Indiquez le nombre de peintres par champ Nationalite,
ainsi que le nombre total de peintres.

Premire mthode, ouvrons le volet Regrouper, trier et total .
Activez le bouton avec un total de . Dans la fentre Totaux, indiquez Total sur
NoPeintre, Type Compter les enregistrements. Cochez les cases doption Afficher le
total gnral et Afficher dans le pied de page du groupe .
En mode Cration, apparat dans la section Pied de groupe Nationalite lexpression
=Compte(*) (elle correspond aux sous-totaux, nombre de peintres par nationalit). La mme
expression apparat dans la section Pied dtat (elle correspond au total gnral, nombre
total de peintres).
Affichez ltat en mode Etat.

COURS BARDON - ACCESS 2010 / CHAPITRE 14
147
On obtient (extrait des donnes) :

anglais
Turner William
1

belge
Bosch Jrme
Bruegel Pieter
Hals Frans
3
(Etc.)
20

Revenez en mode Cration. Effacez sous-totaux et total de synthse : cliquez sur chaque zone de texte
=Compte(*), puis appuyez sur la touche Suppr chaque fois.

Avec le ruban : cliquez sur la zone de texte NoPeintre, puis activez le bouton Totaux
et choisissez Compter les enregistrements . On obtient le mme affichage en mode Etat que
prcdemment.

Revenez en mode Cration. Effacez sous-totaux et total de synthse : cliquez sur chaque zone de texte
=Compte(*), puis appuyez sur la touche Suppr chaque fois.
Dernire mthode : faites un clic droit sur la zone de texte NoPeintre > Total >
Compter les enregistrements. On obtient le mme affichage en mode Etat que prcdemment.

Insertion dun saut de page

Ltat tant affich en mode Cration, pour insrer un saut de page :
- A longlet Cration des Outils de cration dtat , groupe Contrles,
activez le bouton dinfo-bulle Insrer un saut de page .
- Cliquez sur ltat l o vous souhaitez insrer le saut de page.
Le saut de page est indiqu par un trait en pointill
Comme tout contrle, on peut le slectionner et le dplacer.

- Insertion dun saut de page en fonction dune section

On peut dfinir la proprit Saut de page dune section, longlet Format de la
Feuille de proprits de la section.
Cette proprit a trois valeurs possibles :
- Avant section : les donnes de la section slectionne sont imprimes sur
une nouvelle page.
- Aprs section : les donnes de la section suivante sont imprimes sur une
nouvelle page.
- Avant & aprs section : cette option runit les deux options prcdentes.

4. CREER UN SOUS-ETAT

Un sous-tat est un tat inclus dans un autre tat, quon appelle tat principal.
La mthode de cration dun sous-tat est similaire celle de cration dun sous-
formulaire.
Pour crer un sous-tat, ltat tant affich en mode Cration, procdez ainsi (on
utilisera lAssistant) :
COURS BARDON - ACCESS 2010 / CHAPITRE 14
148
A longlet Cration des Outils de cration dtat , dans le groupe Contrles, ouvrez le menu et
vrifiez que le bouton Utiliser les Assistants Contrle est activ, afin quune fentre Assistant puisse souvrir.
Sinon, cliquez dessus.

Affichez la fentre Assistant Sous-tat : dans le groupe Contrles, activez le
bouton dinfo-bulle Sous-formulaire/Sous-tat , puis cliquez sur ltat (il sagit de
linsertion dun contrle).

La fentre Assistant Sous-tat tant affiche, procdez ainsi, selon que ltat qui
sera sous-tat existe ou quil nexiste pas :
- Sil existe : cochez la case Utiliser un tat ou un formulaire existant , puis
slectionnez ltat utiliser.
- Sil nexiste pas, il faut le crer : cochez la case Utiliser les tables et les requtes
existantes . Puis ltape suivante, slectionnez les champs insrer dans ltat.
Vous venez de crer ltat qui servira de sous-tat.

Indiquez les champs correspondants des deux tables.
- Soit une relation existe entre les tables des champs de ltat et du sous-tat : cochez
loption Choisir partir dune liste , et validez.
- Sinon, cochez la case Les dfinir moi-mme , puis saisissez les deux champs
correspondants. Un lien temporaire est ainsi cr.

Par dfaut, le nom de la table ou de la requte do sont issus les champs, est donn
au sous-tat. Vous pouvez le modifier. Validez.