Académique Documents
Professionnel Documents
Culture Documents
Objectif du cours :
Objectifs spécifiques :
Plan du cours :
Modes d’évaluation : L’évaluation sera faite sur base des éléments suivants :
Tableau noir
Support de cours (Syllabus)
Vidéo projecteur
INTRODUCTION
D’une manière succincte, cette mutation est due par les insuffisances de
l’approche classique : Dépendance logique et physique entre les données
(fichiers) et les applications (traitement).
La structuration des données : qui est la manière dont les données sont
ordonnées entre elles, soit par hiérarchie, soit par réseau ou soit par
relation.
La non-redondance de données : un élément est représenté une et une
seule fois dans la base. Elle s’oppose à la synonymie et à la polysémie.
L’exhaustivité : c’est lorsqu’une base de données est capable de répondre
aux demandes posées, donc tout doit être prévu par l’analyste
programmeur.
La sélectivité d’accès : qui peut être soit séquentiel (sélectif), soit direct.
La concurrentialité d’accès : on ne peut pas avoir une base de données ou
mettre une base de données pour accéder facilement.
Cette succession d'étapes est appelée cycle d'abstraction pour la conception des
systèmes d'information :
Du point de vue descriptif, MERISE propose la conception d’un S.I. par niveau
comme le montre le tableau ci-après :
S.I.O. S.I.I.
CONCEPTION ORGANISATION LOGIQUE PHYSIQUE
MCC MOC MLC MPC COMMUNICATION
La liste des étudiants par promotion en ordre de paiement d’un type de frais
à une période donnée ;
La liste des étudiants par promotion non en ordre de paiement d’un type de
frais à une période donnée ;
La liste des étudiants par promotion d’une année académique donnée ;
L’Historique de paiement des frais d’un étudiant ;
La liste des différents frais académiques selon les années.
TD. Présenter le MCD, le MLD et les schémas logiques associés au MLD ainsi
que le MPD (Voir en Access 2007 ou 2010).
Les objectifs fixés aux SGBD afin de résoudre les problèmes causés par
une gestion sous forme de fichiers à plat sont les suivants :
Indépendance physique : La façon dont les données sont définies doit être
indépendante des structures de stockage utilisées.
Indépendance logique : Un même ensemble de données peut être vu
différemment par des utilisateurs différents. Toutes ces visions personnelles
des données doivent être intégrées dans une vision globale.
Accès aux données : L’accès aux données se fait par l’intermédiaire d’un
Langage de Manipulation de Données (LMD). Il est crucial que ce langage
permette d’obtenir des réponses aux requêtes en un temps « raisonnable ».
Le LMD doit donc être optimisé, minimiser le nombre d’accès disques, et
tout cela de façon totalement transparente pour l’utilisateur.
Administration centralisée des données (intégration) : Toutes les données
doivent être centralisées dans un réservoir unique commun à toutes les
applications. En effet, des visions différentes des données (entre autres) se
résolvent plus facilement si les données sont administrées de façon
centralisée.
Non redondance des données : Afin d’éviter les problèmes lors des mises à
jour, chaque donnée ne doit être présente qu’une seule fois dans la base.
Cohérence des données : Les données sont soumises à un certain nombre
de contraintes d’intégrité qui définissent un état cohérent de la base. Elles
doivent pouvoir être exprimées simplement et vérifiées automatiquement à
chaque insertion, modification ou suppression des données. Les contraintes
d’intégrité sont décrites dans le Langage de Description de Données (LDD).
Partage des données : Il s’agit de permettre à plusieurs utilisateurs
d’accéder aux mêmes données au même moment de manière transparente.
Si ce problème est simple à résoudre quand il s’agit uniquement
d’interrogations, cela ne l’est plus quand il s’agit de modifications dans un
contexte multi-utilisateurs car il faut : permettre à deux (ou plus) utilisateurs
de modifier la même donnée « en même temps » et assurer un résultat
d’interrogation cohérent pour un utilisateur consultant une table pendant
qu’un autre la modifie.
Sécurité des données : Les données doivent pouvoir être protégées contre
les accès non autorisés. Pour cela, il faut pouvoir associer à chaque
utilisateur des droits d’accès aux données.
Résistance aux pannes : Que se passe-t-il si une panne survient au milieu
d’une modification, si certains fichiers contenant les données deviennent
illisibles ? Il faut pouvoir récupérer une base dans un état « sain ». Ainsi,
après une panne intervenant au milieu d’une modification deux solutions
sont possibles : soit récupérer les données dans l’état dans lequel elles
étaient avant la modification, soit terminé l’opération interrompue.
CHAPITRE I. INTRODUCTION
des tables
des requêtes
des formulaires
des états
des macros et des modules
1) Tables
Une table contient des données de même nature. Les tables organisent
les données en colonnes (ou champs, ou rubriques) et en lignes (ou
enregistrements, ou fiches).
Par exemple, dans une table de clients, le code, le nom, le prénom, l’adresse, le
code postal et la ville d’un client constituent un enregistrement.
2) Requêtes
Une requête est la formulation de critères de sélection d’enregistrements
d’une ou de plusieurs tables. On peut par exemple extraire les clients par villes.
Une requête porte automatiquement sur les données actuelles d’une ou plusieurs
tables concernées.
Une requête peut également être de type action. Celles-ci ont la particularité
d’exécuter leur action sur une table (création d’une table, ajout/suppression
d’enregistrements, mise à jour des données).
3) Formulaires
C’est l’interface utilisateur, il sert à saisir, à consulter et à modifier le
contenu d’une table ou de plusieurs tables liées, enregistrement par
enregistrement.
Le formulaire permet d’afficher les données des enregistrements, les champs étant
disposés à l’écran selon vos souhaits, de vérifier les valeurs saisies, de créer des
champs calculés, de réclamer des totaux, d’incorporer des graphiques, de mettre
en valeur les données avec des polices spéciales, des couleurs, etc.
4) États
On utilise un état pour imprimer une série d’enregistrements dans un
format et une mise en page personnalisée. Dans un état, on peut regrouper des
enregistrements sur divers critères et effectuer des calculs de regroupement sur
les champs : sous-totaux, moyennes, comptage, …
5) Macros
Une macro est une séquence d’actions qui peut être exécutée
automatiquement, ou lancée par l’utilisateur. Une macro peut être affectée à un
objet (formulaire, bouton, …) ainsi qu’à une combinaison de touches ou une
commande.
6) Modules
Les modules contiennent des procédures et des fonctions écrites en
code VBA (Visual Basic pour Application). Ils permettent de réaliser des
applications complexes.
7) Projets
Un projet est une base de données particulière dont le but est de
permettre à un utilisateur d’employer Access pour travailler et accéder à des
données centralisées sur un serveur SQL. Dans ce type de base de données, les
tables et les requêtes sont enregistrées sur le serveur SQL, alors que les
formulaires, les pages, les états, les macros et les modules sont stockés sur le
poste de l’utilisateur dans un fichier comportant l’extension adp.
Si des objets ont été modifiés dans la base de données en cours, par
exemple une requête ou un formulaire, et n’ont pas été enregistrées, Access
affiche un message d’invite :
Dans ce cas, cliquez sur l’un de ces trois boutons : [Oui] pour enregistrer
les modifications, [Non] pour ne pas enregistrer les modifications, [Annuler] pour
ne pas arrêter Access.
Notez qu'on ne pose jamais la question d'enregistrer les modifications pour les
données, en effet les données sont enregistrées automatiquement dès leur
saisie.
Double-cliquez sur le nom de la base de données que vous voulez ouvrir si elle
figure dans la liste des bases récentes sinon cliquez sur Autres… Pour
sélectionner une base dans un dossier sur votre disque.
b) En cours de session
Lorsque vous ouvrez une base de données dans une fenêtre application
Access, la base de données actuellement ouverte dans cette fenêtre est
automatiquement fermée.
Cliquez sur le Bouton Office, cliquez sur le nom d’une des bases de
données récentes, sinon cliquez sur la commande Ouvrir pour ouvrir une base qui
n’a pas été ouverte récemment.
Outils de base de données : créer des relations, des macros, déplacer les
données…
Nouveau : pour créer une base de données vierge ou basée sur un modèle.
Ouvrir : pour ouvrir une base de données.
Enregistrer : pour enregistrer les dernières modifications des objets de la
base de données.
Enregistrer sous : pour enregistrer la base de données sous un autre nom,
un autre format ou dans un autre dossier.
Imprimer : pour accéder à l'impression rapide, à l'aperçu avant impression
ou aux paramètres d'impression.
Gérer : pour compacter, sauvegarder ou changer les propriétés de la base
de données.
Courrier électronique : pour envoyer l’objet sélectionné sur votre messagerie.
Publier : pour publier l’objet sélectionné sur Internet ou un intranet.
Fermer la base de données : pour fermer la base de données sans arrêter
Access.
Lorsque vous créez une base de données, vous stockez les données
dans des tables. Par exemple, vous pouvez créer une table de contacts pour stocker
une liste de noms, d'adresses et de numéros de téléphone ou une table de produits
pour stocker des informations sur des produits. La création d'une base de données
doit toujours débuter par la création de ses tables avant même de créer d’autres
objets de base de données.
Une base de données simple, telle qu'une liste de contacts, peut utiliser
uniquement une seule table. Beaucoup de bases de données utilisent cependant
plusieurs tables. Lorsque vous créez une base de données, vous créez un nouveau
fichier sur votre ordinateur qui fait office de conteneur pour tous les objets de votre
base de données, y compris des tables.
Lorsque vous créez une base de données vide, une nouvelle table vide
est insérée automatiquement pour vous. Vous pouvez ensuite entrer des données
pour commencer à définir des champs.
Une nouvelle table est insérée dans la base de données et la table est
ouverte en mode Feuille de données.
Une nouvelle table est insérée et elle est basée sur le modèle de table que
vous avez choisi.
d) Ajout de champs à une table en mode Feuille de données
Les champs (également appelés colonnes) permettent de stocker des
informations que vous souhaitez suivre. Par exemple, dans une table Contacts,
vous pouvez créer des champs pour y indiquer entre autres, des noms, des
prénoms des numéros de téléphone et des adresses. Dans une table Produits, vous
pouvez stocker les noms, les ID et les tarifs des produits.
Il est important de choisir les champs avec attention. Par exemple, il n'est
pas conseillé de créer un champ pour y stocker une valeur calculée. Vous pouvez,
par contre, demander à Office Access 2007 de calculer des valeurs lorsque cela est
nécessaire. Lors du choix des champs, essayez de stocker les informations sous
leur plus petite forme. Par exemple, au lieu de stocker un nom complet, envisagez
de stocker un prénom et un nom.
Lorsque vous créez une nouvelle table, celle-ci s'ouvre en mode Feuille
de données. Vous pouvez immédiatement ajouter un champ en tapant des
informations dans la colonne Ajouter un nouveau champ.
Tapez vos données dans la cellule sous l'en-tête de colonne Ajouter un nouveau
champ.
N.B : Il est plus intéressant de créer les tables en mode création qu’en monde
feuille des données.
Type de données
Le format des données est défini lors de la conception de la base de données et il n’est
que rarement modifié par la suite. Il faut donc basculer en mode création pour visualiser
les propriétés de type des données.
Les propriétés les plus importantes (qui sont fonction du type de données)
Null interdit : Si OUI, il faudra obligatoirement saisir une valeur pour ce champ (OUI
pour une clé par exemple)
Chaîne vide autorisée : NON (pas de chaîne vide pour le type Texte)
Indexé : Oui, Sans doublons (index= accélérer la recherche de données, doublons
si la valeur peut se répéter)
Il est très important de définir des règles pour la saisie des données :
Les attributs de base : gérer les doublons, valeur obligatoire, valeur par défaut
;
Masques de saisie : formater la saisie (code postal, n° de téléphone, etc.) ;
Règles de validation : contrôler certaines saisies (Prix Unitaire >0, afficher un
message sinon);
Listes de choix : les valeurs pour le champ sont à choisir dans une liste
(exemple, on peut l’utiliser pour la Civilité et Titre client de la table Clients ou
bien pour saisir Numéro Client dans la table Commandes).
Il est conseillé de toujours spécifier une clé primaire pour une table.
Access crée automatiquement un index pour la clé primaire, ce qui accélère
l'exécution des requêtes et des autres opérations. Access s'assure également que
chaque enregistrement possède une valeur dans le champ de clé primaire et qu'il
est toujours unique.
Lorsque vous créez une table en mode Feuille de données, Access crée
automatiquement une clé primaire pour vous et lui attribue un ID de champ et le
type de données NuméroAuto.
REMARQUE Lorsque vous enregistrez une nouvelle table sans définir une clé
primaire, Access vous demande d'en créer une. Si vous répondez Oui, Access crée
un champ N° qui utilise le type de données NuméroAuto pour fournir une valeur
unique à chaque enregistrement. Si votre table contient déjà un champ
NuméroAuto, Access l'utilise comme clé primaire.
Cliquer avec le bouton gauche sur le champ clé primaire d’une table.
Sans relâcher, glisser sur le champ le champ clé étrangère de l’autre table ;
Une fenêtre s’affiche, cocher les 3 options ;
La BDD est maintenant prête à être exploitée (Requêtes sur plusieurs tables par
exemple).
La requête sélection : C'est celle qu'on utilisera le plus souvent. Elle permet
de sélectionner des enregistrements, de faire des calculs et des
regroupements. Elles ressemblent beaucoup aux filtres, mais permettent, en
plus, de travailler sur plusieurs tables simultanément.
La requête d'Analyse croisée : Cette requête présente ses résultats sous
forme de tableau (de type Excel). On l'utilisera pour comparer des valeurs,
dégagé des tendances.
La requête de Création de table : Cette requête crée une table à partir des
données qu'elle a extraites dans une ou plusieurs autres tables.
La requête Mise à Jour : Cette requête modifie le contenu d'un ou plusieurs
champs d'une ou plusieurs tables. C'est le moyen le plus efficace pour mettre
à jour un grand nombre d'enregistrements en une seule opération.
La requête Ajout : Cette requête ajoute les données qu'elle a extraites à la
fin d'une table déjà existante.
La requête Suppression : Cette requête supprime un ou plusieurs
enregistrements dans une ou plusieurs tables.
a) En Mode Création
Nous cliquons sur Mode Création, puis, sur OK :
Access nous affiche la liste des tables de la base. Nous choisissons ici
les tables sur lesquelles vont porter la requête. Nous allons prendre pour exemple
la requête "liste des clients habitant la ville de Paris". La requête va donc porter sur
la table "Clients", on la sélectionne, et on clique sur "Ajouter", comme il n'y a
aucune autre table à ajouter, on clique sur "Fermer".
Notez qu'on peut aussi faire porter la requête sur le résultat d'une autre
requête, dans ce cas, on choisira la requête dans l'onglet "Requête".
Le résultat de la requête s'affiche sous la forme d'une table que l'on peut
modifier comme s’il s'agissait d'une table normale, on peut ajouter des
enregistrements, les modifier, faire des filtres, des tris, etc...
Attention : Les résultats des requêtes, même s’ils sont présentés sous forme de
tables ne sont pas de véritables tables qu’aurait généré la requête. Ils ne sont
qu'une "vue" faite à partir des tables qui ont servi à faire la requête. Autrement dit,
si vous modifiez quelque chose dans le résultat de la requête, la modification se
répercutera dans la table qui a servi à faire la requête, si on change ici le nom du
III.3.1. Operateurs
On peut utiliser dans les requêtes les opérateurs suivants :
On peut intégrer des fonctions dans les critères de sélection. Access met
à notre disposition un très grand nombre de fonctions (pour en avoir la liste
complète, consultez l'aide intégrée à Access). Ce sont les mêmes fonctions que
celles qui sont utilisés dans les contrôles des formulaires (et d’ailleurs dans tous les
logiciels de la gamme Microsoft Office).
Notez que pour faire référence au champ "Date de la commande" dans la fonction
Mois ( ), on a écrit le champ entre crochets [ ]. On utilise les crochets lorsqu’on
travaille avec un champ dont le nom comporte des espaces. Par extension et par
mesure de précaution, on les utilisera avec tout type de champ.
Les deux critères ne sont plus sur la même ligne. Ils sont sur deux lignes
séparées. Le premier est sur la ligne "Critères", le second sur la ligne "Ou". Si on
avait voulu ajouter un troisième critère (Liste des clients habitant Saint-Quentin OU
Paris OU Lille), on aurait ajouté le critère = "Lille" sur une troisième ligne et ainsi de
suite.
En règle générale :
Si deux critères sont séparés par des ET, on les place sur la même ligne.
Si deux critères sont séparés par des OU, on les place sur des lignes
différentes.
Pour l'instant, les critères de chaque requête que nous avons faite étaient
indiqués explicitement dans la requête. Supposons maintenant que nous voulions
faire une requête du type : « Liste de tous les clients qui habitent dans une ville »
mais qu’on veuille entrer nous-même la ville. On ne connaît pas par avance la ville
en question, et on ne va pas préparer autant de requêtes qu'il peut y avoir de villes
(on n'est pas sorti de l'auberge), la solution la plus simple est alors de demander à
l'utilisateur (l'utilisateur, c'est celui qui va utiliser votre requête plus tard) d'entrer la
ville, et de faire la requête en fonction de ce qu'il a entré.
Au lieu d'indiquer une ville, on a mis = [Entrez la ville]. Que va-t-il se passer lorsqu'on
va exécuter la requête ?
L'utilisateur va entrer ici la ville (notez que le message affiché est ce qui était indiqué
entre crochets dans la requête). Maintenant, à chaque fois que Access va
rencontrer dans la requête [Entrez la ville], il va le remplacer par ce qu'à saisi
l'utilisateur. Si l'utilisateur a saisi Paris, Access va remplacer dans son critère
=[Entrez la ville] par = "Paris".
Pour l'instant, nos requêtes ne portaient que sur une seule table, il est possible de
faire des requêtes qui portent sur plusieurs tables simultanément. Dans ce cas, les
requêtes peuvent être très complexes.
Par exemple, si nous voulons la liste des clients ayant commandé le produit n°1 :
Il faut donc la table clients. "ayant commandé", il faut donc la table commandes,
"le produit n°1", il faut donc la table produits. Il faut aussi faire intervenir la table
"Lignes-commandes". Pourquoi ? Parce que c'est elle qui fait la liaison entre la
table commande et la table produits. De façon générale, lorsqu'on fait une requête
portant sur plusieurs tables, il faut respecter deux règles :
Toutes les tables intervenant dans la requêtes doivent être reliées entre elles,
il ne doit pas y avoir de tables isolées, sinon, Access va essayer de trouver
lui-même les relations entre ces tables isolées et parfois le résultat peut être
folklorique.
Il ne doit pas y avoir de tables n'ayant rien à faire dans la requête, sinon,
Access va se baser sur les relations entre ces tables n'ayant rien à voir avec
la choucroute et celles ayant à voir et va donner des résultats erronés.
Vous pouvez noter que, une fois les bonnes tables installées avec les bonnes
relations entre elles, la requête est fort simple, il suffit d'indiquer produits = 1, et
Access, grâce aux relations, va retrouver la liste des clients ayant commandé ce
produit.
Une nouvelle ligne "Opération" apparaît dans la requête, c'est grâce à elle que
nous allons faire nos opérations.
Qu'y-a-t-il de différent ?
Nous avons deux champs : nous allons compter le nombre de clients, chaque client
a un numéro, on insère donc dans la requête le numéro de client, c'est le nombre
de ces numéros que nous allons compter, il faut qu'on compte les clients habitant
Paris, d'où le deuxième champ Ville.
Dans tous les champs où il y a un critère de sélection (ici Ville = "Paris"), on choisira
l'opération où. Le résultat de la requête sera une table avec un unique champ, non
modifiable, qui indiquera le nombre de clients habitant Paris.
Ici, on veut, par client, la somme de ses commandes. A partir du moment où on veut
un résultat par catégorie (une somme par client, un nombre de clients par ville,
etc…), il y a regroupement, ici on veut la somme des commandes regroupées par
clients, c'est pour ça qu'on a choisi comme opération pour numéro de client
"Regroupement".
Pourquoi a-t-on ajouté le champ "nom" ? Simplement pour ne pas avoir une liste de
numéros avec un montant correspondant. Pourquoi dans ce cas, n'a-ton pas
regroupé les clients par leur nom au lieu de le faire par numéro et nom ? Parce que
plusieurs clients peuvent avoir le même nom et qu'on ne veut pas cumuler le montant
des commandes par clients homonymes, on regroupe donc les clients par numéro et
nom.
Quelques exemples
Comment procède-t-on ?
1. D'abord on crée une requête standard : pour cette requête nous avons besoin
du nom dans la table clients, du libellé du produit dans la table produit et de
la quantité commandé dans la table lignes commandes.
2. On transforme la requête en requête d'analyse croisée en allant dans le menu
"Requête" et en choisissant "Analyse croisée".
3. Une nouvelle ligne apparaît dans la requête : la ligne "Analyse"
4. Dans cette ligne, on va indiquer si le champ qu'on a choisi va être l'entête des
colonnes, l'en-tête des lignes ou la valeur contenue dans les cases du
tableau.
5. L'Opération pour les en-têtes est toujours "Regroupement"
6. L'Opération pour les valeurs des cases dépend de ce qu'on cherche, ici on
cherche le nombre de produits acheté, l'opération est donc "Somme"
Une requête création crée une table à partir des résultats qu'elle produit à partir
d'une table existante.
Supposons que nous voulions créer une table "Commandes réglées" qui
contiendrait la liste des commandes déjà réglées.
Attention, si vous sélectionnez une table existante, la table va être écrasée par
cette opération
Exécutez la requête avec l'icône point d'exclamation : la table va être créée avec le
résultat de la requête.
Si vous vous voulez vérifier avant de créer la table quel sera le résultat de la
requête, cliquez sur l'icône :
Une fois que le résultat sera conforme à vos attentes, vous pourrez cliquer sur
l'icône point d'exclamation.
Une requête Ajout copie tout ou partie des enregistrements d'une table (la table
source) à la fin d'une autre table (la table cible).
Toujours dans notre table "Commandes réglées", nous voulons ajouter les
commandes qui ont été réglées depuis la semaine dernière :
Attention :
Les enregistrements sont COPIES de la table source vers la table cible et
non pas déplacés.
Les deux tables doivent avoir des noms de champs identiques (et les mêmes
types de données), les deux structures ne doivent pas nécessairement être
identiques.
Si la table source comporte plus de champs que la table cible, les champs
supplémentaires sont ignorés
Si la table source comporte moins de champs que la table cible, les champs
dont les noms sont identiques sont copiés, les autres sont laissés vides.
Access ne copie QUE les champs que vous avez déclarés dans la requête
(d'ou le champ *)
1) On crée une requête, et dans le menu Requête, on clique sur "Requête Mise
à Jour"
2) Un champ "Mise à jour" apparaît dans la requête, c'est là qu'on va indiquer la
modification qui va avoir lieu :
Dans la case Mise à Jour, on a indiqué, qu'à la place du prix unitaire, nous voulions
[prix_unitaire]*1.1 (soit une augmentation de 10%), ceci pour les produits dont le
prix est inférieur à 1000 (critère).
4. Les requêtes Suppression
Les requêtes suppression vous permettent de supprimer un groupe
d'enregistrements qui répondent à un critère donné. Supposons que l'on veuille
supprimer de la table commande toutes les commandes réglées :
1) On crée une requête standard, puis dans le menu Requête, on clique sur
Requête Suppression :
IV.1. INTRODUCTION
Mode création : on va tout faire seul « à la main » sans aucune aide d’Access
Assistant Formulaire : Access va nous guider pas à pas dans la réalisation
de notre formulaire
Formulaires Instantanés : Ces trois méthodes vont générer rapidement un
formulaire à partir d’une table sans nous poser de questions, son aspect sera
rudimentaire et ne nous donnera pas de grandes possibilités de
personnalisations.
1. Dans le volet de navigation, cliquez sur la table ou la requête qui contient les
données que vous souhaitez faire figurer dans le formulaire.
2. Sous l'onglet Créer, dans le groupe Formulaires, cliquez sur Formulaire.
1. Dans le volet de navigation, cliquez sur la table ou la requête qui contient les
données que vous souhaitez faire figurer dans le formulaire. Vous pouvez
également ouvrir la table ou la requête en mode Feuille de données.
2. Sous l'onglet Créer, dans le groupe Formulaires, cliquez sur Formulaire
double affichage.
1. Dans le volet de navigation, cliquez sur la table ou la requête qui contient les
données que vous souhaitez faire figurer dans le formulaire.
2. Sous l'onglet Créer, dans le groupe Formulaires, cliquez sur Plusieurs
éléments.
2. Une fois cliqué sur Assistant Formulaire, une boite de dialogue apparait :
3. On choisit ici les champs de la table ou de la requête que l’on veut voir dans
le formulaire, si nous voulons être en mesure de modifier tous les champs de
chaque enregistrement de la table, il faudra tous les choisir, si, par exemple,
notre formulaire ne doit servir qu’à afficher certaines informations, on choisira
uniquement les champs pertinents.
8. On choisit ici le "décor" que l'on va donner au formulaire, il existe une dizaine
de décors prédéfinis, bien sûr, on pourra, par la suite, modifier un décor choisi
ici. Choisissez celui qui vous plaît le plus.
Access ouvre un formulaire vide en mode Page et affiche le volet Liste de champs.
2. Dans le volet Liste de champs, cliquez sur le signe plus (+) en regard de la
ou des tables contenant les champs que vous souhaitez faire figurer sur le
formulaire.
IV.3.6. Contrôles
Les contrôles sont des objets qui affichent des données, exécutent des
actions et permettent d'afficher et utiliser des informations qui améliorent l'interface
utilisateur, telles que les étiquettes et les images. Outre la zone de texte, qui est le
contrôle le plus couramment utilisé, les étiquettes, les cases à cocher et les
contrôles de sous-formulaire/sous-état comptent parmi les autres contrôles.
Les contrôles peuvent être dépendants, indépendants ou calculés :
Contrôle dépendant est un contrôle dont la source de données est un
champ de table ou de requête est appelé « contrôle dépendant ». Les
contrôles dépendants servent à afficher des valeurs issues de champs d'une
base de données. Ces valeurs peuvent consister en du texte, des dates, des
valeurs numériques, des valeurs Oui/Non, des images ou des graphiques.
Par exemple, une zone de texte de formulaire qui présente le nom d'un
employé peut tirer cette information du champ Nom de la table Employés.
Contrôle indépendant est un contrôle qui n'a pas de source de données
(comme un champ ou une expression) est appelé « contrôle indépendant ».
Les contrôles indépendants s'avèrent particulièrement utiles pour afficher des
informations, des lignes, des rectangles et des images. Par exemple, une
étiquette qui affiche le titre d'un formulaire est un contrôle indépendant.
Contrôle calculé est un contrôle dont la source de données est une
expression, et non un champ, est appelé « contrôle calculé ». C'est vous qui
spécifiez la valeur à utiliser comme source de données du contrôle en
définissant une expression. Une expression peut être une combinaison
d'opérateurs (tels que = et + ), de noms de contrôles, de noms de champs,
de fonctions renvoyant une valeur unique et de valeurs de constante. Par
exemple, l'expression suivante calcule le prix d'un article avec une remise de
25 % en multipliant la valeur figurant dans le champ Prix unitaire par une
valeur de constante (0,75). =[Prix unitaire] * 0,75
Une expression peut utiliser les données d'un champ de la table ou de la requête
sous-jacente du formulaire, ou encore les données d'un autre contrôle du
formulaire.
Dans les mises en forme empilées, les contrôles sont disposés verticalement
à la manière d'un formulaire papier, avec une étiquette à gauche de chaque
contrôle. Les mises en forme empilées figurent toujours dans une même
section de formulaire.
Vous pouvez avoir plusieurs mises en forme de contrôle de type quelconque sur un
formulaire. Vous pouvez par exemple avoir une disposition tabulaire pour créer une
ligne de données pour chaque enregistrement et une ou plusieurs mises en forme
empilées au-dessous, qui contiennent davantage d'informations pour le même
enregistrement.
Si vous préférez créer des contrôles sans l'aide de l'Assistant, cliquez sur
l'option Utiliser les Assistants contrôle pour la désactiver.
Notes de cours de Technique de Banque de données Par
l’Assistant Eddy MUTOMBO SHANGA
59
Si vous utilisez un Assistant Contrôle, il est possible qu'il contienne une procédure
pour lier le contrôle à un champ. À défaut, cette procédure crée un contrôle
indépendant. Si, de par son type, le contrôle est en mesure d'afficher des données
(par exemple, une zone de texte ou une case à cocher), vous devez entrer le nom
d'un champ ou une expression dans la zone de la propriété Source contrôle du
contrôle pour que ce dernier puisse afficher des données. Pour afficher les
propriétés d'un contrôle, sélectionnez le contrôle et appuyez sur F4.
1) Mode Page
Le mode Page est l'affichage le plus intuitif lorsqu'il s'agit de modifier un
formulaire. Vous pouvez y effectuer pratiquement toutes les modifications qu'il est
possible d'apporter à un formulaire dans Office Access 2007. En mode Page, le
formulaire est bel et bien en cours d'exécution, si bien que vous pouvez voir vos
données telles qu'elles apparaîtront en mode Formulaire. Néanmoins, ce mode
vous permet également d'apporter des modifications à la conception du formulaire.
Étant donné que les données sont visibles pendant que vous modifiez le formulaire,
il s'agit d'un mode très pratique pour définir la taille des contrôles ou pour effectuer
presque toutes les autres tâches qui ont une incidence sur l'aspect et l'utilisation du
formulaire.
Certaines tâches ne peuvent pas être effectuées en mode Page et nécessitent de
passer en mode Création. Dans certaines situations, Access affiche un message
vous indiquant que vous devez passer en mode Création pour effectuer une
modification particulière.
2) Mode Création
Le mode Création offre une vue plus détaillée de la structure de votre
formulaire, avec une décomposition des sections En-tête, Détail et Pied de page du
formulaire. Le formulaire n'est pas réellement en cours d'exécution lorsqu'il est
affiché en mode Création, si bien que vous ne pouvez pas voir les données sous-
jacentes pendant que vous apportez des modifications à la structure ; toutefois,
certaines tâches s'effectuent plus facilement en mode Création qu'en mode Page.
En effet, vous pouvez :
ajouter une plus grande diversité de contrôles à votre formulaire, notamment
des étiquettes, des images, des lignes et des rectangles ;
modifier la source des contrôles Zone de texte dans les zones de texte elles-
mêmes, sans passer par la feuille de propriétés ;
Redimensionnez des sections de formulaire, comme la section En-tête de
formulaire ou Détail.
modifier certaines propriétés de formulaire qui ne peuvent pas l'être en mode
Page (comme les propriétés Affichage par défaut et Autoriser le mode
Formulaire).
3) Ajuster votre formulaire en mode page
Une fois que vous avez créé un formulaire, vous pouvez ajuster
facilement sa conception en travaillant en mode Page. En vous basant sur les
données réelles du formulaire, vous pouvez réorganiser les contrôles et ajuster leur
taille. Vous pouvez placer de nouveaux contrôles dans le formulaire et définir les
propriétés de ce dernier et des contrôles qu'il contient. Pour passer au mode Page,
cliquez avec le bouton droit sur le nom du formulaire dans le volet de navigation,
puis cliquez sur Mode Page. .
Vous pouvez utiliser le volet Liste de champs pour ajouter des champs
de la table ou de la requête sous-jacente à la structure de votre formulaire. Pour
afficher le volet Liste de champs, effectuez l'une des actions suivantes :
Sous l'onglet Format, dans le groupe Contrôles, cliquez sur Ajouter des
champs existants.
Appuyez sur Alt+F8.
Vous pouvez ensuite faire glisser les champs directement du volet Liste
de champs vers votre formulaire.
Vous pouvez utiliser le volet Liste de champs pour ajouter des champs
de la table ou de la requête sous-jacente à la structure de votre formulaire. Pour
afficher le volet Liste de champs, effectuez l'une des actions suivantes :
Sous l'onglet Format, dans le groupe Contrôles, cliquez sur Ajouter des
champs existants.
Appuyez sur Alt+F8.
Vous pouvez ensuite faire glisser les champs directement du volet Liste
de champs vers votre formulaire.
Pour ajouter un champ unique, double-cliquez dessus ou faites-le glisser du
volet Liste de champs vers la section du formulaire où vous souhaitez le
faire apparaître.
Pour ajouter plusieurs champs à la fois, maintenez la touche Ctrl enfoncée,
puis cliquez sur les champs que vous souhaitez ajouter. Faites ensuite glisser
les champs sélectionnés vers le formulaire.
Pour ajouter un champ unique, double-cliquez dessus ou faites-le glisser du
volet Liste de champs vers la section du formulaire où vous souhaitez le
faire apparaître.
Pour ajouter plusieurs champs à la fois, maintenez la touche Ctrl enfoncée,
puis cliquez sur les champs que vous souhaitez ajouter. Faites ensuite glisser
les champs sélectionnés vers le formulaire.
IV.5. SOUS-FORMULAIRE
Terme Définition
Pour optimiser les résultats, commencez par établir toutes les relations.
Access peut ainsi créer automatiquement les liens entre les sous formulaires et les
formulaires principaux. Pour afficher ou modifier les relations existantes entre les
tables de votre base de données ou pour en créer de nouvelles, sous l'onglet Outils
avancés, dans le groupe Analyser, cliquez sur Relations.
Indiquez également dans cette page si vous souhaitez ouvrir le formulaire en mode
Formulaire afin de pouvoir afficher ou modifier les informations ou si vous souhaitez
l'ouvrir en mode Création afin de modifier sa conception. Une fois votre sélection
effectuée, cliquez sur Terminer.
Procédure
3. Double-cliquez sur les champs de cette table ou requête que vous souhaitez
inclure.
4. Dans la même page de l'Assistant, sélectionnez la table ou la requête pour
le premier sous-formulaire dans la liste déroulante Tables/Requêtes. Pour
cet exemple, cliquez sur la table Commandes (le côté « plusieurs » de la
première relation un-à-plusieurs), puis double-cliquez sur les champs de
cette table ou requête que vous souhaitez inclure.
5. Dans la même page de l'Assistant, sélectionnez la table ou la requête pour
le deuxième sous-formulaire dans la liste déroulante Tables/Requêtes. Pour
cet exemple, cliquez sur la table Détails des commandes (le côté « plusieurs
» de la deuxième relation un-à plusieurs), puis double-cliquez sur les champs
de cette table ou requête que vous souhaitez inclure.
6. Lorsque vous cliquez sur Suivant, à supposer que vous ayez correctement
configuré les relations avant de démarrer l'Assistant, celui-ci vous pose la
question suivante : Comment souhaitez-vous afficher vos données ?
(c'est-à-dire, en fonction de quelle table ou requête). Dans le cadre de cet
exemple, pour créer le formulaire Clients, cliquez sur Par Clients.
7. Sélectionnez l'option Formulaire avec sous-formulaire(s).
8. Suivez les instructions fournies dans les pages restantes de l'Assistant. Dès
lors que vous cliquez sur Terminer, Access crée d'une part un formulaire
principal qui contient deux contrôles de sous-formulaire et d'autre part deux
autres objets de formulaire (un pour chaque sous formulaire).
Pour créer un Etat on clique sur l’onglet Créer et on choisit le groupe Etats :
1. Dans le volet de navigation, cliquez sur la table sur laquelle vous voulez
baser le rapport ou la requête.
2. Sous l'onglet Créer, dans le groupe États, cliquez sur État.
Une fois l'état affiché, vous pouvez l'enregistrer, puis fermer, soit
l'état et les données sous-jacentes, soit la requête utilisée comme source
d'enregistrement. À la prochaine ouverture de l'état, Access affichera les données
les plus récentes de la source d'enregistrement.
1. Sous l'onglet Créer, dans le groupe États, cliquez sur Assistant État.
2. Suivez les instructions de l'Assistant État. Sur la dernière page de
l'Assistant, cliquez sur Terminer.
Sur l'aperçu de l'état, vous apercevez l'état tel qu'il apparaîtra à l'impression. Vous
pouvez également augmenter le grossissement en utilisant la fonction zoom pour
un aperçu détaillé.
Répétez les étapes de sélection d'une table ou d'une requête, et cliquez sur les
champs supplémentaires à inclure dans l'état. Cliquez ensuite sur Suivant ou sur
Terminer pour continuer.
1. Sous l'onglet Créer, dans le groupe États, cliquez sur État vide.
2. Un état vide s'affiche, en mode Page, et la Liste des champs s’affichent sur
la partie droite de la fenêtre Access.
3. Dans la Liste des champs, cliquez sur le signe plus affiché en regard de la ou
des tables contenant les champs à afficher dans l'état.
4. Faites glisser les champs un à un dans l'état ou, tout en maintenant la touche
CTRL enfoncée, sélectionnez plusieurs champs et faites-les glisser
simultanément dans l'état.
Utilisez les outils du groupe Contrôles, sous l'onglet Mise en forme, pour ajouter le
logo, le titre, les numéros de page, la date et l'heure à l'état.
Access affiche vos étiquettes en mode Aperçu avant impression, de façon à les
afficher telles qu'elles apparaîtront à impression. Le contrôle de curseur dans la
barre d'état vous permet d'agrandir les détails.
REMARQUE Aperçu avant impression est la seule vue que vous pouvez utiliser
pour afficher plusieurs colonnes, toutes les autres vues affichent les données dans
une seule colonne.
La structure d'un état Access est divisée en sections. Affichez votre état
en mode Création pour afficher ces sections. Pour créer des états performants, il
est important de comprendre le fonctionnement de chaque section. Par exemple, la
section dans laquelle vous placerez un contrôle calculé détermine le mode de calcul
des résultats dans Access. La liste suivante présente la synthèse des types de
sections, et leur utilisation respective :
En-tête d'état L'en-tête est imprimé une seule fois, dans la partie supérieure
de l'état. En règle générale, l'en-tête d'un état regroupe les informations
habituelles d'une page de garde, telles que logo, titre ou date. Lorsque vous
placez un contrôle calculé qui utilise la fonction de regroupement Somme
dans l'en-tête d'état, la somme est calculée pour l'état entier. L'en-tête d'état
est imprimé avant l'en-tête de page.
En-tête de page Cette section est imprimée en haut de chaque page. Par
exemple, utilisez un en-tête de page pour répéter le titre d'un état sur chaque
page.
En-tête de groupe L'en-tête de groupe est imprimé au début de chaque
nouveau groupe d'enregistrements. Cet en-tête de groupe permet d'imprimer
le nom du groupe. Par exemple, dans un état où les éléments sont regroupés
par produit, utilisez l'en-tête de groupe pour imprimer le nom du produit.
Lorsque vous placez un contrôle calculé utilisant la fonction de regroupement
Somme dans l'entête de groupe, la somme est calculée pour le groupe actif.
Détail Le détail est imprimé une seule fois, pour chaque ligne de la source
d'enregistrement. L'emplacement des contrôles constitue le corps de l'état.
Pied de page de groupe Imprimé au bas de chaque groupe
d'enregistrements. Utilisez un pied de page pour imprimer un résumé des
informations d'un groupe.
Pied de page Imprimé au bas de chaque page. Utilisez un pied de page
pour imprimer les numéros de page ou des informations sur les pages.
Pied d'état Imprimé une seule fois, au bas de l'état. Le pied d'état permet
d'imprimer le total des états, ou d'autres informations de synthèse relatives à
l'ensemble de l'état.
REMARQUE En mode Création, le pied d'état s'affiche sous le pied de page. Notez
toutefois que lors de l'impression, ou en mode Aperçu avant impression, le pied
d'état s'affiche sous le pied de page, juste après le dernier pied de groupe ou la
ligne de détail de la dernière page.
Les contrôles sont des objets qui affichent des données, effectuent des
actions et vous permettent d'afficher et d'utiliser des informations susceptibles
d'améliorer l'interface utilisateur, telles que des étiquettes et des images. Accès
prend en charge trois types de contrôles : dépendants, indépendants et calculés :
Pour basculer en mode Page, cliquez avec le bouton droit sur le nom de l'état
dans le volet de navigation, puis cliquez sur Mode Page .. Access affiche
l'état en mode Page.
Sous l'onglet Format, dans le groupe Contrôles, cliquez sur Ajouter des
champs existants.
Appuyez sur Alt+F8.
Vous pouvez alors ajouter des champs en les faisant glisser du volet Liste
des champs dans l'état.
Pour basculer en mode Création, cliquez avec le bouton droit sur le nom de
l'état dans le volet de navigation, puis cliquez sur Mode Création. . Access
affiche l'état en mode Création.
Sous l'onglet Format, dans le groupe Contrôles, cliquez sur Ajouter des
champs existants.
Appuyez sur Alt+F8.
Notes de cours de Technique de Banque de données Par
l’Assistant Eddy MUTOMBO SHANGA
77
Vous pouvez alors ajouter des champs en les faisant glisser du volet Liste des
champs dans l'état.
Pour ajouter un seul champ, faites glisser le champ de la Liste des champs
vers la section dans laquelle il doit s'afficher dans l'état.
Pour ajouter plusieurs champs en même temps, maintenez la touche CTRL
enfoncée et cliquez sur les champs de votre choix. Faites glisser les champs
sélectionnés dans l'état.
Lorsque vous placez les champs dans une section d'état, Access crée
automatiquement une zone de texte dépendante pour chaque champ et insère un
contrôle d'étiquette en regard de chaque champ.
1) Cliquez sur l'outil du type de contrôle que vous ajoutez. Par exemple pour
créer une case à cocher, cliquez sur l'outil Case à cocher .
2) Cliquez dans la grille de création de l'état, à l'emplacement souhaité pour le
coin supérieur droit du contrôle. Cliquez une fois pour créer un contrôle dont
la taille est définie par défaut, ou cliquez sur l'outil et faites-le glisser dans la
grille de création d'état pour créer un contrôle de la taille de votre choix.
3) Si vous ne positionnez pas le contrôle parfaitement à la première tentative,
vous pourrez le déplacer ultérieurement, en procédant comme suit :
a. Cliquez sur le contrôle pour le sélectionner.
b. Positionnez le pointeur de la souris sur le bord du contrôle jusqu'à ce
que ce pointeur devienne une flèche à quatre pointes .
c. Cliquez et faites glisser le contrôle à l'emplacement souhaité.
Après avoir enregistré la structure de votre état, vous pouvez l'exécuter aussi
souvent que vous le souhaitez. La structure de l'état reste inchangée, mais vous
accéderez aux données actuelles à chaque impression de l'état. En cas de
modification des besoins, vous pouvez modifier la structure de l'état, ou créer un
nouvel état similaire, basé sur l'original.
CHAPITRE VI : LE MACRO
Les macros sont les instruments à tout faire d’Access. Une succession de
commandes programmables permet d’ouvrir un formulaire, d’appliquer un filtre,
d’imprimer le formulaire filtré : il suffit pour cela d’appuyer sur un bouton. Une macro
représente une série d’actions, constituées de commandes distinctes, s’exécutant
les unes après les autres. Grâce à ses propriétés, elle convient parfaitement à
l’automatisation des tâches quotidiennes, se répétant plusieurs fois dans une
journée de travail.