Академический Документы
Профессиональный Документы
Культура Документы
1 sur 40
<09coursaccess.htm>
Cours Access
2 sur 40
Table:
Requte:
Formulaire:
Etat:
Macro:
Il existe aussi des Pages, pour la mise en commun des donnes sur rseau Intranet, et des Modules, pour la
programmation. Nous ne verrons pas ces deux objets.
Cours Access
3 sur 40
Les relations entre les objets, et leurs fonctions, sont reprsentes de manire simplifie dans lillustration
ci-dessus. Les macros ny sont pas reprsentes, car elles ne remplissent aucune fonction affectant lorganisation
dune base de donnes Access.
Cours Access
4 sur 40
Structure hirarchique
Structure en toile
2. La gestion de la distribution des billets de cinma. Structure en toile autour de la table des sance, plus la table
des ventes
Cours Access
5 sur 40
3. La gestion des traitements administrs dans un service hospitalier. Structure en toile autours de la table des
traitements, plus la table des mutuelles.
4. La gestion des locations pour des clients d'une agence immobilire. Structure en toile autours de la table des
locations, plus la table des propritaires.
Cours Access
6 sur 40
5. La gestion d'un stock de cassettes vidos personnelles reprenant des films, tlfilms et sries. Structure de
plusieurs plusieurs entre les mtrages et les cassettes, plus une table reprenant les titres de sries, plus une table
reprenant les compositeurs de musiques. Attention la "relation cyclique" entre Metrages, Series et Compositeurs!
Elle est justifie dans ce cas-ci.
Aprs avoir cr des tables, vous pouvez crer des requtes, des formulaires, des tats et d'autres objets base de
donnes qui faciliteront l'utilisation des donnes.
Cours Access
7 sur 40
nouvelles ventes. Lutilisateur na qu se laisser guider par les diffrents boutons, messages, ... Nos formulaires de
la base de donnes sont Menu des Formulaires , Encodage Clients , Encodage Ventes , Encodage
Tomes , Encodage Sries , Acheteurs dun Tome , Sries dun diteur , Tomes dune srie ,
Sous-formulaire1 , Sous-formulaire2 .
On proposera une srie de requtes filtrant les tomes selon des critres bass sur le titre, le scnariste, la date de
parution,... Des requtes " regroupement " permettent d'extraire des donnes numriques partir des donnes
initiales, et permettront ensuite de crer des graphiques. Un autre type de requtes, les requtes action, permettra
par exemple de mettre les prix des albums jour chaque anne. Les requtes de la base de donnes sont Rq
Ventes , Rq Van Hamme ou Rosinsky , Rq Age dArgent (1955-1970) , Rq Tomes en Les ... , Rq
Tomes en ... , Rq Ventes Mois , Rq Compte Tomes par Srie , Rq Cote Moyenne Srie , Rq Inflation ,
Rq Inflation (Annuler) , Rq Anciens Clients , Rq Ventes par Client , Rq Catalogue des Editeurs , Rq
Editeurs , Rq Sries , Rq Tomes .
Le grant de la librairie aimerait avoir le rapport de ses ventes dalbums mois aprs mois. Ceci se fera grce un
Etat appropri. Le grant disposera dautres Etats, comme les ventes par client, le catalogue des albums par
diteur, et les tiquettes de publipostage pour les commandes des clients, le double graphique des ventes par
mois.
Un souci de prsentation mnera lutilisation de boutons faisant appel des macros trs simples (ouvrir ou fermer
un formulaire, diminuer le nombre dalbums en stock ds quun album est vendu, ..).
Cours Access
8 sur 40
Cours Access
9 sur 40
Par exemple, Menu des Formulaires: Certains des formulaires de 9eArt ne sont pas destins
tre ouverts directement. Ainsi, ce formulaire de prsentation aura pour simple but de proposer de
nouvrir que les formulaires intressants: deux de listings, quatre dencodage. Ce formulaire contient
au total six boutons de commande renvoyant la macro Ouvrir.
Cours Access
10 sur 40
Dans Access, chaque instruction s'appelle une action. Lorsque vous excutez la macro, Access ralise les actions,
dans la squence indique, en utilisant les objets et les donnes que vous avez spcifis en tant qu'arguments des
actions. Les macros servent automatiser les tches rptitives et enrichir les possibilits de votre base de
donnes.
Les actions sont dj dfinies. Il suffit de les choisir dans la liste de propositions. Dans la partie infrieure de la
fentre, spcifiez les arguments de l'action.
Par exemple, La macro Fermer:
Elle permet de fermer le formulaire " 1: Menu " et de retourner la fentre Base de donnes.
action
Fermer
1.7. En Conclusion
Malgr laspect trs construction quimpose la cration de la base de donne, il na t utilis aucune notion de
programmation. Vous serez capable, et serez tenu, dici la fin du cours, de crer et remettre une base de donne
semblable, selon les critres dfinis, celle propose ici.
La mise en forme de la base de donne est telle que la base est utilisable, dune part par ses concepteurs ou par
des connaisseurs d'Access, dautre part, et plus intressant, par des utilisateurs ignorant tout d'Access. Ceci est d
aux formulaires indpendants, aux liste modifiables, aux messages dinformations, ...
Cours Access
11 sur 40
Cours Access
12 sur 40
Concernant les formats de dates, voici les interprtations actuelles des formats abrgs pour les annes.
Du 1/1/00 jusqu'au 12/31/29 est interprt comme du 1/1/2000 jusqu'au 12/31/2029
Du 1/1/30 jusqu'au 12/31/99 est interprt comme du 1/1/1930 jusqu'au 12/31/1999
Il est vivement conseill d'entrer les dates sans abrviations. Par ailleurs, bien que le format soit yyyy, il faudra
encoder les annes sous la forme 1/1/1992. Une date telle que 1992 (sans prcision de jour et de mois) ne sera
pas accepte.
On affecte une valeur par dfaut (Default Value) au champ [Date Parution] dans le but de minimiser lencodage des
dates de parution des nouveaux albums parus. Le gnrateur dexpressions permet de construire ce genre de
donnes. Pour obtenir le gnrateur dexpressions, on clique au niveau de la proprit valeur par dfaut, puis sur le
bouton points de suspensions. Dans l arborescence propose, on choisit successivement Functions,
Build-in-Functions, Date/Time, Date. En cliquant sur le bouton Coller (Paste), la fonction Date(), renvoyant la date
actuelle, sinscrit dans la partie suprieure de la fentre (vrifier que rien dautre napparat). On clique sur OK pour
confirmer cette valeur par dfaut.
Aprs avoir encod une description dans la colonne du mme nom, la table apparat sous la forme suivante.
Champ
Type de champ
Code Tome
Texte
N Tome
Numrique
Titre Tome
Texte
Scnariste
Texte
Dessinateur
Texte
Anne Parution
Date/Heure
Prix
Montaire
Couverture
Liaison OLE
Nb Exemplaires
Numrique
Code Srie
Texte
Description
Code reprsentant la srie et le numro de tome. exemple: tin001
En appuyant sur le bouton feuille de donnes (premier bouton de la barre d'outils), la table passe en mode feuille de
donnes, et est prte pour un premier encodage. A noter que lors de ce premier passage dun mode lautre,
Access demande sous quel nom sauver la table. Le nom de la table est Tomes. Notons aussi que le bouton feuille
de donnes est alors remplac par le bouton cration. Pour faciliter lencodage, on rtrcit les colonnes [Code
Tome], [N Tome] et [Anne Parution] en cliquant-glissant sur les sparations de colonnes (lorsque le pointeur a
pris la forme dune double flche).
La mthode utilise pour lencodage consiste saisir un nombre suffisant denregistrements (une dizaine) dans
chaque table pour vrifier que les objets que lon construira (formulaires, requtes, ) fonctionnent
convenablement. Le reste de lencodage se fera partir des formulaires.
Notons entre autres choses que les champs numriques contiennent dj une valeur 0 , que la date par dfaut
est bien prsente, ainsi que le symbole "" pour le prix. Lencodage nous confrontera au problme suivant: une date
de parution comme 1950 sera refuse car il ne sagit pas dune date complte. Les dpts lgaux de parution de
bandes dessines se font (souvent) par trimestre. Le mieux est alors dentrer des dates comme 1/1/1950, 1/4/1950,
... Le rsultat affich sera le mme ( savoir 1950) mais ce type de donnes pourrait savrer utile pour la
construction de certains tats (un regroupement par trimestre par exemple).
Voici quelques exemples dencodage. On laisse le champ [Couverture] vide jusqu' l'encodage dans les
formulaires.
Code
Titre Tome
Scenariste
Dessinateur
Date
Prix
Couverture
Nb
Code Srie
ast001
1 Astrix le Gaulois
Goscinny
Uderzo
1961
350 FB
18 ast
ast002
2 La Serpe d'or
Goscinny
Uderzo
1962
300 FB
20 ast
ast003
Goscinny
Uderzo
1963
300 FB
20 ast
tin001
1 Tintin au Congo
Herg
Herg
1946
400 FB
19 tin
tin002
2 Tintin en Amrique
Herg
Herg
1945
400 FB
20 tin
tin003
Herg
Herg
1955
350 FB
20 tin
Cours Access
13 sur 40
Type de champ
Code Client
Texte
Nom Client
Texte
Prnom Client
Texte
Adresse Rue
Texte
Adresse No
Texte
Adresse CP
Texte
Adresse Commune
Texte
Tlphone
Texte
Description
premire lettre du prnom + 2 premires lettres du nom
Lors du passage en mode feuille de donnes, la table est sauve sous le nom Clients .
Voici quelques exemples dencodages.
Code Client
Nom Client
Prnom Client
Tlphone
aaa
Aaron
Albert
0474 34 56 78
bba
Ballard
Bernadette
0478 45 67 89
cca
Calais
Caroline
0495 22 33 44
Type de champ
Code Vente
Autonumber
Code Client
Texte
Code Tome
Texte
Date Vente
Date/Heure
Description
Le champ [Code Client] tablit le lien avec la table Clients, et le champ [Code Tome] tablit le lien avec la table
Tomes. On tudiera le rle de cette table dans les relations dcrites ci-dessous.
La table Clients (Archive) reprend les mmes champs que dans la table Clients, mais uniquement pour les clients
n'ayant plus fait d'achat depuis fin 1999. Cette table nest pas construite par le concepteur, mais par une requte de
type action que nous tudierons plus loin.
La table Sries contient les donnes relatives aux 31 sries publies.
Cours Access
14 sur 40
Champ
Type de champ
Code Srie
Texte
Srie
Texte
Crateur
Texte
Date Cration
Date/Heure
Description
Memo
Code Editeur
Texte
Description
3 premires lettres du nom de la srie
Le format du champ [Date Cration] est lui aussi yyyy. Le champ [Code Editeur] permet de faire le lien avec la table
" Editeurs ". Le nombre de caractres du champ [Code Srie] est rduit 3. La Cl Primaire est sur le champ [Code
Srie].
La table Editeurs contient les donnes relatives aux 8 diteurs considrs:
Champ
Type de champ
Code Editeur
Texte
Editeur
Texte
Adresse
Memo
Tlphone
Texte
Responsable
Texte
URL
Lien Hypertexte
Description
3 premires lettres du nom de lditeur
Le nombre de caractres admis pour le type texte a t modifi de 50 25 caractres. Pour le champ [Code
Editeur], ce nombre a t rduit 3. La Cl Primaire est sur le champ [Code Editeur]. Un lien hypertexte permet
d'aller visiter le site de l'diteur.
Cours Access
15 sur 40
Access propose avant la confirmation de choisir lintgrit rfrentielle (Referential Integrity). Il sagit de rgles
suivre pour maintenir les relations dfinies entre les tables lorsquon ajoute ou supprime des enregistrements. Si on
applique l'intgrit rfrentielle, Access empche
a. d'ajouter de nouveaux enregistrements dans une table relie pour laquelle il n'existe pas d'enregistrement
parent ,
b. de procder la modification de valeurs dans une table source qui entranerait des enregistrements
orphelins dans une table relie,
c. de supprimer des enregistrements d'une table source dans le cas o il existe des enregistrements
enfants correspondants.
Les diffrentes relations entre les tables sont motives comme suit.
Cours Access
16 sur 40
C'est prsent la table DetailsVentes qui sert de jonction entre les tables Tomes et Ventes. Il y a donc une relation
"plusieurs plusieurs" entre ces deux tables. Par extension, nous pouvons aussi dire qu'il existe une relation
"plusieurs plusieurs" entre Tomes et Clients.
Ce type de structure se retrouve souvent dans des bases de donnes de type commercial. Pensez vos tickets de
supermarchs ou autres factures: chaque ligne du ticket correspond un enregistrement de la table DetailsVentes
(l'objet, sa quantit, le prix partiel, ...), et l'en-tte et le pied du ticket correspondent aux donnes d'un
enregistrement de la table Ventes (ventuellement le nom du client, la date, le prix total, ...).
En remarque, les champs [Prix Partiel] et [Prix Vente] ne sont pas ncessaires. Ils peuvent tre calculs tout
moment par Access ( l'aide d'une requte par exemple) partir du prix du tome et de la quantit achete (en
fonction du client, en fonction de la date, ...). Des tats ou des formulaires qui rcapituleraient les ventes d'un client
ou les ventes par trimestres (par exemple) pourraient tre conus sans l'existence de ces champs. Leur prsence
n'est cependant pas interdite. Elle facilitera peut-tre la cration des tats ou formulaires en question.
Nous laissons au lecteur le soin de chercher les "trucs" (requtes, macros, calculs partir des champs de
formulaires, ...) qui permettent de mettre jour les valeurs de ces champs calculs.
Par ailleurs, une macro de "9eArt" enlve un exemplaire du stock chaque vente d'un album. Avec cette nouvelle
Cours Access
17 sur 40
structure, la macro devrait tre adapte pour dcompter le nombre d'exemplaires vendus lors de chaque vente.
4.5. Voir les relations de type "un plusieurs" dans les tables parents
Lorsque vous tes dans une table parent, chaque enregistrement est prcd d'un signe "plus". Lorsque vous
cliquez sur ce signe, des enregistrements supplmentaires s'affichent. Ces enregistrement sont les enfants de
l'enregistrement parent slectionn. Ce mode de visualisation permet d'avoir une vue d'ensemble plus large sur les
donnes et les relations entre deux tables. Ce mode s'apparente celui des formulaires sous-formulaires.
Si une table est le parent de deux autres tables, Access vous demande dans une boite de dialogue, lorsque vous
cliquez sur le signe "plus", de quelle table enfant vous voulez voir les enregistrements.
Cours Access
18 sur 40
des premiers rles dune requte est de rassembler des champs slectionns dans plusieurs tables.
Ensuite, ce type de requtes consiste filtrer les enregistrements qui satisfont un critre prdfini. Pour
crire ces critres, il suffit de se familiariser avec quelques symboles ou oprateurs dont certains sont
peut-tre connus: <, >, *, [ ], Et (And), Ou (Or), Comme (Like), ... (Voir la fin de la partie sur les requtes
pour un tableau rcapitulatif des symboles et oprateurs intressants.)
Quand on tape des critres dans plusieurs cellules, Access les combine au moyen de l'oprateur Et (And)
ou Ou (Or). Si les expressions occupent des cellules diffrentes mais dans la mme ligne, Access utilise
l'oprateur Et (And). Si des expressions ne se trouvent pas dans la mme ligne de la grille d'interrogation,
Access utilise l'oprateur Ou (Or)
Rq " Van Hamme " ou " Rosinski " : Requte slection, tables Tomes et Sries.
Comme premier exemple, on construit une requte qui rassemble la liste de tous les albums auxquels le
scnariste Van Hamme ou le dessinateur Rosinski ont particip, ensemble, ou indpendamment.
Pour crer cette requte, on clique sur lobjet Requtes (Queries), puis sur Nouvelle (New). Les requtes de
cette base seront cres partir du mode cration (Design View). Les tables utiliser sont Tomes et
Sries. Les champs utiliser sont [Code Tome], [N Tome], [Titre Tome], [Scnariste], [Dessinateur], et le
champ [Srie] de la table Sries. En appuyant sur le bouton feuille de donnes, on remarque que la relation
entre les deux tables est bien comprise par la requte (le champ [Code Srie] est remplac par le nom
complet de la [Srie]). On retourne au mode Cration pour saisir nos critres. Sur la ligne Critres (Criteria),
on entre Van Hamme dans le champ [Scnariste] et Rosinski dans le champ [Dessinateur]. Ds que lon
quitte une cellule, des guillemets se positionnent autours des critres. En mode feuille de donnes, on
dcouvre les albums Thorgal produit par les deux artistes. Pour obtenir les albums produits par lun ou
par lautre, il faut entrer le premier critre sur la ligne Critres (Criteria) et le second sur la ligne Ou (Or). En
mode feuille de donnes, on redcouvre les albums Thorgal auxquels s'ajoutent les albums Largo
Winch et XIII . On peut utiliser les oprateurs Et (And) et Ou (Or) pour gnrer des critres plus
pousss.
Lors de la fermeture de la requte, on lenregistre sous le nom Rq " Van Hamme " ou " Rosinsky " .
Rq Age dArgent (1955-1970): Requte slection, tables Tomes et Sries.
Les critres ne sont pas rservs au type texte. La requte suivante les utilise sur un champ de type
Date/Heure. Cette requte extrait tous les albums parus entre 1955 et 1970.
Pour crer cette requte, on clique sur Nouvelle (New), puis sur Cration (Design View). Les tables utiliser
sont Tomes et Sries. Les champs utiliser sont [Code Tome], [N Tome], [Titre Tome], [Scnariste],
[Dessinateur], [Date Parution], et le champ [Srie] de la table Sries. Il faut extraire les albums parus aprs
le 1/1/1955 mais avant le 1/1/1970 (2 critres). Le multi-critre agit cette fois sur le mme champ. On utilise
loprateur Et (And) sous la forme <1/1/1970 Et (And) >=1/1/1955. Des caractres dises apparaissent
lorsquon quitte la cellule : <#01/01/1970# Et (And) >=#01/01/1955#. En demandant le tri croissant (Sort :
Ascending) sur le champ [Date Parution], la requte affiche ces tomes dans lordre chronologique de leur
parution.
Il est possible que les dates figurant en salle Renaissance ou sur d'autres machines que vous utiliserez
soient les dates au format amricain. Ceux-ci inversent le jour et le mois. Ainsi, le 12/10/1999 doit alors tre
interprt comme le 10 dcembre et non le 12 octobre. Cela ne cause pas de problme lors du passage
d'une machine l'autre, Windows interprtant automatiquement la date de manire correcte, ou la
corrigeant mme lors de l'encodage.
Cours Access
19 sur 40
entre le critre chat (les guillemets apparaissent automatiquement). Le mode feuille de donnes naffiche
aucun enregistrement, car aucun album ne sappelle Chat .
Pour prciser que chat nest quun mot du titre, on utilise lastrisque qui remplace nimporte quel
caractre. Le nouveau critre est *chat* (la machine affiche Like *chat*). Le rsultat en mode feuille de
donnes est un ensemble dalbums contenant le mot chat .
Pour automatiser cette recherche avec un mot-cl quelconque sans chaque fois modifier le critre de la
requte en mode modification, on remplace le critre par Like *&[Entrez le mot cl]&*. Le champ [Entrez le
mot-cl !] est un champ inconnu pour Access. Access demande alors une valeur pour ce paramtre
lutilisateur. Chaque nouvelle ouverture de cette requte permettra dentrer un nouveau mot-cl.
En fermant la requte, on la sauve sous le nom Rq Tomes en ***
Rq Compte Tomes par Srie: Requte Opration, base sur les tables Sries et Tomes.
Nous cherchons les sries durables , cest dire celles qui ont vu paratre un grand nombre de tomes.
Pour cela, Access devra calculer le nombre de tomes parus dans chaque srie.
Pour crer cette requte, on clique sur Nouvelle (New), puis sur Cration (Design View). Les tables utiliser
sont Tomes et Sries. Les champs faire apparatre sont [Srie] et [N Tome]. On clique sur le bouton
Oprations (Totals). Lopration par dfaut est le Regroupement (Group By). On dsire le Regroupement
pour la [Srie], mais le Compte (Count) pour le [N Tome]. On en profite pour voir les autres oprations :
Somme (Sum), Moyenne (Avg), Minimum (Min), Maximum (Max), En passant en mode feuille de
donnes, on vrifie que les 250 enregistrements sont regroups en 31 sries avec chaque fois le nombre
dalbums parus dans la srie.
En fermant la requte, on la sauve sous le nom Rq Compte Tomes par Srie
Cours Access
20 sur 40
Cours Access
21 sur 40
Le tableau ci-dessous reprend les syntaxes principales utilises dans les critres de requtes.
Like "S*"
Like "*Imports"
Fournit tous les enregistrements pour lesquels le champ termine par le mot
"Imports".
Like "[A-D]*"
Fournit tous les enregistrements pour lesquels le champ commence par une
lettre entre A et D.
Like "*ar*"
Like "Acc?"
Like
[forms]![NomForm]![NomChamp]
< 100
Fournit tous les enregistrements pour lesquels le champ contient une valeur
numrique infrieure 100.
< 1/1/2000
Fournit tous les enregistrements pour lesquels le champ contient une date
antrieure au 1/1/2000.
A And B
A Or B
A Xor B
Null
Is not null
Fournit tous les enregistrements pour lesquels le champs n'est pas vide.
6. Cration de formulaires
Maintenant que les donnes sont encodes et que des outils pour les analyser et modifier ont t crs, on
va faciliter le travail de gestion de lutilisateur grce aux formulaires. On dsire prsent faciliter lencodage
et soigner la prsentation des donnes. En exemple, on va faire en sorte que la couverture des albums soit
visible sur une fiche reprenant ses caractristiques. En termes techniques, la transformation de
<08-9eArt-trr.mdb> va consister crer des formulaires, puis au cours suivant, y ajouter des macros.
Il existe diffrents types de formulaires. Parmi les types principaux, on retiendra les formulaires colonnes,
les formulaires tabulaires, les formulaires sous-formulaires, les formulaires graphiques, les formulaires
tables pivots, les formulaires indpendants.
Les formulaires colonnes affichent les valeurs des champs les unes sous les autres, un enregistrement la
fois.
Les formulaires tabulaires affichent les donnes telles que dans une table: les champs en colonnes, les
enregistrements en lignes. La prsentation des donnes est plus soigne que dans les tables.
Les formulaires sous formulaires sont composs d'un formulaire principal contenant les enregistrements
parents d'une relation "un plusieurs", et d'un sous-formulaire contenant les enregistrements enfants de
cette relation.
Les formulaires graphiques affichent les donnes sous formes de graphiques varis.
Les formulaires tables pivots font les calculs que vous dsirez, tels que la somme et le compte, bass sur la
manire dont les donnes sont arranges dans le formulaire. Par exemple, un formulaire table pivot peut
afficher les valeurs d'un champ horizontalement ou verticalement, et ensuite calculer le total de la ligne ou de
la colonne.
Les formulaires indpendants ne contiennent pas de donnes provenant des tables et requtes. Ils
permettent l'utilisateur de se guider dans la base de donnes, ou d'entrer des paramtres ncessaires aux
fonctionnements des objets de la base.
Cours Access
22 sur 40
Pour crer un nouveau formulaire, il faut avant tout cliquer sur lobjet des formulaires, puis sur le bouton
Nouveau (New). Regardons d'abord les diffrents Assistants disponibles. On choisit ensuite lAssistant
Formulaire (Form Wizard). La table utiliser est la table Clients. Tous les champs sont faire apparatre.
Les champs apparatront en colonne (Columnar). Pour ce qui est du style, le choix est libre. Notons
toutefois qu'un style est compos d'une image de fond. Une image de fond est soit encastre, soit lie au
formulaire. Dans le cas de l'encastrement, la taille de la base de donne augmente en fonction de la taille
de l'image. Dans le cas du lien, la base de donne garde sa taille d'origine, mais l'image lie doit suivre la
base de donnes lors de tous ses dplacements (disquette, autre PC, ). Cette distinction se fait dans la
proprit Type d'Image (Picture Type) du formulaire: Encastre (Embedded) ou Lie (Linked).
Lintrt dun tel formulaire est un encodage ais : il suffit datteindre la fiche vierge (5e bouton en bas du
formulaire)
et de saisir les nouvelles donnes.
Acheteurs dun tome: Tabulaire, requte Rq Ventes.
Les formulaires tabulaires prsentent les donnes sous forme de tableaux, comme dans les tables, mais
avec une mise en forme choisie par le concepteur. On va par exemple afficher le listing de tous les achats
avec le code de lalbum et les coordonnes de lacheteur. Ce formulaire sera utilis par la suite, lors de la
cration du formulaire des tomes (Il permettra de voir tous les acheteurs d'un tome choisi).
Pour crer ce formulaire, on clique sur le bouton Nouveau (New). On choisit lAssistant Formulaire (Form
Wizard). La requte utiliser est la requte Ventes. Les champs utiliser sont [Code Tome], [Nom Client],
[Prnom Client] et [Tlphone]. Les donnes sont trier par vente. Les champs apparatront en tableau
(Tabular). Pour le style, le choix est libre. Une fois le formulaire cr, on le personnalise partir du mode
cration (modification des couleurs, polices, largeur des zones de texte, ).
Encodage sries: Colonne simple.
Cours Access
23 sur 40
Ce formulaire permettra dencoder les renseignements concernant une nouvelle srie. Le formulaire
contiendra une liste modifiable pour encoder lditeur. Le contenu de cette liste est le contenu de la requte
" Rq Editeurs ". Ainsi, il ne faudra pas entrer le code de lditeur soi-mme (le code tant la seule
information disponible dans la table des sries, et ces codes n'tant pas toujours facilement mmorisables),
mais simplement cliquer sur le bon nom dans la liste (issue de la table des diteurs). Grce aux relations, la
machine identifie correctement l'diteur partir de son code.
Pour crer ce formulaire, on clique sur le bouton Nouveau (New). On choisit lAssistant Formulaire (Form
Wizard). La table utiliser est la table Sries. Tous les champs sont utiliser. Les champs apparatront en
colonne (Columnar). Une fois le formulaire cr, on le personnalise partir du mode cration (dplacement
de la zone de texte [description] et de son tiquette).
Pour obtenir la liste modifiable (Combo Box), on supprime la zone de texte [Code Editeur] et on la remplace
par une liste modifiable. Pour une construction assiste, il faut dabord avoir enfonc l'outil reprsentant la
baguette magique (outil Assistant Outils). Nous dtaillons plus loins les quelques outils de la boite outils.
A la premire tape de lAssistant, on prcise que les donnes proviennent (dune table ou) dune requte.
A la deuxime tape, on prcise quil sagit de la requte rq diteurs . A la troisime tape, on
slectionne tous les champs. A la quatrime tape, on prcise le tri sur ces champs. A la cinquime tape,
on dtermine la largeur de chaque colonne. A la sixime tape, on indique que le champ [Code Editeur]
identifie de manire unique la donne mmoriser (les autres colonnes ne sont donc prsentes que pour
informer l'utilisateur). A la dernire tape, on prcise que le champ stockant linformation est le champ
[Code Editeur] de la table Sries. On termine en modifiant ltiquette de la liste modifiable.
Cours Access
24 sur 40
On va voir comment se partagent les 250 albums entre les 31 sries. Pour crer ce formulaire, on clique sur
le bouton Nouveau (New). On choisit lAssistant Formulaire (Form Wizard). La table utiliser est la table
Sries. Tous les champs sont utiliser. On en profite pour ajouter la table Tomes et tous ses champs (sauf
peut-tre le champ [Code Srie] qui ne serait qu'une rptition). Ayant choisis des champs issus de
plusieurs tables, l'tape suivante nous propose de construire un formulaire sous formulaire, ou un
formulaire li un autre formulaire. On choisit la premire option. Les tapes suivants concernent la mise
en forme de ces formulaires.
Un autre mthode de construction plus personnalise consiste crer le formulaire en 3 tapes:
A) Il faut construire les fiches des sries. B) Il faut crer le listing de tous les tomes. C) Il faut incorporer ce
dernier formulaire dans le prcdent. Cest toujours le champ [Code Srie], lien entre les tables Sries et
Tomes, qui permet dafficher les tomes appropris.
Notons que le formulaire Tomes dune Srie figurant dans la base de donnes <08-9eArt.mdb> contient
une liste modifiable permettant datteindre lenregistrement dsir. La construction de la liste modifiable se
fait ainsi:
- A la premire tape de l'assistant on prcise que l'on doit atteindre un enregistrement du formulaire bas
sur la valeur qui sera slectionne dans la liste modifiable.
- A la deuxime tape on prcise que les champs utiliser sont le code srie et la srie.
- A la troisime tape on prcise la largeur des colonnes.
- La quatrime tape nous demande un nom pour l'tiquette (disons [Choix Code Srie]).
Encodage ventes: Colonne simple, table Ventes.
Cours Access
25 sur 40
Ce formulaire sera le formulaire de travail de lutilisateur. Pour encoder une nouvelle vente, il suffira de
suivre les instructions affiches dans les listes modifiables, savoir, choisir le client dans une premire liste
modifiable, choisir lalbum vendu dans une deuxime liste, vrifier que la date de vente est bien la date
actuelle, et confirmer la vente. La vente sera encode en faisant deux choix (le client et lalbum) et en
cliquant sur un bouton. En prime, le nombre dalbums de ce titre en stock sera automatiquement diminu
dune unit.
Pour crer ce formulaire, on clique sur le bouton Nouveau (New). On choisit lAssistant Formulaire Colonne
(Autoform Columnar). La table utiliser est la table Ventes. En mode formulaire, on constate quil faut
connatre les codes du client et de lalbum pour un nouvel encodage. On revient en mode cration pour
transformer ces deux zones de texte en listes modifiables (Combo Box). On supprime la zone [Code Client].
On cre une liste modifiable laide de lAssistant. (Le menu contextuel permet de "changer" une zone de
texte en une liste modifiable, mais les paramtres suivants doivent alors tre indiqus manuellement, ce qui
n'est pas ais.) A la premire tape de lAssistant, on prcise que les donnes proviennent dune table (ou
dune requte). A la deuxime tape, on prcise quil sagit de la table Clients . A la troisime tape, on
slectionne les champs [Nom Client], [Prnom Client] et [Code Client]. A la quatrime tape, on confirme
la machine quelle doit cacher la colonne Cl Primaire (Hide Key Column). On regarde quand mme leffet
produit si on refuse cette option. A la cinquime tape, on prcise que le champ stockant linformation est le
champ [Code Client]. On termine en changeant ltiquette de la liste modifiable par le texte Choisissez le
client dans cette liste .
On reproduit cette cration de liste modifiable pour le [Code Tome]. La procdure est identique. Il ne faut
pas choisir la table Clients, mais bien la requte Rq Tomes comme source des donnes. Ltiquette doit
tre modifie en consquence.
Lors de la leon portant sur les macros, on construira un bouton qui aura pour effet de passer la fiche
vierge de ce formulaire, et qui diminuera le stock de tomes dune unit. Cette macro nest pas faisable avec
lAssistant Bouton car elle contient plus dune action.
Cours Access
26 sur 40
vos images sera petite, moins votre base de donnes sera lourde. Une image de 5Ko peut faire crotre la
taille de la base de donnes de 100Ko! C'est pour cela que nous n'avons insr qu'une dizaine de petites
images dans notre base.
Le formulaire contient une liste modifiable pour lencodage de la srie. Voici ses proprits.
Nom contrle..............
Code Srie
Source contrle..........
Code Srie
Origine source............
Table/Requte
Contenu.....................
Rq Sries
Nbre colonnes............
Colonne lie................
Seul le code de la srie (2e colonne) doit tre mmoris par ce contrle.
Ce formulaire contient une liste modifiable permettant datteindre un enregistrement spcifique. Voici ses
proprits.
Nom contrle........
Source contrle....
Origine source......
Table/Requte
Contenu...............
Rq Tomes
Nbre colonnes.......
Largeur colonnes...
0cm;2cm; 0,5cm;3cm
Colonne lie..........
Seul le code du tome (1e colonne) doit tre mmoris par ce contrle.
Aprs MAJ...........
Trouver.Tome
Ce formulaire contient aussi un bouton de commande ouvrant le formulaire " Acheteur dun tome " indiquant
la personne qui a achet lalbum considr. Les proprits principales de ce bouton de commande sont les
suivantes:
Nom contrle.......
Acheteurs
Lgende...............
Acheteurs de ce
tome
Sur pression........
Ouvrir.acheteurs
Signification
Cours Access
27 sur 40
Name
Nom du contrle
Control Source
Default Value
Visible
Left / Top
Width / Weight
After Update
Signification
Row Source
Column Count
Nombre de colonnes
Column Width
Largeur des colonnes (diffrentes largeurs spares par des " ; ")
Bound Column
Numro de la colonne lie au contrle (une seule colonne est associe au contrle)
List Rows
Ce formulaire est un formulaire de prsentation ayant pour but de faciliter le travail dencodage et de gestion du
vendeur. Il propose douvrir les formulaires intressants : deux de listings, quatre dencodage. Ce formulaire
contient au total six boutons de commande renvoyant la macro Ouvrir.
Cours Access
28 sur 40
Pour crer ce nouveau formulaire, il faut avant tout cliquer sur longlet des formulaires, puis sur le bouton Nouveau
(New). On choisit le mode cration (Design View). Dans le cas de ce formulaire, il ny a aucune table utiliser. Le
formulaire apparat directement en mode cration. Pour y placer un maximum de boutons, on clique et glisse (on
drague) sur les bord pour agrandir la surface grise.
On commence par modifier la couleur de fond du formulaire en en choisissant une partir de l'outil reprsentant un
pot de peinture. Pour une image de fond, il faut choisir la proprit image (picture) du formulaire. (Les proprits du
formulaire, pas de ses objets, s'obtiennent en cliquant sur le carr gris dans le coins suprieur gauche du
formulaire.) Le bouton assistant de cette proprit (bouton cach reprsent par des points de suspension) lance
un explorateur qui permet d'aller chercher l'image voulue sur le disque. La proprit Type d'Image (Picture Type)
permet d'insrer (embedded) ou de lier (linked) l'image. (Cette dernire possibilit n'est pas active pour des
Liaisons OLE.) L'intrt de choisir de lier l'image est que son poids n'est pas comptabilis dans celui de la base de
donnes. Le travail ne sera donc pas trop lours. Toutefois, Access retient le chemin "absolu" de l'image. C'est dire
que l'image ne sera plus visible si l'on change son chemin dans l'arborescence du disque. Ceci est un risque dans
le cadre de notre travail puisque nous travaillons dj sur plusieurs disques (C, D, F, H). Nous dconseillons donc
le type d'image lie (linked) dans le cadre de votre travail.
Comme on va disposer des boutons sur ce formulaire, on cre une tiquette (label) qui propose lutilisateur un
petit texte informatif quant leur fonction. L'outil tiquette (label) est l'outil reprsentant le texte Aa . On clique
sur cet outil. On drague sur notre formulaire de sorte dessiner un rectangle, suffisamment grand pour quon
puisse y crire une phrase. On entre le texte Que voulez-vous faire? (on construit ici une version simplifie du
formulaire 1 :Menu ) et on confirme en appuyant sur Enter. Pour que le texte ressorte mieux, on modifie la
police, la taille, la couleur grce l'outil reprsentant un A sur un trait rouge, et on met ce texte en gras,
italique,
On passe ensuite la construction dun bouton. On vrifie que l'outil Assistant (Control Wizards) de la barre doutil
(Toolbar) est enfonc. On clique sur l'outil reprsentant un bouton (Command Button). On drague sur le formulaire
de sorte dessiner un rectangle, suffisamment grand pour que Lutilisateur nait pas de peine cliquer dessus.
Ce bouton aura comme fonction douvrir le formulaire des clients. Laction choisir appartient donc la catgorie
Oprations sur les Formulaires (Form Operations) et sappelle Ouvrir Formulaire (Open Form). A ltape suivante,
on prcise que le formulaire ouvrir est Encodage Clients. A ltape suivante, on prcise lAssistant que le
formulaire souvrira en proposant toutes les donnes. A ltape suivante, on choisit de remplacer limage sur le
bouton par le texte Formulaire dencodage des clients . A la dernire tape, on conserve le nom de bouton
propos par la machine.
Nous en profitons pour dcrire les quelques outils intressants de la boite outils (toolbox). Nous les dcrivons
partir de la disposition "horizontale" de la bote. Le premier bouton est le pointeur qui permet de slectionner les
objets. Le second est celui qui active l'assistant de cration des outils.
Sur la premire ligne d'outils proprement parler:
- Outil tiquette
- Outil zone de texte
- Groupe d'options: regroupe sous un mme contrle (pour un mme champ) diffrents outils (par exemple des
boutons d'options)
- Bouton poussoir: utiles par exemple pour des champs de type Oui/Non
- Bouton d'options: utiles par exemple pour des champs de type Oui/Non ou dans un groupe d'options
- Case cocher: utiles par exemple pour des champs de type Oui/Non
- Liste modifiable
- Liste de choix: Liste modifiable affichant tous moments plusieurs lignes de choix
- Bouton
Sur la deuxime ligne d'outils
- Picture: pour insrer une image fixe sur le formulaire
- Cadre d'objet indpendant: pour insrer une image ou un objet fixe sur le formulaire
- Cadre d'objet dpendant: pour insrer une image ou un objet dpendant d'un champ de type Liaison OLE
- Saut de page
- Onglets: utile si de nombreux contrles doivent tre affichs sur un espace limit, ou regroups par thmes
- Sous-Formulaire ou Sous-Etat
- Ligne
- Rectangle
- d'autres contrles ...
Cours Access
29 sur 40
On passe en mode formulaire et on vrifie lefficacit du bouton en cliquant dessus. On ferme le formulaire
Encodage Clients et on repasse au mode cration de notre formulaire de menu. Les tudiants construisent
seuls un bouton ayant pour fonction douvrir le formulaire Encodage Ventes . En quittant le formulaire, on
lenregistre sous le nom Menu .
Dans la colonne de gauche, on inscrira les actions. Il ne faut pas connatre toutes les actions de mmoire
puisquelles sont accessibles partir dun menu droulant. Dans la colonne de droite on inscrira une description
afin de se souvenir des buts de la macro. Sous les deux colonnes, on introduira les arguments de chaque action.
Les arguments fournir varient en fonction de chaque action. La plupart dentre eux sont aussi accessibles partir
dun menu droulant.
L'outil contenant xyz au dessus de deux carrs est l'outil Nom de Macro (Macro Name) qui permet de regrouper
plusieurs macros sous un mme nom gnral, en les diffrenciant par un "sous-nom" (une sorte de prnom ;
chaque prnom dtermine une sous-macro ). La macro Trouver est base sur ce principe : elle contient
deux sous-macros: "Trouver.Tome" et "Trouver.Serie" qui sont deux macros bases sur le mme principe, mais
appliques deux objets diffrents. L'outil reprsentant un petit organigramme est l'outil Conditions qui permet
lexcution ou non dune macro selon quune condition introduite est satisfaite ou non.
Dans la suite de ce document, on dcrit les actions des macros dans la colonne de gauche. Le texte droite de
laction nest pas la description de la macro, mais la liste des arguments. Il y a la version n'utiliser que sur la
version franaise d'Access, et la version n'utiliser que sur la version anglaise d'Access (Il existe des diffrences
de syntaxe d'une version l'autre).
La premire macro est constitue de deux actions dcrites ci-dessous. Elle ouvre donc le formulaire Encodage
Ventes sur une fiche vierge.
Action
OuvrirFormulaire
AtteindreEnregistrement
Atteindre: nouveau
Cours Access
30 sur 40
Action
OpenForm
GoToRecord
Record: new
Action
Close
Action
OpenForm
Lautre macro dont le nom est rserv est la macro AutoKeys qui affecte une touche ou un jeu de touches des
macros prdfinies.
Quand la premire action excuter n'est que l'affichage d'un formulaire, on peut l'effectuer l'aide du menu
Outils/Dmarrage/AfficherFormulaire (Tools/Startup/DisplayForm), en choisissant dans la zone Display Form le
Cours Access
31 sur 40
Ce dernier argument signifie que le formulaire ouvrir ne doit afficher que les enregistrements dont la valeur du
champ [Code Tome] correspond la valeur du champ [Code Tome] dans le formulaire principal qui est " Encodage
Tomes " (not "Forms ! [Encodage Tomes] ! [Code Tome]").
Ouvrir.sries dun: Ouvre le listing des sries dun diteur quelconque
Action
OpenForm
OpenForm
GoToRecord
Record: new
Les macros " encod tom " et "encod cli " sont semblables cette macro.
Cours Access
32 sur 40
FindRecord
GoToRecord
GoToControl
OpenQuery
OpenReport
OpenTable
RunApp
RunMacro
Save
SetValue
...
...
8. Cration dtats
Un tat est un objet de base de donnes Access qui prsente des informations mises en forme et organises selon
nos spcifications, par exemple des rcapitulatifs de ventes, des listes de numros de tlphone ou des tiquettes
pour publipostage. Les tats de la base de donnes "9e Art" sont tous crs laide des Assistants. Ils sont ensuite
modifis afin d'tre personnaliss. Par exemple, on enlve la date en anglais qui se trouve en bas de chaque page,
on joue sur les proprits "Can Grow/Can Shrink" des contrle, on amliore l'ergonomie de la page,...
Il existe diffrents types d'tats: les tats colonnes, les tats tableaux, les tats graphiques, les tats de
publipostage, les tats de regroupement.
Les tats colonnes affichent les valeurs des champs les unes sous les autres, un enregistrement la fois.
Les tats tabulaires affichent les donnes telles que dans une table: les champs en colonnes, les
enregistrements en lignes.
Les tats graphiques affichent les donnes sous formes de graphiques varis.
Les tats de publipostage permettent l'impression des donnes sur des tiquettes autocollantes ou sur des
enveloppes.
Les tats anciennement appels de regroupement sont des tats tabulaires pour lesquels sont calculs pour
certains groupes de donnes des sommes, moyennes, comptes, Les rponses donnes aux questions de
l'Assistant amnent la distinction entre tat tabulaire et tat de regroupement.
Cours Access
33 sur 40
Nous allons crer un tat qui permet d'imprimer des tiquettes portant le nom et l'adresse de clients.
Pour crer un nouvel tat, il faut avant tout cliquer sur longlet des tats, puis sur le bouton Nouveau (New). La
premire fois que lon cre un tat, on peut visiter les diffrents Assistants disponibles. On choisit lAssistant
Etiquettes (Label Wizard). La table utiliser est la table Clients. La premire tape suivante consiste choisir le
type dtiquettes utilises. Mais les types ne correspondent pas toujours aux tiquettes disponibles dans le
commerce. Une bonne mthode consiste rechercher dans la liste propose le type le plus proche des tiquettes
possdes, puis, au final, de modifier manuellement les paramtres de longueur et largeur obtenus par lAssistant.
Ltape suivante nest quune question de mise en forme. Ltape suivante consiste en la composition du texte de
ltiquette : les champs apparaissent dans la zone de gauche, et le reste du texte est entrer partir du clavier.
Voici un exemple de composition :
Vous trouverez dans ce colis les albums que vous
avez commands.
{Prnom Client} {Nom Client}
{Adresse No} {Adresse Rue}
{Adresse CP} {Adresse Commune}
Le tri (Sort) se fera sur le nom du client. Ltat est sauv sous le nom Etat Etiquettes .
Aprs un premier aperu du rsultat, on passe en mode cration afin de personnaliser le rsultat. On peut par
exemple allonger ou rtrcir la longueur et la largeur de ltiquette en draguant le long des bords de la surface. On
peut dlimiter les bords des tiquettes au moyen dune bordure. On appelle pour cela loutil Rectangle. Le rectangle
dessin voile le contenu de ltiquette. Il faut modifier la proprit Style de Fond (Back Style) en choisissant
Transparent. Il est toujours possible de modifier le format des caractres de chacune des zones de texte (en
mettant par exemple le texte introductif en italique et les coordonnes en gras).
Notez que cet tat affiche (et donc imprime) des tiquettes pour tous les clients, ce qui n'est pas trs raliste. Pour
n'afficher l'tiquette que d'un client spcifique, nous avons l'Etat Etiquettes Parametre, bas sur la requte "Rq
Etiquettes Parametre". Lors de l'ouverture de l'tat, il suffit de prciser le nom du client pour lequel l'tiquette doit
tre imprime (ou par exemple saisir "a*" pour avoir tous les clients dont le nom commence par a).
Cours Access
34 sur 40
Cet tat indique les albums vendus pendant le mois. On se base sur la requte Rq Ventes Mois traduite sous
forme dtat.
Pour crer cet tat, on clique sur le bouton Nouveau (New). On choisit lAssistant tat (Report Wizard). La requte
utiliser est la requte Rq Ventes du Mois . Tous les champs sont utiliser. Les donnes sont trier par date de
vente. Il nest pas ncessaire dajouter dautres niveaux de regroupement (grouping level). Il nest pas ncessaire
de trier les donnes sur un des champs restants (mais on peut). La suite nest quune question de mise en forme.
Lorsque lAssistant demande des niveaux de regroupement, il est possible de prciser le type de regroupement
dsir. Par exemple, les dates/heures peuvent tre regroupes par jour, par semaine, par mois, par trimestre, ...
Lorsque lAssistant demande un tri dans un groupe, il est possible dajouter des oprations de regroupement dans
ce groupe. Ces oprations sont la somme, la moyenne, le minimum, le maximum.
Une fois ltat cr, on le personnalise partir du mode cration (modification des couleurs, polices, largeur des
zones de texte,...). Cela est ncessaire puisque, par exemple, les tiquettes den-tte sont trop larges pour que le
texte sinscrive en entier. On change aussi le titre de ltat par un titre plus explicite quant sa fonction. Lorsque un
album est rpt plusieurs fois de suite, ses donnes ne saffichent quune fois. Par exemple, pour le champ [N
Tome],
2
1
devient
1
1
2
1
3
ce qui n'a pas de sens. Il faut donc modifier les proprits des champs [N Tome], [Titre Tome] et [Nb Exemplaires]
(mais pas [Srie] sinon le regroupement devient inutile). La proprit Cacher les Doublons (Hide Duplicates) doit
recevoir la valeur Non (No).
Cours Access
35 sur 40
On trie cette fois les ventes en les regroupant par client. Les deux contrles [Nom Client] et [Prnom Client] sont
rendus invisibles et remplacs par une zone de texte dont la source est lexpression =[Nom Client] & ", " &
[Prnom Client]. Il s'agit d'une concatnation de deux champs, avec une virgule et un espace entre le nom et le
prnom : les noms de champs sont entre crochets, les textes invariants sont entre guillemets, et le symbole "&" est
utilis comme oprateur de concatnation.
Dans les sous-groupes, les tomes sont tris selon la srie, puis le numro du tome.
Dans le pied de groupe [Nom Client], la formule =Compte([N Tome]) (=Count([N Tome])) calcule le nombre
dachats par client. Pour expliquer ce compte, la source de la zone de texte du pied de groupe reoit lexpression
="Nombre d'achats pour "&[Prnom Client]&" "&[Nom Client]&":" (cette expression peut tre obtenue laide
du gnrateur dexpressions; le symbole "=" doit cependant tre mis manuellement).
Etat Catalogue des Editeurs: bas sur la requte "Rq Catalogue des Editeurs".
Les enregistrements sont regroups selon lditeur, puis selon la srie. Le tri se fait ensuite sur le champ [NTome].
Comme pour les formulaires prcdents, les modifications du formulaire ne concernent que la mise en forme des
contrles: position, longueur, bordure, police, concatnation de champs, ...
Cours Access
36 sur 40
Notez aussi que cette mthode a comme avantage de garder "lisible" la base de donnes; il est inutile de
"dcompacter" celle-ci. Il ne s'agit pas d'un compactage classique au sens o on ne cre pas un nouveau fichier
appel "archive" (comme avec les logiciels de compactage, tel Winzip).
2. question: Quelle est cette notion "d'Intgrit rfrentielle"? Pourquoi ne vois-je pas les "1" et les "infinis" sur ma
relation?
solution:
3. question: Comment supprimer ces tables non dsires qui apparaissent dans les relations l'ouverture de la
fentre des relations ou des requtes?
solution: Cliquer sur la table et appuyer sur Delete n'est pas suffisant; la table rapparat l'ouverture suivante.
Pour la supprimer dfinitivement, il faut, dans la fentre des relations, d'abord supprimer toutes les
relations impliquant cette table (cliquer bien prcisment sur le lien), puis la table concerne.
4. question: Pourquoi dois-je me contenter d'un "mini-encodage" aprs la cration de mes tables? N'est-il pas
plus efficace d'encoder directement toutes les donnes?
solution: Lorsque les tables et les relations sont cres, on encode une douzaine d'enregistrements par table.
Aprs le "mini-encodage", on cre les requtes, formulaires et tats. Un petit nombre
d'enregistrement permettra de vrifier " l'oeil" s'ils fournissent les bons rsultats. Si les rsultats ne
sont pas ceux attendus, cela peut tre d une erreur de structure des tables, o un encodage
erron. Il est alors encore temps de passer aux modifications. Les autres enregistrements seront
encods ultrieurement dans les formulaires. Un encodage termin sur une structure revoir et
modifier signifie beaucoup d'heures de perdues.
Cours Access
37 sur 40
5. question: Pour sauvegarder rgulirement mes donnes, je dois donc cliquer sur l'outil "enregistrement"
reprsent par une disquette?
problme: Sous la plupart des logiciels, le bouton disquette permet de sauvegarder le fichier dans l'tat o il se
trouve.
solution:
Sous Access, la sauvegarde des informations encodes se fait lorsqu'on passe d'un champ un
autre. Il est donc inutile de cliquer sur ce bouton lors de l'encodage. Par contre, il permet de
sauvegarder les requtes, formulaires et tats tout moment de leur cration ou de leur
modification.
6. question: J'ai supprim des enregistrements. Il y a donc un "trou" dans la suite des nombres de mon champ
autonumber. Comment mettre jour ces valeurs?
solution: Il est n'est pas possible de "combler ce trou" sous Access. Cela n'est pas gnant puisque les champs
de type autonumber s'emploient exclusivement pour des codes cls primaires, et que ces codes ne
doivent pas tres visibles par l'utilisateur. Il est toutefois possible de rectifier la suite de nombres
l'aide d'un export vers Excel.
7. question: Mon critre de requte est une longue expression. Comment le voir en entier sans donner une
largeur dmesure la cellule?
solution: Il existe un outil trs simple, le zoom, pour voir le contenu d'une cellule de requte, de table, de
formulaire, ... On l'obtient en faisant MAJ+F2 (Appuyez sur la touche F2 tout en maintenant la touche
de majuscules enfonce.)
8. question: Je teste une requte avec un critre simple, bien choisi pour me fournir des rsultats. Pourquoi la
requte me donne-t-elle alors 0 rsultat?
solution: La cause est trs frquemment une simple faute d'orthographe, soit dans le critre, soit dans
l'encodage des donnes. Vrifiez les mots au pluriel, l'orthographe des noms propres, tapez bien 1
espace entre deux mots et non 2, ... Il est mme arriv qu'une requte fournisse 0 rsultat car les
tudiants n'avaient encore rien encod...
9. question: Pourquoi ma requte multitable ne me donne-t-elle pas tous les rsultats attendus, ou mme pas de
rsultat?
problme: Lorsque l'on cre une requte portant sur deux tables lies par une relation de un plusieurs, il
arrive que tous les enregistrements de la table parent n'apparaissent pas.
solution:
Cours Access
38 sur 40
10. question: A l'inverse de la question prcdente, pourquoi ma requte multitable me donne-t-elle plus de
rsultats que ceux attendus?
problme: Il arrive parfois qu'une requte donne plus de rsultats que ceux attendus. On reconnat qu'il y a
une erreur en dcouvrant des enregistrements absurdes.
solution:
Il y a beaucoup de probabilits que les tables de la requte ne soient pas lies. Access combine
alors tous les enregistrements de la premire par tous les enregistrements de la seconde. Pour
corriger cet effet, ajouter, le cas chant, dans la requte toutes les tables intermdiaires entre les
tables lies. S'il n'existe pas de lien direct entre les tables, pous pouvez toujours crer un lien
temporaire dans la requte, mais cette solution est peu conseille.
11. question: Pourquoi mon formulaire ne reconnat-il plus la requte qui contient ses donnes? Pourquoi mon
sous-formulaire est-il remplac par un rectangle blanc?
problme: Le formulaire retient comme "source" le nom de la requte ou de la table qui contient les donnes.
Si vous changez le nom de la requte ou de la table, le formulaire ne fait pas automatiquement le
changement de source. Il ne retrouve plus les donnes afficher, et affiche soit un message
d'erreur, soit un cadre blanc.
solution:
12. question: Comment faire apparatre un menu de dmarrage l'ouverture de la base de donnes?
solution:
La macro autoexec se lance l'ouverture de la base de donnes. Crez donc une macro
autoexec qui aura pour action d'ouvrir le formulaire de dmarrage de votre choix.
Une autre possibilit est d'utiliser la commande dmarrage du menu outils (Tools/Startup).
Dans la bote de dialogue, demandez d'afficher (Display Form) le formulaire de votre choix.
Cours Access
39 sur 40
13. question: Ma base de donne est trop lourde pour une disquette. Comment la transporter?
problme: Les bases de donnes, pour peu qu'elles contiennent quelques images, voient leur taille se
compter en mga-octets plutt qu'en kilo-octets. Mais une disquette ne peut transporter que 1440
kilo-octets (1.38Mo).
solution:
La premire chose faire est de compacter la base de donnes avec le compacteur interne
d'Access. Utilisez le menu Outils/Utilitaires de la base de donnes/Compacter et Rparer la
base de donnes (Tools/Database Utilities/Compact and Repair Database). Cette mthode
a comme avantage de garder "lisible" la base de donnes; il est inutile de "dcompacter"
celle-ci. La seule chose que l'utilitaire fait est en quelque sorte de supprimer des espaces
blancs, des espaces de travail devenus inutiles aprs cration de vos objets. Il ne s'agit pas
d'un compactage classique au sens o on ne cre pas un nouveau fichier appel "archive"
(comme avec les logiciels de compactage).
Si ce rsultat n'est pas suffisant, il faut employer un logiciel de compactage externe
Access. Ceux utiliss en salles Renaissance sont WinZip et RAR1.55. Grce eux, il est
possible de dcouper le fichier en diffrentes archives afin de faire tenir le travail sur
plusieurs disquettes. Pour l'utilisation de ces logiciels, rfrez-vous aux notes de cours sur
Windows sur le serveur des salles informatiques ou sur notre site web
(www.ulb.ac.be/soco/matsch/info-d-203).
Les ordinateurs des salles Renaissance 1 et 2 sont quips de ports USB ( l'arrire) et de
graveurs. Avec une cl USB ou un CD rinscriptible (ou un paquet de CDs
non-rinscriptibles) la taille de fichiers ne devrait plus tre un problme.
La bonne rponse est de chercher pourquoi rien ne s'est pass et rsoudre le problme. La
mauvaise rponse est de relancer l'impression en esprant que cela marche. Certains
utilisateurs continuent d'envoyer leur travaux en esprant qu'ils seront finalement imprims.
Le rsulat est plutt gnant quand quelqu'un rsout finalement le problme (imprimante
teinte, bourrage papier, cable dbranch, ...) et regarde 20 versions du mme travail
s'imprimer.
Cours Access
40 sur 40
En salle Renaissance, il est possible aussi que votre travail soit imprim sur une imprimante
d'une autre salle. Pour contrler votre impression, ne cliquez pas sur le bouton reprsentant
l'imprimante, mais passer par les menus: Fichier/Imprimer (File/Print), et choissisez
l'imprimante de votre salle.