Paul-Antoine Bisgambiglia,
IUT GB
bisgambiglia@univ-corse.fr
http://www.ent-montecristo.org/paulantoine2.bisgambiglia/
Access*
ACCESS
ACCESS
INTRODUCTION
LE CLASSEMENT - TRI
10
10
11
LES TABLES
13
13
14
LA CLE PRIMAIRE
16
17
LE CHAMP CLASSEMENT
17
LES REQUETES
19
19
TRIS MULTIPLES
20
20
CHAMP VIDE.
21
22
22
MULTI-CRITERES.
24
FORMULAIRE
26
UN FORMULAIRE DE BASE.
26
28
29
INSERER UN TITRE
30
31
32
32
34
ETAT ET IMPRESSION
38
38
ETATS SPECIFIQUES.
41
41
41
42
MACRO
43
UN MENU DE DEPART.
43
44
47
47
47
MASQUE DE SAISIE
50
VALIDE SI.
51
MESSAGE SI ERREUR
52
NULL INTERDIT
52
52
INDEXE.
52
COMPRESSION UNICODE.
53
53
CHAMP TEXTE
53
53
53
QUELQUES REMARQUES
54
EXEMPLE :
55
CREATION DE LA TABLE
55
57
MENU D'ENTREE
64
LISTE DE CHOIX
66
66
68
69
70
CREATION DE MACRO
72
72
72
73
74
74
FERMER
74
MACRO DE RECHERCHE
75
MACRO DE DEPLACEMENT
75
76
ACTUALISER.
76
76
SELECTIONNER OBJET
77
EXEMPLES DE MACRO.
77
77
78
78
NOM DE LA MACRO.
79
CONDITION
80
POUR TERMINER
81
CHAMPS CALCULES
82
82
84
86
TP N : BASE DE DONNEES
88
88
89
ASTUCES :
94
94
95
97
99
100
CREATION DE FORMULAIRE
103
LES REQUETES
106
SOURCES
109
BasesdedonnesIntroduction
Qu'est-ce qu'une base de donnes ?
Une base de donnes (son abrviation est BD, en anglais DB, database) est une entit dans
laquelle il est possible de stocker des donnes de faon structure et avec le moins de
redondance possible. Ces donnes doivent pouvoir tre utilises par des programmes, par des
utilisateurs diffrents. Ainsi, la notion de base de donnes est gnralement couple celle de
rseau, afin de pouvoir mettre en commun ces informations, d'o le nom de base. On parle
gnralement de systme d'information pour dsigner toute la structure regroupant les moyens
mis en place pour pouvoir partager des donnes.
derniers. Cela est d'autant plus utile que les donnes informatiques sont de plus en plus
nombreuses.
Une base de donnes peut tre locale, c'est--dire utilisable sur une machine par un utilisateur,
ou bien rpartie, c'est--dire que les informations sont stockes sur des machines distantes et
accessibles par rseau.
L'avantage majeur de l'utilisation de bases de donnes est la possibilit de pouvoir tre
accdes par plusieurs utilisateurs simultanment.
Access
Introduction
Une base de donne permet de classer, trier et filtrer de larges quantits d'informations.
Chaque logiciel de gestion (comptabilit, gestion commerciale, stock, ...) est d'ailleurs une
base de donne. Vous pouvez galement le faire avec un tableur de type Excel. C'est en partie
vrai. Si vous tes un utilisateur avanc du tableur, certaines fonctions peuvent sembler
similaires. Nanmoins, les possibilits de Microsoft Access sont largement suprieures dans
ces domaines, surtout si vous utilisez de grandes quantits de donnes.
Pour dbuter notre formation Access, commenons par un petit lexique spcifique aux bases
de donnes.
Le classement - tri
Prenons par exemple un fichier d'adresse. Le tri va permettre de classer par ordre alphabtique
suivant le nom, prnom, ... Dans la majorit des bases de donnes, ces classements peuvent se
faire suivant diffrents niveaux. Par exemple
Nom
Prnom
code postal
...
Dans notre exemple, les personnes seront d'abord tries suivant le nom. Si deux personnes ont
le mme nom, le tri se fera alors suivant le prnom. Pour deux personnes homonymes, le
classement se fera ensuite suivant le code postal du lieu de rsidence, ...
Le type de filtre est trs efficace. Pour faire ces filtres, il vous faut imprativement crer des
champs adquats avec les bonnes donnes suivant la personnes. C'est la principale difficult
lorsque vous crez une base de donne Access: choisir correctement les champs.
permettre de faire un tri. Par contre, du moins en Belgique et en France, le code postal va
permettre de trier non pas sur le domicile mais sur une zone d'habitation, typiquement sur la
commune en Belgique.
La ville: tri sur le domicile.
Le numro de tlphone, fax, GSM ... A moins de faire une recherche type annuaire inverse,
ces informations ne sont qu'indicatives.
Les informations professionnelles: On retrouve le nom de la socit, la fonction de la
personne et coordonnes de l'entreprise. Les rgles sont identiques que celles de l'adresse
prive.
D'autres renseignements seront rajouts suivant l'utilisation de cette base de donne Access
titre de renseignements comme la date de naissance (anniversaire), prnom de l'pouse poux, enfants, ...
Le titre: Monsieur, Madame, Mademoiselle, ... Ce champ est important pour deux raisons.
D'abord parce qu'il est utilis dans le courrier (adresse et formule de politesse).
Deuximement, ce champ va nous permettre de dterminer le sexe de la personne. Un champ
supplmentaire pourrait galement tre utilis.
Des champs additionnels de tri. L'utilisation d'une base de donne Access permet d'afficher
les enregistrements suivant un filtrage. Pouvons nous utiliser certaines combinaisons de ce
filtrage? Oui. Prenons notre carnet d'adresse sous Access. On retrouvera dans ce carnet des
amis, connaissances, relations professionnelles, utilisateurs du cours, ... La solution habituelle
est de crer un carnet d'adresse informatique pour chaque catgorie de personnes. L'autre
possibilit est de crer une seule base de donnes et d'ajouter des cases cocher (oui ou non)
reprenant ces diffrentes catgories. Ceci nous permettra de cibler l'envoi de courrier suivant
le type de relation, par exemple tous les membres du club de sport
11
Dbutons par la table: elle reprend les informations brutes (non traites): les enregistrements
et les champs.
Une requte permet diverses mises en forme des tables: le tri, filtre, afficher ou nom des
donnes,
Un Formulaire permet d'afficher les tables et les requtes d'une manire agrable.
Un tat permet d'imprimer des donnes de tables et de requtes avec si ncessaire des
regroupements et des calculs. C'est bien l la grosse diffrence entre Excel et Access, les
calculs ne se font pas par de simples formules, mais bien par ces tats d'impression.
L'avantage, c'est qu'une fois que l'tat est fait, tout se fait automatiquement. Le dfaut, c'est de
faire ces tats. Nanmoins, pour de nombreux enregistrements (plus de 500), Excel est vite
dpass, limit de toute faon 65535 lignes par feuille.
Les macros permettent d'excuter des fonctions partir de requtes ou de formulaires. Nous
ne rentrerons pas dans la programmation d'ACCESS dans cette formation mais utiliserons ces
fonctions pour crer un formulaire d'entre.
Page: permet de crer des pages Internet pour accder la base de donnes
12
LesTables
Dbutons notre cours Access par les tables. Une table reprend les informations brutes (non
traites) d'une base de donne Access. Une base de donne Access peut comporter plusieurs
tables qui peuvent tre lies entre elles (base de donne relationnelle) ou totalement
indpendantes.
Aprs avoir dmarr Access, sous l'onglet TABLES, slectionnons la commande "Crer une
table en mode cration". La fentre suivante apparat:
La colonne champ reprend le nom du champ. Le type reprend des formats de donnes
prtablis.
Comme l'exercice de ce cours Access doit nous permettre de crer une base de donne de
gestion de CD-DVD, bibliothque, ... commenons directement par crer la table pour cette
exercice
13
Mme si certains types de champs dpassent le cadre de ce cours Access, voyons les
principaux.
Texte: permet de crer un champ avec du texte et des chiffres mlangs. Vous ne pouvez pas
faire de calculs dans ce type de champs. La taille est limite 255 caractres
Mmo est quivalent TEXTE mais peut reprendre plus d'informations. Des limitations
d'affichage, notamment dans les tats rendent ce type de champ peu utilis. La taille
maximum est de 65.535 caractres.
Numrique. Ce format de champ permet de rentrer des chiffres sous diffrents formats.
Octet: nombre entiers de 0 255
Pour commencer l'exercice de ce tutorial, nous allons crer une simple table. Dans l'onglet
"TABLE", slectionnons "Crer une table en mode cration". En premier, crons un champ
dont le nom est classement. Ce champ va permettre de classer nos albums selon un numro
par exemple. Nous le laissons en mode texte. Compltons par les champs suivants:
champ texte "Titre album"
champ date "date de l'album"
champ texte "titre 1" pour le premier titre de l'album
champ texte "interprte 1".
champ date "date album"
Nous pourrions crer titre 2, interprte 2, et ainsi de suite mais nous verrons que de
meilleures possibilits existent.
Quittons par la croix droite sur la fentre et Access demande si nous voulons sauvegarder
notre table. Acceptons l'enregistrement et nommons cette table "Album".
Une nouvelle question apparat demandant une cl primaire. Cette cl n'est pas obligatoire
mais acclre le traitement des informations d'une base de donne sous Access.
Malheureusement, cette cl doit tre unique dans la table. Nous pourrions choisir classement,
mais ceci n'est pas possible si nous utilisons titre 2, A ce stade, slectionnons pas de cl
primaire.
Cliquons de nouveau sur album pour l'ouvrir et nous pouvons maintenant rentrer des donnes
dans les diffrents champs, des enregistrements qui sont dans notre cas des chansons.
Serait-il possible de scinder notre table en deux. Une partie serait rserv au contenu des
albums, l'autre l'en-tte (titre de l'album, ). OUI! Cette partie sera vue plus tard et
s'appelle une base de donne relationnelle.
15
Ceci va modifier notre table de dpart puisque nous allons pouvoir utiliser le classement
comme cl primaire, il n'y aura plus de risques de doublons. Modifions notre table et
supprimons les deux champs "titre1" et "interprete1". Pour cela, slectionnons la table album
et cliquons sur le bouton "Modifier". Slectionnons la ligne et appuyons sur la touche "del".
Lorsque Access demande la cl primaire, cliquez sur OUI et un champ sera automatiquement
rajout de type numrotation automatique.
Nous voici donc avec 2 tables Access. Un chapitre suivant nous permettra de crer une base
de donne relationnelle en les reliant entre-elles via un champ de mme type (ici le champ
classement).
La cl primaire
Nous venons de voire deux manire d'utiliser la cl primaire dans ce cours. Cette notion est
secondaire dans de nombreux cas mais peut-tre particulirement utile. Lorsque vous crez
une nouvelle table, l'enregistrement, Access demande automatiquement si vous voulez crer
une cl primaire. A quoi sert cette cl? Elle va permettre d'acclrer certains traitements de
l'information
16
La premire possibilit est de laisser Access crer un champ spcifique qui va s'incrmenter
automatiquement suivant le numro.
La deuxime solution est d'utiliser un champ de la table Access comme cl primaire. Dans ce
cas le contenu de ce champ doit tre unique (deux enregistrements ne peuvent utiliser la
mme valeur pour ce champ). Cette solution est utilise dans ce cours pour notre table album.
En plus, Access indexe automatiquement par ordre croissant sur la cl primaire
Dans le premier cas, ce champ "cl primaire" n'est pas le numro de l'enregistrement mais
bien un nombre s'incrmentant chaque nouvel enregistrement. Par contre, si vous supprimez
un enregistrement, le champ n'est pas remis jour dans les enregistrements restants. Pour
redmarre la cl primaire 1, il faut donc supprimer le champ de la base de donne et en
recrer un champ de nom identique.
Le champ classement
Nous allons rentrer des donnes dans cette table mais avant, quelques prcisions sur le champ
classement. Cette notion est identique pour le champ code article d'une gestion commerciale.
La majorit codent sur des chiffres. Ce n'est que rarement la solution idale. La manire dont
17
vous allez dcider de coder les CD dans l'exemple de ce tutorial Access ou le code du produit
dans une gestion commerciale va intervenir dans votre manire de rechercher l'information.
Dans notre base de donne musique, nous pouvons utiliser un codage de type XX-00000. Le
XX reprsentant les 2 lettres du type de musique , suivi de chiffre pour le numro du CD dans
cette catgorie. XX peut-tre par exemple DI (disco), AM (ambiance), ... Ca facilite souvent
le classement dans l'armoire. De mme, il est plus facile pour une picerie de classer suivant
le rayon du produit, suivi de la marque, .... Essayez pour le plaisir de retrouver suivant un
numro un article parmi 5 ou 6000 ....
18
Lesrequtes
Dans le chapitre prcdant de ce tutorial, nous avons vu la cration des tables qui permettent
de rentrer les donnes (les enregistrements) dans des champs dlimits. Ces tables ne
permettent pas de faire un tri ou un filtrage sur les enregistrements de la base de donne
Access. Cette fonction est dvolue en grande partie aux requtes. Une requte est lie une
(ou plusieurs) tables, elle reprend ses donnes et les organise. Rentrer un enregistrement dans
la requte ou dans la table revient donc strictement au mme.
Plusieurs types de requtes sont proposes par Access. Dans cette partie, nous nous
contenterons des requtes de tri et des requtes de filtres. Les autres types de requtes seront
vues dans une formation plus avance.
Ceci est une grosse diffrence avec Excel puisqu'un tableur permet directement de faire des
tris et des filtres comme vus dans le cours Excel: tri et filtre.
Nous avons 2 possibilits. Soit nous dplaons le champ slectionn vers le bas, soit nous
dplaons l'toile vers le bas. Malheureusement, la deuxime solution, plus rapide, ne nous
permet pas de travailler sur les champs. Nous devons donc dplacer tous les champs dans la
partie infrieure les uns aprs les autres (pour slectionner tous les enregistrements,
slectionnez les 2 extrmes avec la touche shift enfonce). Nous pouvons ngliger le champ
"N" qui n'est pour nous d'aucune utilit. Comme notre but est d'effectuer des tris et des filtres
sur notre table, examinons cette partie infrieure. En troisime ligne, apparat "Tri". Ceci offre
la possibilit en ordre croissant ou dcroissant. Faisons un tri en ordre croissant sur le
classement.
19
Quittons notre requte et enregistrons-l sous le nom "contenu par classement". Cette
requte nous a dj permis d'liminer des champs de l'affichage (n dans notre cas) et de faire
un trie suivant un champ (classement ici). Les requtes nous permettrons d'autres possibilits
plus tard.
Tris multiples
Nous savons maintenant comment trier une base de donne suivant le contenu d'un champ.
Mais comment trier suivant plusieurs champs?
La solution est simple. Vous avez remarqu en insrant les champs dans la cration de la
requte que vous pouviez finalement les mettre o vous voulez. Le tri se fait suivant l'ordre
des champs dans la fentre de requte.
Dans l'exemple ci-dessus, le tri se fera donc d'abord par ordre croissant sur le champ
"Classement", ensuite, dcroissant sur Plage.
20
Tapons C42 dans la partie critre sous le champ classement. La requte n'affichera que les
enregistrements (nos CD - DVD) dont le classement (notre numro) est C42
Tapons cette fois fa*, Access rajoutera automatiquement comme"fa*. La requte n'affichera
plus que les enregistrements commenants par FA. Access, au contraire de Word en
publipostage, ne fait pas la distinction entre les minuscules et les majuscules.
Tapons maintenant comme critre *A* (Access rajoute comme "*a*). Le rsultat de la requte
affichera tous les enregistrements contenant a dans le champ "classement".
Pour accepter un seul caractre, vous pouvez utiliser le ?. Dans ce cas, il faudra taper
effectivement le comme "" pour accepter cette solution.
Dans l'exemple ci-dessous, le rsultat renvoy par la requte sera les champs commenant par
une lettre ou un chiffre, suivi de la lettre a (ou A), suivi de 2 caractres indiffrents, suivi du
chiffre 2, soit XaXX2. Dans notre exemple, les champs de plus (ou moins) de 5 lettres ne
seront pas affichs.
Champ vide.
21
Pour afficher uniquement les champs vide, il suffit de taper comme critre est null. Pour
afficher uniquement les enregistrements o le champ comporte quelque chose, le critre
inscrire est N'est pas null.
Supposons que nous dsirons retrouver tous les titres chants par un groupe ou chanteur. Dans
la solution envisage plus haut, nous devions crer une requte de type ="nom du chanteur".
22
Dans la case critre sous le champ interprte, tapons [Nom de l'interprte ou groupe]. Cette
mthode cr en fait un champs (non repris dans la table mais utilis par la base de donne
Access). Enregistrons notre requte sous le nom "Recherche d'interprte" et excutons-l:
Cette solution de filtre est dj beaucoup plus souple, mais oblige taper le nom de
l'interprte ou du groupe musical correctement. Serait-il possible de pouvoir taper une partie
du nom? Oui.
23
Multi-critres.
La base de donne Access permet galement des requtes multi-critres. Comme la
majorit des logiciels, Access accepte la fonction ET et la fonction OU.
"critre" 1 ET "critre 2" ncessite que les 2 critres soit remplis.
"critre" 1 OU "critre 2" ncessite qu'au moins 1 des critre soit rempli.
Nous allons utiliser cette possibilit pour vrifier les albums sortie entre 2 dates.
Crons une requte en mode cration en utilisant la table album.
Comme critre, sous le champ date, tapons > 01/01/2003 et la ligne suivante: <01/01/2005.
Access rajoute automatiquement les caractres #. En essayant cette requte, tous les
enregistrements sont affichs ??? Forcment puisque la requte utilise la fonction OU (OR en
anglais). Nous devons utiliser une fonction ET. Supprimons les critres et tapons directement
>01/01/2001 ET <01/01/2005. Access rajoute automatiquement les caractres de contrles.
Et voil, la requte Access affiche effectivement les albums sortis entre le 1 janvier 2001 et le
1 janvier 2005.
24
Nous pouvons ici aussi poser la question. Le critre devient: >[date de dpart] Et <[date
finale]. De fait, la requte Access demande d'abord la date de dpart, ensuite la date finale
recherche.
25
Formulaire
Si vous avez rentr des enregistrements dans une table de la base de donne Access, vous
avez remarqu l'aspect tableur de type Excel des enregistrements. Les formulaires Access
vont nous permettre de faire un affichage personnalis de nos tables et requtes: mise en
forme des champs, mises en formes de quelques donnes, ... Le formulaire est le point central
d'Access pour entrer ou afficher vos enregistrements. Un formulaire peut tre cr partir
d'une table ou d'une requte. Dans un chapitre ultrieur, nous verrons les proprits avances
des formulaires Access.
Un formulaire de base.
Cliquons sur le bouton "Formulaires" et crons un formulaire l'aide de l'assistant, le mode
cration sera vu plus tard. Slectionnons Requte: contenu par classement cr au chapitre 3.
Faisons passer tous les champs dans la partie droite. Ceci nous permettra de les afficher.
Slectionnons par exemple comme type de formulaire "Justifi" "SUIVANT >".
Slectionnons un style au hasard. Ceci ne fait que de slectionner des couleurs de fond, ce que
nous pourrons modifier plus tard.
26
Ouvrons le formulaire pour inspecter notre travail. Si vous n'avez pas encore rentr de CD DVD dans la base de donne (table ou requte), aucun enregistrement ne sera affich.
Pouvons nous rentrer des donnes ici dans contenu, Oui! Et mme plus puisque les donnes
rentres dans ce formulaire serons rentrs dans la base de donne contenu et dans la requte
(qui dpend de la table) contenu par classement.
Rentrons par exemple les donnes suivantes.
Le rsultat semble peu expressif. Ceci est li au faible nombre de champs utiliss, mais nous
amliorerons ceci plus tard. Pour rappel, les boutons en bas gauche servent se dplacer et
rentrer des donnes.
Nous allons modifier notre requte pour trier suivant le classement, mais pour qu'en cas de
mme classement (le mme CD), les pistes apparaissent en ordre croissant.
La Requte slectionne, cliquons sur le bouton modifier. et rajoutons tri croissant pour le
numro de piste. Comme cette colonne est aprs "Classement", ACCESS fera le tri aprs celui
sur classement. Ceci va nous permettre de rentrer nos CD dans n'importe quel ordre.
Remarque, dans les bases de donnes ACCESS, les tris ne se font qu'aprs la fermeture de la
requte ou du formulaire associ, une lacune par rapport d'autres bases de donnes
nettement plus anciennes comme DBASE.
27
La prsentation devient nettement moins sympathique mais cette mthode va nous permettre
de rellement cr un formulaire selon nos besoins. L'affichage est tout fait brut, seule la
barre d'outils va nous permettre de crer des textes, champs, boutons, ...
A notre stade, analyser toutes les fonctionnalits serais trop complexe mais voyons d'une
manire gnrale ces fonctions:
29
Dans le menu affichage, slectionnez proprit. La fentre suivant va donner les proprits
complte de ce formulaire. Dans l'onglet "Toutes", dans la ligne Source, vous pouvez
slectionner la table ou la requte dsire. Remarquez que vous ne pouvez slectionner qu'une
seule table ou requte. Slectionnons notre table Album par exemple. Une fentre va
maintenant nous permettre de faire glisser les champs vers le formulaire.
Insrer un titre
Pour insrer un titre notre formulaire, utilisons la bote outils et cliquons sur le bouton
TEXTE. A l'aide le la souris, crons une zone et tapons notre texte, par exemple album
30
Il ne reste plus qu' donner l'emplacement de l'image pour insrer l'objet. Vous devrez
probablement utiliser le bouton de slection pour dplacer les textes et champs. Vous pouvez
complter ce formulaire Access en insrant une ligne, un rectangle, ... Nous reviendrons ces
formulaires personnaliss.
31
Basededonnerelationnelle
Lorsque nous avons cr nos tables, nous avons dj mentionn que des tables pouvaient tre
relies entre-elles. Une liaison entre 2 tables Access s'appelle une relation. Par extension, une
base de donne Access qui utilise plusieurs tables relies entre elles s'appelle une base de
donne relationnelle. MySQL accepte galement cette fonctionnalit. Cette possibilit permet
de rduire les donnes rentrer. Par exemple, dans une gestion de stock, une table reprendra
le produit (code, description, nom du fournisseur, ...) tandis qu'une autre table reprendra les
coordonnes du fournisseur. Ceci permettra de ne rentrer les coordonnes du fournisseur
qu'une seule fois et de relier le code fournisseur dans la table produit. Un deuxime avantage
vient de la taille des champs. Moins de donnes sont rentres dans la base de donne, ce qui
diminue sa taille.
Une reprsentation de nos 2 tables va nous permettre d'y voire plus claire. La table Album
reprend le classement de l'album. Comme ce champ est une cl primaire, le contenu sera
unique. Le titre et la date de l'album sont indicatifs. Par contre, la table contenu album reprend
le contenu effectif de cet CD - DVD. Le point de liaison entre ces 2 tables est le champ
"classement". Un album reprenant comme classement "FA-002" contiendra donc tous les
titres repris dans la table "contenu album" avec un classement identique. Il nous reste faire
la liaison entre ces 2 tables, ce qu'on appelle une relation. Plusieurs mthodes sont possibles.
La premire mthode est de crer une requte, la deuxime mthode est de crer un
formulaire avec un sous-formulaire.
classement en ordre croissant. Appelons cette requte "requete album tri". De mme avec la
table "Contenu album", trions par ordre croissant sur le classement puis sur la plage.
Appelons cette requte "requete contenu album tri".
Nous allons maintenant crer une requte Access utilisant ces 2 requtes (utilisez le mode
Cration). Commenons par ajouter ces 2 requtes.
La relation entre les 2 requtes n'est pas cre. Pour le faire, cliquons sur classement dans la
requte album et en maintenant la souris enfonce, glissons vers classement de l'autre requte.
Une ligne joint maintenant les champs classements des 2 requtes. Faisons glisser dans la
partie du dessous tous les champs sauf classement de "Contenu album". En effet, ce champ
classement sera identique
Et voil, non seulement, les donnes apparaissent en ordre croissant suivant le classement,
mais tous les champs sont remplis. Chaque fois que dans la table contenu, le classement
correspond, les 2 sont affichs. Ceci nous vite de retaper par plage tous les renseignements
sur l'album en lui-mme. Par contre, si le classement n'existe pas dans une des 2 tables,
aucune information n'est affiche.
Nous pourrions faire un formulaire d'aspect plus sympathique que les 2 ci-dessus, reprenons
les 2 tables par exemples.
34
Modifions la structure du formulaire. A l'aide de la bote outils, slectionnons "sousformulaire-Sous-Etats" et crons la zone avec la souris sous les donnes de notre formulaire.
35
Et voil notre formulaire relationnel termin. La barre d'outils de dplacement en bas permet
de se dplacer entre les albums, celle au milieu, l'intrieur des titres de l'album.
Dans notre formulaire Access, on retrouve donc les enregistrements de la premire table
Contenu album au-dessus et par liaison relationnelle, la deuxime table qui reprend chaque
fois le contenu de chaque album.
37
Etatetimpression
Si dans un tableur comme Excel, l'impression est directe (via la commande imprimer du menu
Fichier), ce n'est pas le cas des bases de donnes (SGBD). L'impression d'un rapport passe par
la cration pralable d'un tat. Ces tats permettent de faire (outre l'affichage des champs) des
tris et des filtres sur les enregistrements. La dernire possibilit des tats va permettre
galement de crer des sous-totaux et des totaux sur les rsultats imprims. Les tats
reprennent donc les calculs repris par les fonctions Excel.
Utilisons le mode "A l'aide des assistants". Slectionnons la requte relation que nous avions
dj cre. Celui-ci reprenait les albums et leur contenu. Slectionnons l'ensemble des
champs.
38
Voici notre premier tat Access de cr. Slectionnons notre tat et cliquons sur modification.
La fentre reprend les diffrents composants de notre tat en mode modification: des titres et
des champs. Commenons par analyser les diffrentes zones de cet tat.
L'entte d'tat reprend les textes qui seront repris au dbut de notre impression. L'entte de
page reprend les textes (images, ) qui seront imprims sur toutes les pages, sans exceptions.
En-tte de groupe classement reprend ce qui sera imprim pour chaque classement (ici le code
de chaque album). Dans notre cas, nous avons insr le champ, ce qui sera imprim sera donc
le contenu du champ. En dtail, sont repris le contenu de chaque album. En pied de page, ce
qui sera imprim sous chaque page.
39
Nous allons modifier certaines parties. Commenons par la zone dtail. En cliquant sur
numro de piste, nous pouvons dplacer ce champ. Pour cela, pointons notre souris en haut
gauche du champ et dplaons le vers la gauche. Nous pouvons faire de mme pour les autres
champs. Nous pouvons faire de mme avec les titres dans la partie entte de page. Nous
pourrions faire mieux. Supposons que nous souhaitions faire des jaquettes pour mettre au dos
de nos pochettes. L'idal serait de ne pas avoir d'enttes de page, reprendre un album par
pages. Le pied de page ne nous intressant pas trop. Fermons notre tats.
Slectionnons l'tat relation et avec le menu contextuel, slectionnons COPIER. Collons
maintenant notre tat. Donnons comme nom album et slectionnons-le en modification.
Slectionnons le titre et appuyons sur la touche <del> pour le supprimer. Si nous essayons de
rduire la zone, Access reprend quand mme une petite zone. Pour rduire toute cette zone, il
nous faut d'abord effacer la ligne de sparation qui a t cre automatiquement. L'entte de
page totalement rduit, plus rien ne sera imprim.
Nous souhaiterions reprendre chaque album sur une page. Dans les outils, reprenons la
commande Saut de page et insrons l dans la partie en-tte de groupe. Ceci insrera un saut
de page entre chaque album (un album par page).
Ceci est un exemple de base de donne. Nous n'avons ici utiliser que les fonctions de liaisons
entre bases de donnes et de tris. Ce serait sous-utiliser les bases de donnes et Access en
particulier. Notre but n'est pas de rentrer dans la programmation, mais d'organiser notre
travail.
40
Etats spcifiques.
Toutes les impressions passent par ces tats. Si nous voulons crer un tat sur un tri
particulier, nous pouvons, soit utiliser les fonctions de regroupement dans la cration de l'tat,
soit crer une requte de dpart pour crer ce regroupement.
Crons une requte l'aide de l'assistant sur la table album. Slectionnons Tri croissant pour
le champ classement. Comme critre, nous allons choisir [Quel-classement?"]. Ce champ
n'existe pas mais justement, Access va demander la valeur de ce classement et finalement
n'afficher que les enregistrements correspondant.
41
Seul petit dfaut ce systme, le contenu de la question doit tre exactement celui demand.
Pour les chiffres et les dates, vous pouvez mme crer une condition infrieure et une
condition suprieure (rsultat compris entre des valeurs). Ceci est galement valable pour les
formulaires, ...
Conditions Access
> suprieur
=> suprieur ou gal
< infrieur
=< infrieur ou gale
<> diffrents.
= gal
42
Macro
Continuons par une cration de base de donne plus professionnelle, les MACROS. Une
macro permet de crer des listes de commandes. Sans rentrer dans la programmation qui
dpasserait le cadre de cette initiation, ceci va nous permettre de crer un menu de dmarrage
personnalis. La deuxime partie de la formation (Access avanc) reprend le menu Macro et
procdure vnementielles.
Dans le menu macro, slectionnons Nouveau. Dans la partie gauche, slectionnons "Ouvrir
formulaire". Dans les proprits en dessous, slectionnons le formulaire que nous souhaitons
ouvrir. Enregistrons notre macro comme Ouvrir le formulaire. Et voil, nous venons
simplement de crer une petite macro qui ouvrira le formulaire spcifi et s'insrera dans un
autre formulaire. C'est ce que nous allons faire.
Vous pouvez galement crer plusieurs oprations la suite de l'autre l'aide de ces macros.
Un menu de dpart.
Commenons par crer un nouveau formulaire en mode cration. Dans ce mode, aucune table
ou requte n'est demande. C'est justement cela qui nous intresse.
Dans la barre d'outils, slectionnons "Boutons de commande" et dessinons notre bouton sur la
zone de formulaire.
43
44
Il suffit de mettre le nom de notre formulaire d'entre dans la case Afficher Formulaire /
page pour que notre formulaire soit automatiquement affich au dmarrage de l'application
Access.
Cette commande permet galement de rduire les possibilits des utilisateurs au dmarrage de
l'application Access.
Afficher
la
fentre de base de
donne
Access,
affiche ou non la
fentre
reprenant
Afficher la barre
d'tat
Autoriser
menus
les
complets
permet de limiter
les commandes du
menus
aux
commandes
utilisateurs.
Les
menus
Afficher
barres
les
d'outils
intgres, affiche
ou non les barres
d'outils standard de
Access
45
F11
Utiliser
les
CTRL+G
CTRL+F11
Bascule
entre
la
barre
de
menus
touches spciales
intgre.
d'accs
CTRL+PAUSE
ALT+F11
Ces proprits de dmarrage permettent donc de limiter les possibilits d'utilisation spciales
votre la base de donne. Ce n'est nanmoins pas un niveau de scurit d'accs que nous
verrons dans un chapitre ultrieur avec accs par mot de passe. Pour dmarrer normalement,
ouvrez la base de donne Access en maintenant la touche <shift> enfonce.
Ce chapitre termine la premire partie de la formation Access. Nous reviendrons l'utilisation
et la cration d'une macro en tudiant le menu Macro.
46
Tableavance:propritdeschamps
Dans le chapitre sur la cration d'une table Access de cette formation, nous nous contentions
de choisir le type de donnes.
Cette partie va nous permettre de personnaliser les tables:
47
Le premier problme vient du classement, le format n'est pas impos. Nous allons faire
quelques amnagements. Dans la partie proprit, Commenons par dlimiter la taille du
champ. Par exemple, dans notre cas, nous allons utiliser 5 positions. La taille du champ va
donc tre de maximum 5 caractres. Si cette rgle transgresse le format de donnes existantes,
vous pouvez augmenter la taille.
Passons maintenant au format. Ceci va modifier la manire dont les donnes sont affiches
(pas rentres). La manire de rentrer les donnes ci-dessus va modifier les caractres rentrs:
">" va convertir les donnes en majuscules, - va afficher le caractre "-" et @ va obliger de
rentrer un caractre ( chaque fois).
Type
de
Symboles
donnes
Numrique /
Explication
Sans format de champ, affichage des donnes comme elles sont
saisies
montaire
0
, (virgule)
<espace>
(<Space>)
%
E+ ou e+
E- ou eDate / heure /
j=5
jj = 05
jjj = mar
jjjj = mardi
m=1
mm = 01
mmm = janv
mmmm = janvier
, (vigule)
aa = 99
aaaa = 1999
h=4
hh = 04
n=7
nn = 07
s=3
ss = 03
49
Texte
Memo
Gnral
AM/PM
&
>
<
*(caractre)
Quelques exemples:
>@@-@@@ oblige rentrer 5 caractres qui seront affichs en majuscules avec un tiret de
sparation. fa001 sera donc affich FA-001
# ###,00" ": un chiffre sera affich avec 2 dcimales, sparateur des milliers, suivi de .
1526,3 deviendra 1 526,30
Masque de saisie
Cette fonction Access est a utiliser avec prcaution. Le masque de saisie va obliger rentrer
des donnes suivant un format prdfini. Si vous crer un masque de saisie aprs avoir rentrer
des donnes, les valeurs seront vrifies et ventuellement rejetes.
exemple
aucun masque de saisie, les donnes sont affiches
telles que saisies
masque 0000, le chiffre
0
&
obligatoire
n'importe quel caractre (lettre, chiffre, ...), saisie
facultative
>LLL:
lettres
>
convertis en majuscule
automatiquement
converties en majuscule
<
convertis en minuscule
/,.;:()
automatiquement,
ajout
3
chiffres facultatifs
Exemple:
le masque LL-000 oblige rentrer 2 lettres suivis de 3 chiffres.
le masque CC/CCC permet de rentrer 5 caractres maximum. Les 2 premiers sont suivis du
symbole /
Valide Si.
Sans rentrer dans trop de dtails, cette proprit permet de crer une rgle pour les messages.
Par exemple:
> 2000: chiffre obligatoirement suprieur 2000
> 01/01/2005: champ date, la date doit tre suprieure au premier janvier 2005
Pour combiner 2 conditions de validit, vous pouvez utiliser ET et OU.
51
Exemple: un champ date >=01/01/2000 ET <01/01/2011 n'acceptera que les dates comprises
entre le 01 janvier 2000 et le 31 dcembre 2010 (=< 01/01/2011)
Message si erreur
Ceci permet d'afficher un message dans le cas d'une donne non valide (dans le cas de
l'utilisation de Valide si). Par exemple, si la rgle d'une date est >01/01/1900 et le message:
erreur d'encodage, la date doit tre suprieure 1900. En cas de date infrieure, la fentre
suivante apparat:
Null interdit
Cette fonction fort utile permet d'obliger l'utilisateur rentre une valeur (cas null interdit:
Oui). Elle travaille souvent en coordination avec la fonction suivante: Chane vide autorise
qui permet de rentrer un espace au lieu d'une valeur.
Index.
Cette commande permet directement de trier un champ en ordre croissant. L'option avec ou
sans doublon est une contrainte supplmentaire. Si vous choisissez sans doublons, la table
refusera de rentrer la mme valeur dans le champ pour 2 enregistrements diffrents de la table
access. Mieux vaut gnralement utiliser une requte pour cette fonction
52
Compression unicode.
Oui par dfaut. Access utilise le codage unicode qui enregistre les lettres sur 2 octets (au lien
d'un). Ce systme permet d'afficher les caractres dans n'importe quelle langue.
Malheureusement, ceci double la taille des caractres enregistrs. La compression va
compenser en partie ce doublement d'espace. Cette caractristique n'est affiche que pour les
champs de type texte, memo et liens hypertextes.
Champ texte
A. Imposer de rentrer une valeur chaque fois:
Null interdit: Oui - Chane vide autorise: Non.
B. Imposer de rentrer 2 lettres, suivi de 3 chiffres mais afficher le sparateur - et lettres
transform en majuscule. Exemple: MA516 rentrer.
Taille du champ: 5 - Masque de saisie: >LL\-000
Champ numrique avec valide si suprieur 2000 par exemple pour anne comprises
entre 2001 et ..., dcimales: 0 + masque de saisie: 0000
Champ texte avec les mmes solutions, + longueur du champ 4.
53
Quelques remarques
Les contraintes et formats d'affichage des champs d'une base de donne Access peuvent tre
implants soit dans la table, soit dans le formulaire (ventuellement dans les tats). Ceci est
laiss au libre choix suivant votre application. Nanmoins, si vous imposez les contraintes
dans la table, elles sont valables galement pour les requtes, formulaires, tats, ... Dans le cas
o ces contraintes sont rentres directement dans le formulaire, elles ne sont valables que pour
le formulaire. Rentrer des donnes directement dans la table ou dans une requte n'imposera
pas le masque de saisie, d'o un risque d'incohrence de donnes informatiques.
D'un autre cot, imposer une contrainte directement dans la table va entraner long terme des
problmes de conception. Mme si une base de donne est gnralement dveloppe au dpart
sans modifications futures, par exprience, on est amener ajouter des champs (ou augmenter
la taille), souvent plusieurs annes plus tard. Insrer les contraintes directement dans la table
risque de vous poser quelques problmes lors de ces modifications de l'application
informatique, notamment parce que lors de chaque changement de proprits de champs,
Access va vrifier si les donnes sont cohrentes. Vous risquez donc de perdre des donnes ou
de devoir revrifier manuellement tous les enregistrements que la table accepte les
modifications, ce qui n'est pas le cas pour les formulaires.
54
Exemple:
Dans ce tutorial Access, nous avons vus les diffrentes parties de cration d'une base de
donnes. Voyons un cas plus explicite comme exemple, la gestion financire d'une petite
association: entres et sorties globales ou par activit. Cette application a t dveloppe pour
le comit des ftes de Lambermont mais vous pouvez l'adapter n'importe quel club sportif
ou autre. Elle remplace les applications standards sous Excel qui montre vite ses limites
lorsqu'il faut dissocier les diffrente sources de rentres et de sortie, notamment si vous
voulez rellement suivre les paramtres par activit. Le logiciel Ciel association peut dans
certains cas vous convenir (conforme notamment la lgislation belge sur les ASBL) Vous
pouvez galement utiliser des logiciels de comptabilit de type CIEL Compta, mais cette
mthode demande des connaissances en comptabilit des entreprises.
Si vous dbutez sous Access (et dans les bases de donnes en gnral), vous pouvez au
pralable lire notre tutorial Access en ligne reprenant les diffrentes parties de la conception
d'une base de donne. Un autre exercice Access est repris en rcapitulatif des formations
Access de niveau 1.
Cration de la table
Commenons par crer une nouvelle base de donne appele club. Crons une table appele
facturier reprenant les champs suivants:
Slectionnons "Je taperais les valeurs souhaites" (la deuxime possibilit sera vue cidessous).
56
Le deuxime onglet est automatiquement modifi. Dans "Contenu", tapons simplement R;S.
Le ; sert sparer les diffrents choix possibles. Il nous restera mettre sous l'onglet Gnral,
R (Rentres) comme valeur par dfaut, en esprant avoir plus de Rentres que de Sorties.
Enregistrons notre table, ne crons pas de cl primaire.
Une petite remarque, de par sa conception, cette base de donne est utilisable les annes la
suite de l'autre. Il n'est pas ncessaire de recrer une base de donne chaque anne. Ceci
permettra de faire des comparaisons sur une activit d'une anne l'autre.
Crons maintenant un formulaire reprenant cette requte appele "facture". Notre formulaire
se prsentera par exemple comme ci-dessous.
Modifions notre formulaire pour nous faciliter encore un peu plus la vie. La date se met
automatiquement - cause de la table, valeur par dfaut maintenant(). Ne jouons pas sur le
numro.
Le type peut-tre R pour rentre ou S pour sortie. Nous avons bloqu ces 2 possibilits sur la
table mais nous pouvons galement bloquer sur ces 2 valeurs l'aide du formulaire. Dans le
57
Fte
barbecue
vtt
Reprenons notre table CLUB en modification. Modifions le champ activit. Notre but est de
choisir les donnes dans une zone modifiables et de les reprendre directement dans le champ
Activit . Les diffrentes possibilits sont inscrites dans la table activit. Cette solution
sera plus facile s'il faut rajouter des activits dans la table.
Un premier tat serait une feuille reprenant les factures payes par la caisse centrale ou non
(en utilisant la case paye. Dans Access, nous devons passer par une requte. Crons l.
Slectionnons tous les champs de la table facturier en slectionnant d'abord anne, puis date,
puis tous les autres. Pour les champs date et anne, slectionnons un ordre croissant. Comme
anne est en premier dans l'anne, il sera repris dans le tri en premier. Sous la case "Pay",
tapons dans la case critre le chiffre 0. Automatiquement, la requte n'affiche plus que ce qui
n'est pas pay. Sauvons cette requte sous le nom "A payer". Passons maintenant notre tats.
Ce ci va nous permettre d'imprimer les factures en entres et en sorties non payes.
59
Crons un tat l'aide de l'assistant. Slectionnons la requte "A payer" comme source et
slectionnons tous les champs. Dans la fentre suivante, slectionnons un ordre de
regroupement suivant l'activit, puis suivant le type. Nous n'avons pas besoin de tri, ils sont
dj fait dans la requte de dpart "A payer". Cliquons sur le bouton "Options de synthse".
Ceci affiche la fentre suivante. Cliquons sur la ligne "montant" dans la case Somme.
Slectionnons le mode de prsentation qui nous convient. L'aperu de l'tat affiche un tas de
texte inutile. Modifions notre tat et supprimons le texte "= synthse " Diminuons
galement l'espace rserv. Ceci n'est dj pas si mal, mais la somme globale en dessous
reprend la somme des entres et des sorties, ce que nous souhaiterions modifier. La solution
est de rentrer systmatiquement les sorties avec un montant ngatif. Ceci permet de vrifier
les sommes que l'on doit recevoir diminuer des sommes que l'on doit payer.
A ce stade, les activits sont reprises "annes mlanges". Les comptes du VTT 2000 sont
repris avec les comptes du VTT 2001. Pas trs intressant. La solution est de crer un nouvel
ordre de regroupement sur l'anne. Dans le menu Affichage, slectionnons ordre de
regroupement, dans la troisime ligne, dans la colonne champ/expression, slectionnons
anne. Slectionnons la ligne et montons avec le curseur jusqu'au dessus de "Activit. Dans
les case de proprits, slectionnons entte de groupe et pieds de groupe sur Oui. En affichant
la liste des champs, glissons le champ anne dans la zone "Entte de groupe anne". Faisons
de mme dans le pied du groupe anne, en copiant le champ "Somme ) dans la zone audessus et en revenant dans la partie pied, utilisons la fonction copier. Ceci nous donnera une
somme par anne.
60
Nous aurions pu utiliser le systme ci-dessous pour regrouper par anne. Je vous laisse le
loisir de le faire votre gr.
Il est possible dans une requte de filtrer manuellement les champs. Crons une nouvelle
requte l'aide de l'assistant, en utilisant la table facturier et en reprenant tous les champs les
uns aprs les autres. Dans la zone critre sous la colonne anne, tapons "[Anne]". Dans la
mme ligne mais sous la colonne "Activit", tapons [activit]. Les pseudo champs crs ainsi
nous poserons la question. Lorsque nous excutons la requte, Access demande d'abord
Anne?, puis Activit? Et affiche uniquement les donnes qui correspondent ces 2 critres.
Le pseudo champ doit imprativement tre en 1 seul mot, mais vous pouvez utiliser des "_"
entre les mots. [Anne_activit] fonctionne. Par contre [anne_de_l'activit] ne fonctionne pas
cause du caractre accentu ('). Sauvegardons cette requte sous le nom de rsultat par
activit.
Le seul problme vient du fait que cette requte n'affiche que les lignes, pas de totaux. Il nous
faut effectivement crer un tat. Crons cet tat l'aide de cette requte en effectuant un
regroupement suivant le type (R ou S) et en utilisant les options de synthses. Ceci nous
61
donne un tat reprenant les entres et les sorties de chaque activit. Vous pouvez mme
insrer dans votre tat les pseudo champs (idem ceux rentrs dans la requte).
Ce systme est dj pas mal mais nous souhaiterions le perfectionner. Ceux qui sont (ou ont
t) trsorier d'un club savent que gnralement on aime bien savoir ce qui se passe au sein
mme d'une activit: quel montant le bar a rapport, Nous arrivons au principal problme
des bases de donnes: la modification. En effet, ajouter un champ dans une table n'est pas trs
compliqu, mais nous allons devoir modifier toutes les requtes, formulaires et champs. Pour
ma part, dans ce cas, je recre souvent directement toutes les autres parties l'aide des
assistants.
Quelques imperfections existent encore. Reprenons notre formulaire en mode Modification.
Nous allons crer une zone de liste modifiable. Cliquons sur le bouton associ dans la bote
d'outils et crons notre zone sur le formulaire. Access propose un choix suivant 3 options.
Slectionnons la deuxime, je taperai les valeurs souhaites. Nombre de colonne: 1, stockons
la valeur dans ce champ que nous slectionnons comme "TYPE"
Donnons le nom type comme tiquette. Chaque fois que nous rentrons une valeur dans la zone
modifiable type, la valeur s'insre dans le champ type. Nous souhaiterions n'avoir plus que 2
choix (R pour rentres et S pour sortie). En modification, slectionnons notre zone
modifiable. Avec la touche droite de la souris, slectionnons la commande "proprit". Dans
la zone Contenu, tapons "R";"S". En reprenant notre formulaire en mode formulaire, nous
n'avons plus que le choix entre R ou S et le champ type est toujours modifi. Nous pouvons
ds lors supprimer le champ type du formulaire. Il nous faudra forcment organiser notre
cran et ventuellement l'ordre de tabulation dans le menu Affichage.
62
Notre formulaire semble maintenant complet. Attaquons maintenant les Etats qui permettent
d'imprimer les rapports. Le premier va nous permettre de faire les comptes annuels. Nous
pourrions directement crer un tat mais nous devons d'abord crer les filtres et dans Access,
la seule manire est de travailler sur les requtes. Crons donc une requte en mode cration.
Choisissons la table facture avec tous les champs et appelons cette requte "Par anne".
Modifions-l comme suit. Dans la ligne critre sous le champ anne, tapons
=[anne_des_activits]. attention de bien respecter la syntaxe, pas d'espaces. En ouvrant la
requte, Access pose automatiquement la question anne? Il suffit de rentrer l'anne
demande, par exemple 2002 et seules les entres sorties de 2002 seront affiches. Pendant
que nous y sommes, crons une deuxime requte qui demande l'anne et l'activit. Pour cela,
slectionnons la requte "par anne" avec la touche droite de la souris et slectionnons
"Copier". Ensuite utilisons la commande "Coller". Access demande un nouveau nom de
requte, rpondons "par anne et activit". Comme critre sous le champ activit, tapons tous
simplement =[activit_souhaite]. Access demandera l'anne et l'activit.
Dans la partie gauche, choisissons Etat et dans la partie droite l'aide des assistants.
Slectionnons la requte "par anne" et tous ses champs.
63
Dans la zone d'en-tte, insrons une zone de texte et dans cette zone, tapons
[anne_des_activits]. Nous pouvons ventuellement changer la mise en forme de ce champ
(gras, hauteur suprieur. Une deuxime modification possible serait de dissocier par activit
les rentres et les sorties. Nous aurions pu le faire la cration, mais faisons-le directement en
mode modification. Dans le menu Affichage, slectionnons "Trier et regrouper". Insrons le
champ TYPE et tapons Oui en pied de groupe, dplaons TYPE entre activit et date.
Insrons maintenant une zone de texte et remplaons le terme indpendant par
=somme([montant]) dans le pied de groupe TYPE. Nous pouvons crer le mme ETAT pour
la requte "par anne et activit". D'autres modifications sont possibles, 2 dcimales dans les
proprits des somme, insrer des pieds de page en bas de chaque groupement d'activit, Je
vous laisserai le faire.
Menu d'entre
Crons une macro. Dans la partie gauche, slectionnons "Ouvrir formulaire". Dans les
proprits, slectionnons le formulaire que nous souhaitons ouvrir. Enregistrons notre macro
comme Ouvrir le formulaire. Crons une deuxime macro pour ouvrir l'tat "Par anne".
Slectionnons la commande ouvrir tat et en proprit ETAT par anne. Dans la proprit
Affichage, slectionnons aperu avant impression. Crions la mme pour l'tat 'par anne et
activit.
Crons maintenant un formulaire en mode cration. Notre but n'est pas ici d'afficher des
champs, mais de faire un menu de dpart.
Crons un bouton, slectionnons comme choix "Divers", excuter macro. Slectionnez la
macro Formulaire. Slectionner soit un texte, soit une image de votre choix.. Tapez
Formulaire comme nom de bouton. Faite de mme pour les 2 autres macros.
64
Comme "Afficher " Slectionnez Principal. Le reste est de la mise en page. A partir de
maintenant, en cliquant sur l'application, le menu principal apparatra en premier et les
diffrents tats et formulaires seront accessibles par les boutons.
65
Listedechoix
Une liste de choix permet de slectionner une valeur pour un champ dans une liste de valeurs
possibles. Selon la configuration du champ, la liste peut-tre limitative ou non (vous ne
pouvez choisir qu'une valeur de la liste ou pouvez en proposer d'autres). Mme si une brve
introduction dans les tables a dj survol ces listes, il est temps de voire les 3 mthodes
distinctes de cration d'une liste de choix pour un champ Access.
66
La premire question reprend le type de liste de choix que vous souhaitez crer. Dans cette
premire partie, nous allons slectionner "Je taperai les valeurs souhaites"
Slectionnez 1 colonne, nous tudierons le cas de plusieurs colonnes ci-dessous. Cliquez sur
le bouton terminer. Rien n'a l'air d'avoir t cr, le type de champs est mme redevenu texte.
Access n'a pas tap les valeurs possibles votre place, le gestionnaire de base de donne a
juste "prpar le terrain". Dans la partie proprit du champ titre, slectionnez Liste de Choix.
Il ne reste plus qu' taper les valeurs souhaites spares par le caractre ";".
En passant en mode Affichage, la liste apparat lorsque vous essayez de rentrer une valeur
dans le champ Titre.
67
Zone de
liste
droulante:
Zone de
liste
Zone de
texte
supprime la fonction
Origine Source
Cette proprit permet de slectionner la manire dont les donnes sont rcupres dans la
liste droulante.
68
Contenu. Spcifie le contenu de la liste de choix, une liste de valeurs tapes, table
requte, ...
Colonne lie et nombre de colonnes.
Lorsque vous crez une liste de choix, vous pouvez demander de rentrer les donnes
dans 2 colonnes (ou plus). Cette possibilit permet d'afficher 2 colonnes pour la liste
de choix. Normalement, Colonne lie devrait permettre de slectionner la ligne
contenant plusieurs colonnes et d'insrer comme valeur la deuxime la deuxime.
Entte de Colonne: cette proprit permet d'afficher la premire ligne comme en-tte
de colonne.
Largeur de colonne: permet de spcifier la largeur en centimtre de la colonne de
choix.
Lignes affiches (zone de liste droulante uniquement): Cette proprit permet de
choisir le nombre de lignes affiches sans ascenseur dans les zones de listes
droulantes.
Largeur Liste (zone de liste droulante uniquement): permet de dterminer en
centimtres la largeur de la liste.
Limiter liste (droulante uniquement): permet de limiter les valeurs slectionner
uniquement la liste reprise ci-dessus. Cette possibilit est utile dans de nombreux
cas.
Pour rappel, dans les proprits du champ, vous pouvez galement utiliser la proprit Null
Interdit et surtout Chane vide autorise. Ceci permet de taper un espace comme valeur.
Commenons par crer une table reprenant nos diffrentes possibilits. Cette table que nous
appellerons TITRE ne contient qu'un seul champ, que nous appellerons Titre, galement cl
primaire.
Rentrons dans cette table les diffrentes possibilits: Monsieur, Madame, ...
69
Reprenons la table adresse et pour le champ titre, modifions les proprits du type pour
slectionner "Assistant Liste de choix". Slectionnons "Je veux que la liste de choix
recherche les valeurs dans une table ou une requte".
Ajustons la taille de la colonne pour reprendre l'ensemble des donnes l'affichage. Et voil.
Notre liste de choix est cre. De plus comme le champ titre de la table Titre est dj trie par
ordre croissant, il n'y a plus aucune opration faire.
70
Ajoutons simplement la
table Adresse. Dans la
barre d'outils, slectionnons
. Cette possibilit va crer
une
requte
de
regroupement. De ce fait,
notre requte (appelons-l
titre
regroupement)
va
pour
le
champ
Comme
tri,
slectionnons Croissant.
Il ne nous reste plus qu' crer une liste de choix dans la table adresse reprenant cette requte.
N'oubliez pas de mettre la proprit de la zone de liste, limiter liste sur non.
71
CrationdeMacro
Qu'est ce qu'une macro?
Une macro reprend une ou plusieurs commandes Access excutes les unes la suite des
autres, chacune excutant une tche prcise. Les actions excutes peuvent tre l'ouverture (la
fermeture) d'un formulaire, imprimer un tat ou rafrachir la fentre en cours par une
procdure vnementielle.
Dans le chapitre 7 de cette formation, nous avons utilis l'aide de l'assistant pour crer un
menu de dmarrage. Cette mthode pour crer une macro a l'avantage d'tre simple et le
dfaut d'avoir un choix d'actions limites.
L'autre possibilit utilise le menu Macro. Cette solution permet d'autres choix, mais galement
de faire excuter plusieurs actions les unes derrire les autres. Nous verrons dans le chapitre
suivant que ces macros sont surtout utilises dans les procdures vnementielles. Analyser
toutes les macros Access serait trop long, ce chapitre reprend donc les principales.
Nous n'utiliserons pas dans cette formation Access les modules, plus spcifiques la
programmation.
Une dernire remarque, la diffrence des macros de Word ou d'Excel, une macro Access
n'est pas enregistre en suivant vos actions mais bien en slectionnant les commandes
disponibles.
72
Dans la partie en bas, slectionnez le formulaire l'aide de la liste droulante. Comme mode
d'affichage, vous avez le choix entre: Formulaire (le mode standard), cration (modification
du formulaire), aperu avant impression, feuille de donnes, ...
Vous pouvez galement crer un filtre ou une condition ou slectionner le mode Donnes:
1. Ajout
2. Modification
3. Lecture seule
Cette macro peut tre utilise avec un bouton (cf. le chapitre 7 de cette formation) ou comme
procdure vnementielle (le chapitre suivant).
73
Commenons par les macros permettant d'ouvrir ou de fermer une table, une requte, un
formulaire ou un tat. Le principe est le mme pour toutes.
Les procdures d'ouverture commencent toutes par ouvrir
Fermer
Toutes les commandes de fermeture sont rassembles sous 1 seule macro: Fermer. Le choix
du type et du nom de l'objet se dfinissent dans les options de la commande.
74
Macro de recherche
Sont regroupes ici les commandes permettant de rechercher des donnes l'aide d'une macro
dans une table, requte ou formulaire actif. L'utilisation de ce type de commande ncessite
donc une ouverture de formulaire, table ou requte dans la mme macro au pralable ou
l'utiliser.
Les options de la commande macro TrouverEnregistrement sont similaires aux recherches
manuelles d'Access.
Macro de dplacement
La commande AtteindreEnregistrement est parfaitement identique au bouton de navigation
et de recherche Access. La commande AtteindrePage permet de se dplacer dans les pages
d'un tat.
75
Comme le but de ce cours Access n'est pas d'analyser toutes les macros, je rassemble ici
quelques macros spcifiques utilises dans des cas spciaux.
Actualiser.
Actualiser permet d'actualiser les donnes de la table en cours ou mme des tables et requtes
utilises par le formulaire actualis. Elle vite de fermer et de redmarrer le formulaire en
cours. Nous l'utiliserons rgulirement dans les exercices.
Le Nom de contrle permet de ne ractualiser qu'une valeur du formulaire.
76
Slectionner objet
Cette dernire commande SlectionnerObjet permet de slectionner un objet (tat, formulaire,
requte ou table) en cours de travail. Elle est utilise en combinaison avec les fonction de
recherche ci-dessus par exemple.
Exemples de Macro.
Pour rappel, les macros peuvent tre utilises l'aide de bouton ou l'aide de procdures
vnementielles (un click sur un objet par exemple, ce sera le prochain chapitre). Nous nous
intressons ici aux macros dveloppes pour les boutons. D'autres exemples de macros sont
repris dans l'utilisation de la barre d'outils ci-dessous.
B. L'ouverture du formulaire "Facture". N'oubliez pas l'option "Lecture seule" qui empche
toutes modifications des donnes.
77
Enregistrer votre macro. Pour crer le bouton, utilisez la procdure vue prcdemment et
slectionner la macro cre
B. Dans le cas ou plusieurs formulaires sont ouverts simultanment, vous pouvez rajouter la
commande de slection suivante.
Ajustons la taille de la colonne pour reprendre l'ensemble des donnes l'affichage. Et voil.
Notre liste de choix est cre. De plus comme le champ titre de la table Titre est dj trie par
ordre croissant, il n'y a plus aucune opration faire.
78
Cette barre d'outils Access comporte de nombreux petits utilitaires qui vont nous permettre de
tester nos macros.
1. Noms de macros permet de faire des "sous-macros", de crer une macro regroupant
plusieurs macros internes
2. Conditions: permet de crer une ou plusieurs conditions pour l'excution de
commandes.
3. Insrer une ligne permet d'insrer une commande entre 2 lignes d'une macro.
4. Supprimer une ligne permet de supprimer une ligne de commande
5. Excuter permet d'excuter la macro en cours.
6. Pas pas permet d'excuter votre macro ligne par ligne
7. Assistant cration n'est accessible que si vous crez une condition d'excution de la
ligne de commande.
Nom de la macro.
Cette fonctionnalit permet de crer une macro rassemblant plusieurs procdures et de choisir
l'excution d'une ou l'autre selon les besoins. Cette possibilit permet notamment de ne crer
qu'un fichier macro pour l'ensemble ou une partie de votre base de donne Access.
Crons la macro suivante qui va ouvrir le formulaire "client" en mode ajout, ouvrir le
formulaire "Facture", imprimer l'tat "YBET" en mode direct et reslectionner le formulaire
facture.
Ouverture du formulaire client
79
Cette macro pourrait tre utilise telle quelle. Pourtant, nous dsirons scinder notre macro:
utiliser les 3 dernires lignes de la macro ensemble. Nous allons donner un nom de macro
partie de la deuxime ligne. Cliquer sur le bouton "Nom de macro" dans la barre d'outils fait
apparatre une colonne en plus. Tapons formulaire macro en regard de notre deuxime ligne
de commande.
En registrez cette macro sous le nom "formulaire" et crons un nouveau formulaire de menu.
Crons un bouton de navigation et slectionnons comme commande Divers - excuter une
macro. La liste des macros disponibles apparat de la manire suivante:
Condition
Cette possibilit va nous permettre de crer des conditions pour qu'une ligne de commande
s'excute.
Supposons dans un formulaire de rentre des factures que nous souhaitons un message dans le
cas o le code du client est nul. Slectionnez le bouton "Condition" et utilisez l'assistant:
80
La macro devient:
s
Enregistrez la macro sous le nom condition, par exemple. Si nous excutons la macro
condition alors que le champ code client est vide, le message suivant est affich.
Pour terminer
Crer une macro Access n'est pas trs complique. L'utilisation de ces lignes de commandes
l'aide d'un bouton a dj t vue. Un chapitre suivant (procdures vnementielles) va aller
plus loin dans l'utilisation des macros puisque nous allons pouvoir crer un vnement
automatique en fonction de diffrents critres.
81
Champscalculs
Jusque maintenant dans ce cours, les seuls calculs que nous avons effectu avec Access se
faisaient dans les Etats, et encore avec seulement 4 fonctions: somme, minimum, maximum,
moyenne. Dans une base de donne, les calculs se font dans les Etats, mais uniquement sur la
valeur d'un champ pour un ensemble d'enregistrements. Dans de nombreux cas, nous devons
calculer directement sur une ligne (sur un enregistrement).
Prenons un exemple: une facturation reprend la quantit, le taux de TVA et le prix unitaire
d'une marchandise. Il nous reste calculer le prix hTVA, TVAc, ... De mme, dans une
gestion de stock, nous pouvons tre amen calculer le stock rel comme la diffrence entre
les entres et les sorties. Pour Excel, la solution passe par des calculs directs (cours excel:
fonction), la solution en Access passe par un champ calcul.
Les champs calculs sont valables pour les requtes, formulaires et tats mais vous ne pouvez
pas utiliser cette fonctionnalit pour une table.
Comme exercice, nous allons monter une petite facturation sous Access. Commenons par
crer une nouvelle base de donne vide. Dans cette base de donne Access, crons une simple
table reprenant les champs suivants:
Appelons cette table "contenu facture". En effet, la base de donne sera ventuellement
complte par la suite par des tables supplmentaires comme l'en-tte de facture, les produits,
clients, ...
82
De mme, dans la colonne suivante, faisons le calcul montant TVAc, la fonction devient:
tvac: [htva]*(1+[TVA]/100). Notez que le calcul tient compte d'un taux de TVA en chiffre
normal (pas en pourcentage) puisqu'il est divis par 100. Le champ calcul prcdemment
(hors TVA) est bien repris comme un champ de la requte.
Pour crer un champs calcul dans une requte: dans la case champ,
tapez: Nom du nouveau champ:calcul o calcul est valeur * [nom de champ inclus
dans la requte]
83
Une fois le formulaire cr, utilisez la barre d'outils pour crer une zone de texte. Une zone de
texte permet en fait d'insrer un champ. La zone cre reprend une tiquette (reprise dans
l'exemple ci-dessus comme Texte8) et une zone de champ reprise dans l'exemple ci-dessus
comme indpendant.
Dans la zone de texte, tapons =[Prix]*[quantite]. Si nous affichons les proprits de ce
champ, la source de contrle est remplac par notre texte. Nous pouvons galement changer le
nom de notre zone de texte par hTVA. L'tiquette associe n'est pas modifie, elle ne
reprsente qu'un texte descriptif qui peut dans notre cas tre effac. Vous pouvez passer en
mode formulaire pour vrifier que le montant hors TVA est bien mis jour en fonction du
prix et de la quantit dans notre formulaire contenu facture.
84
Pour le prix TVA comprise, nous allons utiliser l'autre mthode qui consiste utiliser les
fonctionnalits de la fentre proprits. Mme si cette possibilit n'a pas encore t aborde
dans ce cours en ligne (mais fait dj partie de la matire vue dans notre formation Access en
entreprise ou dans nos salles de formation) Crez une nouvelle zone de texte, slectionnez-l
avec la touche droite de la souris pour afficher la fentre de proprits. Dans la case "Source
Contrle", slectionnez la zone l'extrieur droit:
gnrateur d'expression.
En cliquant sur les petits +, ouvrez Formulaires -> Formulaires chargs. Slectionnez Quantite
(Valeur) et double cliquez dessus (Utilisez le bouton Coller fonctionne galement). Taper
dans la fentre au-dessus * et slectionnez les champs, tapez les valeurs souhaites pour
obtenir: tvac: [htva]*(1+[TVA]/100)
85
86
Les fonctions de calcul hors TVA et TVA comprise sont identiques celles des formulaires:
87
TPn:BasedeDonnes
Une base de donnes (son abrviation est BD, en anglais DB, database) est une entit dans
laquelle il est possible de stocker des donnes de faon structure et avec le moins de
redondance possible. Ces donnes doivent pouvoir tre utilises par des programmes, par des
utilisateurs diffrents. Ainsi, la notion de base de donnes est gnralement couple celle de
rseau, afin de pouvoir mettre en commun ces informations, d'o le nom de base. On parle
gnralement de systme d'information pour dsigner toute la structure regroupant les moyens
mis en place pour pouvoir partager des donnes.
Une base de donnes est :
Par exemple :
Plus prcisment :
88
Le contexte choisi pour le dveloppement des TPs est la gestion d'une discothque.
Lancement de ACCESS
1. Lancer ACCESS depuis le menu Dmarrer/Microsoft Office/ Access. Vous devez obtenir
l'cran suivant. Choisissez l'option " Nouvelle base de donnes ".
89
90
Appelez votre base de donnes bd-tpnom (bd-tp suivi de votre nom). L'extension devra par
contre tre '.mdb'. Regardez l'aide de l'explorateur les fichiers que Access a crs. Combien
y en a t-il ?
3. La fentre d'accs la base de donnes
Revenez Access vous devez avoir l'cran ci-dessous:
91
Cette fentre apparat chaque fois que vous ouvrez votre base de donnes (en mode standard).
Elle permet d'accder aux diffrents types d'objets que l'on peut crer en Access.
4. Il est demand de crer les tables dcrites ci-dessous, en respectant scrupuleusement les
noms donns aux tables et aux champs.
Des informations concernant la cration des tables sont dcrites dans : Aide
Quelques rgles sont respecter :
1. Ne pas mettre d'accent, d'espace ou de caractres particuliers dans les noms des tables, ou
92
Les caractristiques dcrites ci-dessous, peuvent se traduire au niveau des tables de 2 faons.
Soit en termes de proprits des champs, soit en termes de proprits au niveau des relations
entre tables.
Chanson : Un enregistrement de cette table correspond une chanson dans un album. Il est
noter qu'une mme chanson peut apparatre dans plusieurs albums.
Comme pour la plupart des autres tables les cls de type texte seront des chanes de
caractres formes de 5 caractres (sauf indication contraire).
L'ordre de la chanson est un entier compris entre 1 et 20.
Album : Une ligne de cette table correspond la description d'un album. Le titre, mme si
nous pouvons considrer qu'il est unique, ne sert pas de cl. La raison de l'introduction du
champ CodeAlbum en tant que cl, est le fait que l'on vite d'utiliser en cl des champs de
type texte de dimension trop grande. Ici par exemple on peut considrer que TitreAlbum sera
au moins de longueur 50.
93
Astuces :
Copie d'un attribut vers une autre table. Il suffit de se placer en mode cration sur la table
source, de slectionner les lignes correspondantes aux attributs qui nous intressent, de les
copier. Ensuite dans la table destination, en mode cration, faire coller.
94
Elle permet de choisir un mode de cration pour la nouvelle table. En ce qui nous concerne
nous crerons nos tables en Mode Cration.
Une fois ce mode de cration choisi, il reste dfinir les diffrents champs de la table. La
premire tape consiste leur donner un nom, et un type, et une description. Il reste ensuite
dfinir les proprits du champ.
95
4. Date/Heure : Permet de grer des valeurs de date et heure pour les annes comprises
entre 100 et 9999. (8 caractres)
5. Montaire : Permet de grer des valeurs montaires et des donnes numriques
utilises dans des oprations mathmatiques sur des donnes de 1 4 dcimales.
Prcision 15 chiffres gauche de la virgule et 4 chiffres droite. (8 caractres)
6. NumroAuto : Il s'agit d'un numro squentiel unique (incrment de 1 en 1) ou
numro alatoire attribu par Access lorsqu'un nouvel enregistrement est ajout une
table. Les champs NumroAuto ne peuvent pas tre modifis. (4 octets)
7. Oui/Non : Permet de grer des valeurs boolennes (Oui et Non) et des champs qui
contiennent exclusivement une valeur duale (Oui/Non, Vrai/Faux, ou Actif/Inactif).
(1 bit)
8. Objets OLE : Permet d'insrer dans une base de donnes des donnes telles qu'une
feuille de calcul, un document texte, une image, des graphiques, des sons ou toute
autre donne binaire. Ce type d'objet peut tre li ou incorpor une table.
9. Liens Hypertexte : Texte ou combinaisons de texte et de nombres enregistres sous
forme de texte et utilises comme adresse de lien hypertexte.
Une adresse de lien hypertexte peut comprendre jusqu' trois parties :
a. Texteaffich : texte qui apparat dans un champ ou contrle.
b. Adresse : chemin d'accs vers un fichier (chemin UNC) ou une page (URL).
c. Sous-adresse : emplacement dans le fichier ou la page.
La mthode la plus simple pour insrer une adresse de lien hypertexte dans un champ
consiste cliquer sur Lien hypertexte dans le menu Insertion.
96
10. Liste de choix : L'assistant Liste de choix Cre un champ qui permet de choisir une
valeur partir d'une autre table ou d'une liste de valeurs l'aide d'une zone de liste ou
d'une zone de liste modifiable.
&
<
>
paramtrage ValideSi sont tapes, vous pouvez spcifier le message afficher l'utilisateur
en dfinissant la proprit MessageSiErreur (ValidationText) du champ.
Null interdit : La proprit Null interdit (Required) permet de spcifier si une valeur est ou
non requise dans un champ. Si la valeur Oui est attribue cette proprit, lorsque vous entrez
des donnes dans un enregistrement, vous devez entrer une valeur dans le champ ou dans
n'importe quel contrle dpendant de ce champ. De plus, sa valeur ne peut pas tre Null.
Chaine Vide autorise : La proprit AllowZeroLength permet de spcifier si une chane
vide (" ") est une entre valide dans un champ de table. La proprit AllowZeroLength
s'applique uniquement aux champs de table de type texte, mmo et lien hypertexte.
Index : La proprit Index (Indexed) permet de dfinir un champ individuel comme index.
Un index acclre les requtes sur les champs indexs ainsi que les oprations de tri et de
regroupement. La proprit Index (Indexed) utilise les paramtres suivants :
Non
doublons)
Cration de la cl primaire
Une fois la description de la table termine, il faut dfinir une cl pour la table. Dans le cas o
l'utilisateur oublie de crer la cl, le message suivant apparat :
(La cl primaire est une donne unique qui permet de diffrencier chaque enregistrement,
deux albums peuvent avoir le mme auteur et le mme genre, on utilise cette cl pour les
diffrencier)
99
Si l'utilisateur rpond oui, un nouveau champ est ajout la table pour servir de cl. Ce
champ est automatiquement de type numrotation automatique.
Par contre si vous dsirez crer votre propre cl, il faut slectionner le ou les champs que vous
souhaitez dfinir comme cl primaire. Pour slectionner un champ, cliquez sur le slecteur de
ligne en regard du champ. Pour slectionner plusieurs champs, maintenez la touche CTRL
enfonce et cliquez sur le slecteur de ligne correspondant chaque champ. Puis Cliquer sur
Cl primaire dans la barre d'outils.
En access nous parlerons de relations pour nommer les liens, et de tables pour nommer les
relations.
Liens particuliers
Pour crer une relation entre une table et elle-mme, la table doit tre ajoute deux fois dans
la fentre de dfinition des liens.
Pour dfinir plusieurs liens entre deux mmes tables celles-ci doivent tre ajoutes autant que
ncessaire dans la fentre de dfinition des liens.
Compatibilit des types
Pour dfinir les liens entre tables toutes les tables doivent tre fermes. Il n'est pas possible de
crer ou modifier des relations entre des tables ouvertes.
100
Dans la plupart des cas, le lien fait intervenir le champ cl primaire (qui est affich en gras)
d'une table avec un champ correspondant d'une autre table (souvent du mme nom) appel la
cl externe.
Les champs lis ne doivent pas obligatoirement avoir le mme nom, mais ils doivent possder
le mme type de donnes et contenir le mme type d'informations. Il existe deux exceptions
cette rgle :
En outre, lorsque les champs correspondants sont des champs de type Numrique, ils doivent
avoir le mme paramtrage de la proprit Taille du champ.
Intgrit des donnes
Lors de la dfinition des rgles d'intgrit rfrentielle, Access peut refuser d'appliquer la
rgle si les donnes contenues dans la base invalident la rgle en cours de dfinition.
Dans ce cas il faut rendre cohrente la base avant de redfinir les rgles d'intgrit.
5. Cration des relations entre tables
Pour complter le modle relationnel propos il est demand de dfinir les liens entre les
tables cres. (Un lien permet de lier deux table entre elle grce un champ prsent dans
les deux tables. Exemple : Album et Chanson CodeAlbum)
Attention ne pas tenir compte de la table Exemplaire
101
La dfinition d'une relation entre deux tables est ralise grce la boite de dialogue suivante
:
Il est possible d'appliquer l'intgrit rfrentielle, de mettre jour en cascade les champs
correspondants, d'effacer en cascade les enregistrements correspondants, et de dfinir le type
de jointure que l'on souhaite avoir pour les tables concernes.
Pour chacune des relations que vous dfinirez, pensez dfinir des rgles de mises jour qui
garantissent un maximum de cohrence pour votre base de donnes.
Pouvez-vous expliquer les problmes rencontrs lors de la cration des liens?
6. Saisie de donnes
Nous vous demandons maintenant de saisir les informations suivantes dans votre base de
donnes.
Artiste
102
Aller sur un site Internet type FNAC pour trouver des titres dalbum, lartiste, les
chansons et le genre.
Exemple :
Artiste :
James
Blunt
Cration de formulaire
103
Lorsque l'on cr un formulaire il est ncessaire de passer par certaines tapes. Nous
prsentons ci-dessous la cration d'un formulaire simple en prsentant les diffrentes
caractristiques d'un formulaire.
Etape 1 : Demande de cration
Il est possible de crer soi-mme un formulaire ou de demander l'Assistant Formulaire de
Microsoft Access de s'en charger pour soi. L'Assistant Formulaire permet de gagner du temps
en excutant pour vous les tches essentielles. Il pose des questions et cre un formulaire en
fonction
des
rponses.
Mme si la cration de formulaires peut sembler simple, il est utile de faire appel un
Assistant Formulaire pour crer rapidement tous les contrles d'un formulaire. On peut
ensuite basculer en mode Cration pour personnaliser le formulaire.
Lorsque l'on demande la cration d'un formulaire la fentre suivante apparat :
A cette tape on choisit le mode de cration pour le formulaire ainsi que la source de
donnes, qui peut tre une table ou une requte.
Pour la cration de notre formulaire nous choisirons la table Genres.
Etape 2 : Construction du formulaire
104
En mode d'apprentissage il convient d'utiliser le mode cration pour bien comprendre ce que
vous faites et les possibilits offertes par Access.
En mode d'apprentissage il convient d'utiliser le mode cration pour bien comprendre ce que
vous faites et les possibilits offertes par Access.
Le formulaire ci-dessus est construit en utilisant la bote outils qui permet de choisir les
contrles placer dans le formulaire.
Il est possible de faire apparatre les noms des champs de la source de donnes lorsque celleci existe. En ralisant un presser-dplacer d'un nom de champ de cette fentre vers la fentre
du formulaire, on place un contrle de type zone de texte li au champ utilis.
Nous dcrivons les principaux contrles dans l'ordre o ils apparaissent dans la bote outils.
tiquette : Contrle qui affiche du texte descriptif un titre, une lgende ou des
instructions dans un formulaire ou dans un tat.
105
Zone de texte : Zone utiliser pour afficher, entrer ou modifier les donnes de la source
sous-jacente d'un formulaire ou d'un tat, pour afficher les rsultats d'un calcul ou accepter
des donnes entres par un utilisateur.
Groupe d'options : Contrle utilis en conjonction avec des cases cocher, des boutons
d'options ou des boutons bascule de manire afficher un jeu de valeurs alternatives.
Zone de liste : Contrle qui permet de manipuler une liste droulante de valeurs. En mode
Formulaire, on peut raliser une slection dans la liste pour entrer une valeur dans un nouvel
enregistrement ou pour modifier la valeur d'un enregistrement existant.
Bouton de commande : Permet d'excuter des actions, par exemple, rechercher un
enregistrement, imprimer un enregistrement ou appliquer un filtre formulaire.
Il est demand de crer le formulaire FAlbum suivant :
Les Requtes
106
Des informations concernant les requtes en ACCESS sont dcrites dans : glossaire et aide sur
le site http://circe.univ-fcomte.fr/Sylvie-Damy/bd/tp-2005/index.html
Les exemples de requtes prsents ci-dessous utilisent la table chansons suivante:
RSTitres
Cette requte donne le titre et l'ordre des chansons contenues dans l'album N 10000.
L'affichage tant ralis par ordre alphabtique sur le titre des chansons.
RSTitresL
Donne les enregistrements de la table chansons dont le titre commence par la lettre "L".
107
RTitres73
Donne les noms des chansons et des artistes des albums sortis en 1973. L'affichage tant
ralis par ordre alphabtique des artistes et des titres de chansons.
108
Sources
http://www.commentcamarche.net/bdd/bddintro.php3
http://www.ybet.be/access/formation_access.htm
109