Guide de création de bases Access 2007
Guide de création de bases Access 2007
Access 2007
1 1
LAHMAR Taoufik TP Access
Access 2007
2. Sur l’écran de Windows, repérez l’icône d'Access . Cliquez dessus, puis appuyez sur
[ENTREE].
2 2
LAHMAR Taoufik TP Access
Access 2007
1. Dans la fenêtre initiale, cochez le bouton d’option Nouvelle base de données, puis
cliquez sur Ok.
2. Dans la nouvelle fenêtre qui apparaît, attribuez à cette nouvelle base de données le
nom « gestion clients », puis cliquez sur Ok.
3 3
LAHMAR Taoufik TP Access
Access 2007
3. Terminez le tout en cliquant sur l'icône puis en donnant un nom à votre table.
3. Dans la zone Type de données, définissez le type de données qui sera saisi dans le champ.
Une liste déroulante présente les 9 types de champs gérés par Access.
Cliquez sur l'image ci-contre pour plus de détails.
Taille du champ : nombre de caractères maximum pouvant être tapés dans le champ
Format : apparence du champ à l'écran
Valeur par défaut : valeur qui sera proposée pour chaque nouvelle fiche.
1. Sélectionnez la ligne contenant le champ à décaler vers le bas (en cliquant sur le petit pavé gris qui la
précède).
2. Faites Insertion/Lignes ou cliquez sur l'icône . Une ligne vierge est insérée. Vous pouvez y
créer le champ.
1. Sélectionnez la ligne contenant le champ à déplacer, en cliquant sur le petit pavé gris qui la précède.
2. Demi-cliquez sur ce même pavé.
3. Déplacez la souris sous le champ voulu.
4. Relâchez le bouton de la souris.
1. Sélectionnez la ligne contenant le champ à supprimer (en cliquant sur le petit pavé gris qui la
précède).
Si vous avez déjà saisi des données dans la table, la suppression du champ provoquera bien
sûr leur perte.
Elle est unique pour chaque fiche, et permet donc d'identifier une fiche précisément.
Elle permet de trier la table automatiquement.
4 4
LAHMAR Taoufik TP Access
Access 2007
Numéro de la facture
Il est conseillé de trouver une clef primaire pour chaque table. Si aucun clef évidente ne se dégage,
n'en mettez pas : Access en créera une automatiquement, de type NuméroAuto.
Il est généralement plus facile de définir une nouvelle clef primaire, à la place de l'ancienne.
Exercice4 : selon les notions déjà présentées essayer de créer les cinq
tables de notre base de données. Leurs descriptions (nom du champ, type, clef)
sont présentés dans le tableau suivant
nom des tables les champs type description
numcl Texte-10 Numéro du client(clef)
nom Texte - 20
pre Texte - 20
1 Clients
adr Texte – 100 adresse du client
vil Texte- 20
tel Texte-10 Téléphone du client
Texte-10 Référence d’article(clef)
Refart Texte-30 Désignation d’article
2 Articles Des numérique-Monétaire Prix hors taxe de l’article
PHT Numérique- Pourcentage Taux de TVA
ttva
Auto Numéro de la facture
Numf Date-format abrégé Date de la facture
Dtf Logique-O/N Facture est payée ou non
3 Factures
Reg Texte-10 Numéro du client va permettre le lien
Numcl Texte-5 Code de payement qui va permettre le lien
codP
Texte-5 Code de payement(chèque, espèce, virement)
4 Payement CodP Texte-30 Désignation du code de payement
Lib
Numf Numérique-entier long va permettre le lien avec la facture
Texte-10 va permettre le lien avec l’article
5 Detail
Refart entier la quantité achetée
qte
Voilà les cinq tables en mode création
5 5
LAHMAR Taoufik TP Access
Access 2007
Remarque : le but poursuivi est toujours de représenter la réalité le plus fidèlement possible, par
exemple :
Pour une facture donnée on peut avoir plusieurs article. C’est pour cette raison nous avons utilisé une
clé composée par :
o numf
o refart
pour une facture donnée on peut avoir plusieurs article
la quantité achetée par article doit être un entier positive . c’est pour cette raison nous avons utilisé un
contrôle dans la propriété champ « qte »
o Valide Si : >0
o Message si erreur : la quantité doit être supérieur à zéro. Veillez choisir une autre SVP
Pour la date de la facture, pour aider l’utilisateur, on ne doit pas saisir ce champ, donc on va récupérer
automatiquement la date du système (faites attention ; il faut que la date du votre PC est juste).
Donc, dans la propriété du champ datef
Valeur par défaut : =date() (c’est une fonction prédéfinie sous Access qui ne permet de retourner la date du
système
6 6
LAHMAR Taoufik TP Access
Access 2007
LES RELATIONS
Un projet complexe nécessite souvent plusieurs tables dans Access. Par exemple, une table
Clients, une table Factures...
Il existe probablement des relations entre ces tables, exprimées de la façon suivante :
Pour qu'une relation lie deux tables, il faut qu'un champ soit commun aux deux tables. Par exemple,
dans le cas d'une relation Clients/Factures, c'est le numéro du client qui figurera à la fois sur la table
Clients et sur la table Factures.
D'une manière générale, c'est la clef primaire du côté "1" qui sera reprise dans la table du côte
"Plusieurs".
7 7
LAHMAR Taoufik TP Access
Access 2007
Un cas particulier : si dans une table, la clef primaire est un NuméroAuto (Compteur), le champ
équivalent dans la table "Plusieurs" doit être de type "Numérique / Entier
long".
Exercice5 : essayer de créer les relations qui existent entre les cinq tables de notre base
de données en suivant la démarche déjà présentée. Vous devez avoir un schéma relationnel comme il est
présenté c’est dessous.
8 8
LAHMAR Taoufik TP Access
Access 2007
Le champ servant de clef primaire doit toujours être renseigné, et être unique
Les champs de type Date/Heure doivent contenir une date ou une heure correcte
Si vous souhaitez annuler une saisie, appuyez une ou deux fois sur la touche [Echap] (la 1ère fois
annule le champ en cours de saisie, la 2ème fois annule toute la ligne).
Quelques icônes, sur le pavé gris à gauche de chaque ligne servent de repère :
Ligne sur laquelle vous travaillez actuellement. Cette ligne n'est pas en cours de modification.
Vous avez commencé une saisie ou une modification sur la ligne actuelle. Celle-ci n'a pas encore été
validée.
Cette ligne (toujours en fin de tableau) représente la prochaine ligne de saisie (pour un nouveau
client par exemple).
9 9
LAHMAR Taoufik TP Access
Access 2007
10 10
LAHMAR Taoufik TP Access
Access 2007
LES REQUETES
Création d’une requête
Pour créer une requête :
6. Terminez le tout en cliquant sur l'icône puis en donnant un nom à votre requête.
1. Appuyez à la souris sur le nom du champ, tel qu'il figure dans la table.
2. Tout en maintenant le bouton de la souris enfoncé, trainez le champ sur la grille du bas.
3. Relâchez la souris.
Le champ s'affiche alors dans la grille. Si vous avez relâché la souris sur un
champ déjà existant dans la grille, celui-ci est décalé vers la droite, et le
nouveau champ se place avant.
Une fois les champs placés dans les grille, vous pouvez déjà tester votre
requête, avant même de définir des tris ou des critères de filtre.
11 11
LAHMAR Taoufik TP Access
Access 2007
Exercice1 :
Créez les requêtes « sélection » suivantes en utilisant le Mode création :
Requête 1 : Affichez la liste de tous les clients.
Requête 2 : Affichez la liste de tous les articles.
12 12
LAHMAR Taoufik TP Access
Access 2007
Compléments
Le caractère "étoile" s'applique uniquement aux champs Texte et Mémo (le code
postal, par exemple, est bien un champ Texte, non un champ numérique).
13 13
LAHMAR Taoufik TP Access
Access 2007
Compléments
Access rajoutera
automatiquemen
t des # autour
de chaque date.
14 14
LAHMAR Taoufik TP Access
Access 2007
Par exemple, pour obtenir les clients dont leurs factures sont passées avant le
7 février 2006 ou
après le 28 février 2006:
• >28/02/2006 ou <=07/06/2006
CRITÈRES APPLICABLES AUX CHAMPS OUI/NON Exemple :
15 15
LAHMAR Taoufik TP Access
Access 2007
• Si les critères sont placés sur la même ligne, ils sont liés par un ET.
• Si les critères sont placés sur des lignes différentes, ils sont liés par un OU.
Exemples :
Cette fois, on retient les clients qui habitent à Sousse, OU ceux de la ville de Sfax Et qui
ont tous de téléphone.
Pour ce type de requête le critère de sélection est variable n’est pas fixe il est changeable on dit de requête
paramétrée
Exemple
« Liste de tous les clients qui habitent dans une ville » mais qu’on veuille
entrer nous même la ville.
16 16
LAHMAR Taoufik TP Access
Access 2007
PHT: [qte]*[prixht]
TTVA: [PHT]*[Tauxtva]
TTC: [PHT]+T[TVA] PHT, TVA, TTC sont trois champs calculés
•le calcul proprement dit (en italique dans l'exemple). Un calcul est
composé de signes ( +, -, *, / ) et de noms de champs, écrits entre
crochets.
Signes autorisés dans un calcul : + addition
- soustraction
* multiplication
/ division
( et ) parenthèses
• Dans un calcul, un nom de champ doit être écrit entre crochets (sauf éventuellement s'il s'agit
17 17
LAHMAR Taoufik TP Access
Access 2007
d'un mot unique). Les crochets s'obtiennent respectivement par les touches [AltGr] 5 et
[AltGr]
• Le nom du champ doit respecter la même orthographe que le champ figurant dans la
table, espaces compris.
• Comme dans Excel, les calculs respectent les règles de priorité. A savoir : les parenthèses
sont traitées en premier; suivent les produits et divisions, puis les additions et
soustractions.
Compléments
Si le calcul est trop long, il peut être difficile à lire. Vous pouvez alors agrandir la colonne (comme dans
Excel, en déplaçant sa limite droite), ou, mieux encore, utiliser le zoom.
Exercice2 : essayer de créer la requête « calcul1 » qui permet de faire le calcul de PHT, TVA et
TTC comme déjà présentée lors de l’explication. Cette requête est basée sur deux tables :
• La table articles pour récupérer la désignation et le prixht de l’article
• La table detail pour récupérer la quantité vendue par article
REMARQUE :
Vous devez réaliser la relation entre les deux tables(articles, détail)
Vous pouvez approfondir dans les requêtes pour parler : Des requêtes de mise à jour (suppression,
ajout, modification)
18 18
LAHMAR Taoufik TP Access
Access 2007
LES FORMULAIRES
Pour créer un formulaire :
Double-cliquez sur un champ pour le faire passer à droite de la boîte (et inversement pour
le refaire passer à gauche)
Vous pouvez également cliquer sur le bouton pour faire passer tous les champs de
gauche à droite.
Si vous souhaitez créer un formulaire de saisie Clients (par ex.), il faut bien sûr que tous
les champs soient sélectionnés.
Le formulaire final devrait apparaître à l'écran. Le résultat n'est pas encore parfait (notez la taille
des intitulés), mais fonctionne déjà. Vous devriez par ailleurs retrouver toute la saisie déjà effectuée
dans la table.
19 19
LAHMAR Taoufik TP Access
Access 2007
Vous pouvez bien sûr, ensuite, modifier l'intitulé, le supprimer, le déplacer, changer son
apparence.
Ajouter un trait
Sur le formulaire d'exemple, un trait vertical sépare la partie Coordonnées de la partie Contact.
Pour ajouter un trait :
20 20
LAHMAR Taoufik TP Access
Access 2007
Vous pouvez bien sûr, ensuite, modifier le trait, le supprimer, le déplacer, changer son
apparence.
Ajouter un rectangle
Pour ajouter un rectangle :
Vous pouvez bien sûr, ensuite, modifier le rectangle, le supprimer, le déplacer, changer son apparence.
21 21
LAHMAR Taoufik TP Access
Access 2007
22 22
LAHMAR Taoufik TP Access
Access 2007
Les sous-formulaires
L’insertion d’un sous-formulaire dans un formulaire principal permet d’afficher et de traiter des
données provenant de deux tables entre lesquelles existe une relation - 1 ACCESS (un lien un à
plusieurs 1 - N dans le MCD). Le sous-formulaire affiche les enregistrements qui correspondent à
l’enregistrement en cours dans le formulaire principal.
Exemple :
Pour créer un formulaire avec sous-formulaire depuis deux tables liées par une relation un à
plusieurs:
23 23
LAHMAR Taoufik TP Access
Access 2007
Le formulaire étant créé, il peut être modifié et amélioré (cadrage, présentation générale,
insertion d’une liste modifiable de choix dans le formulaire principal, modification des propriétés
montant de la facture, MTVA,...) ne doivent pas jamais insérés dans une table mais on doit les
enregistrer dans des formulaires ou dans des requêtes. Dans cette partie on va voir comment on
va calculer le montant d’une facture concernant un client donné. Ce montant c’est la somme de
prix de ventes de différentes quantités d’articles vendues. Donc on va construire tout abord une
24 24
LAHMAR Taoufik TP Access
Access 2007
10. cliquer sur l’onglet données, dans la partie source de contrôle, cliquer sur les trois points
11. vous aurez une générateur d’expression, tappez = somme([THT])
12. vous faites de la même manière pour les deux autres champs calculés
13. sauvegarder votre formulaire « fdetail »
25 25
LAHMAR Taoufik TP Access
Access 2007
Au lieu d'entrer le numéro de client dans la facture, je veux saisir le numéro à partir d'une liste
de noms de clients dans la table Clients. Je vais remplacer la zone de texte par une zone de liste
déroulante.
Dans notre cas, pour la construction du formulaire facture, on remarque généralement une telle
facture est composée de deux parties une en-tête comportant le numéro, la date, les
renseignements nécessaires concernant le client(numc, nom, prénom, adresse,…) et le mode de
règlement, et une deuxième partie comportant les lignes articles. Pour le moment on va construire la première
partie de cette facture. Donc on va modifier notre formulaire « factures »
26 26
LAHMAR Taoufik TP Access
Access 2007
Lors de la saisie du numéro du client et toutes ses renseignements, l’utilisateur n’est pas demandé de faire cette
tâche, uniquement il va choisir de cette liste le numéro du client et automatiquement le système va remplir
les autres champ
27 27
LAHMAR Taoufik TP Access
Access 2007
LES ETATS
1. C R E E R U N E T A T P A R L E M O D E A S S I S T A N T
Exemple : Créer un répertoire des informations de nos clients avec un regroupement sur la
1ère lettre du nom (Les A, B…)
Exercice1 : créer à l’aide de l’assistant les états liste client et liste article dans la base gestion clients
28 28
LAHMAR Taoufik TP Access
Access 2007
De même on peut personnaliser un état en ajoutant des contrôles comme dans le cas des formulaires avec l’outil
contrôle
exercice 2 : ouvrir l’état liste client en mode création et essayer de le modifier afin d’avoir le résultat
suivant
Exercice 3 : même chose concernant l’état liste article, vous devez le modifier comme celle de l’état
précédent
29 29
LAHMAR Taoufik TP Access
Access 2007
On peut faire un regroupement dans un état selon un champ au plus au maximum 4 champs pour faire un calcul
bien déterminé
Exercice 4 : créer un état qui imprime les différentes factures de différents clients regroupés par numf
comme indique le schéma suivant
30 30
LAHMAR Taoufik TP Access
Access 2007
31 31