172
TABLES, FORMULAIRES, ÉTATS, REQUÊTES ET MACROS Cellule Pédagogique et de Recherche en Informatique Claude LE GALL Février 1998

Access Initiation

  • Upload
    lydiz

  • View
    696

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Access Initiation

TABLES, FORMULAIRES, ÉTATS, REQUÊTES ET MACROS

Cellule Pédagogique et deRecherche en Informatique

Claude LE GALLFévrier 1998

Page 2: Access Initiation

AVERTISSEMENTS........................................................................................................................................................ 1

COMMENT OBTENIR DE L'AIDE EN GÉNÉRAL?................................................................................................................... 1COMMENT OBTENIR UNE AIDE PONCTUELLE? .................................................................................................................. 2

CHARGEMENT DE MICROSOFT ACCESS .............................................................................................................. 3

LES OBJETS ACCESS.................................................................................................................................................... 5

DÉFINITIONS .................................................................................................................................................................... 6Tables.......................................................................................................................................................................... 6Clés primaires............................................................................................................................................................. 6Relations ..................................................................................................................................................................... 6Requêtes...................................................................................................................................................................... 6Formulaires ................................................................................................................................................................ 7États ............................................................................................................................................................................ 7Macros ........................................................................................................................................................................ 7Modules....................................................................................................................................................................... 7

LA FENÊTRE MODIFIER ............................................................................................................................................. 8

LA FENÊTRE OUVRIR.................................................................................................................................................. 9

CRÉATION D'UNE BASE DE DONNÉES.................................................................................................................. 10

TABLES ET FEUILLES DE DONNÉES ..................................................................................................................... 11

CRÉATION D'UNE TABLE................................................................................................................................................. 11Création en mode « Feuille de données »................................................................................................................. 12Création en mode « Création »................................................................................................................................. 12Création à l’aide de l’assistant................................................................................................................................. 15

MODIFICATION DE LA STRUCTURE D'UNE TABLE ............................................................................................................ 15Sélection d'un champ ................................................................................................................................................ 15Insertion d'un champ ................................................................................................................................................ 16Suppression d'un champ ........................................................................................................................................... 16Renommer une table ................................................................................................................................................. 16

DUPLIQUER UNE TABLE.................................................................................................................................................. 17SUPPRIMER UNE TABLE.................................................................................................................................................. 17SAISIE DES DONNÉES DANS UNE FEUILLE DE DONNÉES (FENÊTRE "OUVRIR") ................................................................. 18

Déplacements............................................................................................................................................................ 18Saisie des données .................................................................................................................................................... 19Saisie d'un nouvel enregistrement ............................................................................................................................ 19Sélection de colonnes................................................................................................................................................ 19Sélection de lignes .................................................................................................................................................... 20Sélection du contenu d'un champ.............................................................................................................................. 20Suppression d'enregistrements.................................................................................................................................. 20Recherche dans les champs ...................................................................................................................................... 20Remplacer dans les champs...................................................................................................................................... 20

MODIFICATION DE L'ASPECT DE LA FEUILLE DE DONNÉES............................................................................................... 21Masquer ou afficher des colonnes ............................................................................................................................ 21Largeur de colonnes ................................................................................................................................................. 21Hauteur de lignes...................................................................................................................................................... 21Déplacer des colonnes .............................................................................................................................................. 21Figer des colonnes .................................................................................................................................................... 22Affichage ou non du quadrillage, apparence des cellules. ....................................................................................... 22Changement de police............................................................................................................................................... 22Sauvegarde de la mise en forme ............................................................................................................................... 22

LES OPTIONS DES FEUILLES DE DONNÉES ....................................................................................................................... 23L’onglet « Général »................................................................................................................................................. 23L’onglet « Feuille de données »................................................................................................................................ 23L’onglet « Editer/Rechercher ». ............................................................................................................................... 24L’onglet « Affichage ». ............................................................................................................................................. 24

IMPRESSION D'UNE FEUILLE DE DONNÉES....................................................................................................................... 25

Page 3: Access Initiation

LES RELATIONS .......................................................................................................................................................... 26

CLÉS PRIMAIRES ............................................................................................................................................................ 26Définition d'une clé primaire.................................................................................................................................... 26

LES TYPES DE RELATIONS .............................................................................................................................................. 26Relation un à un ....................................................................................................................................................... 26Relation un à plusieurs ............................................................................................................................................. 26Relation plusieurs à plusieurs .................................................................................................................................. 27

DÉFINITION DES RELATIONS........................................................................................................................................... 27

LES REQUÊTES ............................................................................................................................................................ 29

L’ONGLET « REQUÊTE »................................................................................................................................................. 29CONSTRUCTION D'UNE REQUÊTE SIMPLE........................................................................................................................ 30CONSTRUCTION D'UNE REQUÊTE MULTI-TABLES............................................................................................................ 32LA BARRE D'OUTILS « REQUÊTE ».................................................................................................................................. 34LES OPÉRATEURS UTILISÉS DANS LES REQUÊTES............................................................................................................ 35INSERTION OU SUPPRESSION DE LIGNES OU DE COLONNES DANS UNE REQUÊTE ............................................................. 36

Suppression d'une colonne ....................................................................................................................................... 36Suppression d'une ligne ............................................................................................................................................ 36Insertion d'une colonne ............................................................................................................................................ 36Insertion d'une ligne ................................................................................................................................................. 37Déplacement d'une colonne...................................................................................................................................... 37

CHANGEMENT DES LIBELLÉS DE COLONNES................................................................................................................... 37VALEURS DISTINCTES .................................................................................................................................................... 38CHAMPS CALCULÉS ....................................................................................................................................................... 38REGROUPEMENTS.......................................................................................................................................................... 38TYPE D'OPÉRATIONS AVEC UN REGROUPEMENT............................................................................................................. 39LIENS JOINTURES ........................................................................................................................................................... 40

Création d'une jointure............................................................................................................................................. 40Suppression d'une jointure ....................................................................................................................................... 40Les équi-jointures ..................................................................................................................................................... 40Les jointures externes ............................................................................................................................................... 40Les jointures réflexives ............................................................................................................................................. 41

ANALYSE CROISÉE......................................................................................................................................................... 41CRÉATION DE REQUÊTES « ACTION »............................................................................................................................. 42

Différence entre une requête Sélection et une requête Action .................................................................................. 42Création de table ...................................................................................................................................................... 43Ajout d'enregistrements à une table ......................................................................................................................... 43Mise à jour de données............................................................................................................................................. 44Suppression d'enregistrements ................................................................................................................................. 44Paramètrage d'une requête ...................................................................................................................................... 45Mise à jour des enregistrements d'une table à partir d'une feuille de réponses....................................................... 45Visualisation des instructions SQL........................................................................................................................... 46Dupliquer une requête .............................................................................................................................................. 47Supprimer une requête.............................................................................................................................................. 47

LES ÉTATS..................................................................................................................................................................... 48

A QUOI SERT UN ÉTAT.................................................................................................................................................... 48CRÉATION D'UN ÉTAT À L’AIDE DE L'ASSISTANT............................................................................................................. 48

Modification d'un état............................................................................................................................................... 50Enregistrement et fermeture d'un état ...................................................................................................................... 50Impression d'un état.................................................................................................................................................. 50Dupliquer un état...................................................................................................................................................... 50Supprimer un état ..................................................................................................................................................... 51

MODIFICATION D'UN ÉTAT ............................................................................................................................................. 52Dimensions d'une section ......................................................................................................................................... 53Création d'une section En-tête/Pied d'état ............................................................................................................... 53Création d'une section En-tête/Pied de page............................................................................................................ 53Création d'une section de groupe ............................................................................................................................. 53Propriétés d'une section ........................................................................................................................................... 53Les contrôles de la boîte à outils .............................................................................................................................. 55Modification des « propriétés par défaut » des contrôles ........................................................................................ 55Le Pointeur ............................................................................................................................................................... 55Le contrôle "Étiquette" ............................................................................................................................................. 55Le contrôle "Zone de texte" ...................................................................................................................................... 56

Page 4: Access Initiation

Le contrôle Graphique.............................................................................................................................................. 58Mettre en forme un Graphique ................................................................................................................................. 61Le contrôle "Sous état" ............................................................................................................................................. 62Le contrôle Cadre indépendant ................................................................................................................................ 65Le contrôle Cadre dépendant ................................................................................................................................... 65Le contrôle Trait ....................................................................................................................................................... 66Le contrôle Rectangle ............................................................................................................................................... 66Le contrôle Saut de page .......................................................................................................................................... 66Les modèles de contrôles .......................................................................................................................................... 67Alignement, empilement des contrôles...................................................................................................................... 67

LES FORMULAIRES.................................................................................................................................................... 68

CRÉATION D'UN FORMULAIRE AUTOMATIQUEMENT ....................................................................................................... 68Assistant Colonne simple .......................................................................................................................................... 68Assistant Tabulaire ................................................................................................................................................... 69

CRÉATION D'UN FORMULAIRE AVEC L'ASSISTANT........................................................................................................... 69MODIFICATION D’UN FORMULAIRE. ............................................................................................................................... 72

Propriétés d'un formulaire........................................................................................................................................ 72Les différentes sections d’un formulaire. .................................................................................................................. 74Dimensions d'une section.......................................................................................................................................... 74Les propriétés des sections ....................................................................................................................................... 74Placement de champs................................................................................................................................................ 75Propriétés des contrôles ........................................................................................................................................... 75Le contrôle « Zone de texte »(voir page 56) ............................................................................................................. 77Propriétés des zones de texte .................................................................................................................................... 77Le contrôle « Case d'options ».................................................................................................................................. 77Le contrôle « Case à cocher » .................................................................................................................................. 78Le contrôle « bouton de commande ». ...................................................................................................................... 82Propriétés des boutons de commande....................................................................................................................... 83Le contrôle « Liste modifiable » ............................................................................................................................... 84Le contrôle « Zone de liste »..................................................................................................................................... 84Les propriétés du contrôle Graphique (voir page 58) .............................................................................................. 86Le contrôle Sous formulaire (voir le contrôle Sous-état page 62)............................................................................ 88Le contrôle Cadre indépendant (voir page 65)......................................................................................................... 88Le contrôle Cadre dépendant (voir page 65)............................................................................................................ 88Le contrôle Trait (voir page 66) ............................................................................................................................... 88Le contrôle Rectangle (voir page 66) ....................................................................................................................... 88Le contrôle Saut de page (voir page 66)................................................................................................................... 88Ordre de parcours des champs d'un formulaire ....................................................................................................... 88Déplacements dans un formulaire ............................................................................................................................ 89Enregistrement d'un formulaire ................................................................................................................................ 89Saisie en mode formulaire ........................................................................................................................................ 90Saisie d'un nouvel enregistrement ............................................................................................................................ 91Sélection d'un champ ................................................................................................................................................ 91Sélection de l'enregistrement affiché ........................................................................................................................ 91Suppression d'enregistrement ................................................................................................................................... 92Suppression d'un formulaire ..................................................................................................................................... 92

LES FILTRES ................................................................................................................................................................... 93Filtrer par Sélection.................................................................................................................................................. 93Filtrer par Formulaire.............................................................................................................................................. 94Filtrer par Filtre/Tri Avancé..................................................................................................................................... 95Enregistrement d'un filtre ......................................................................................................................................... 96Utilisation d'une requête existante en tant que « Filtre » ......................................................................................... 96

LES MACROS ................................................................................................................................................................ 97

A QUOI SERVENT LES MACROS ? .................................................................................................................................... 97LA FENÊTRE MACRO...................................................................................................................................................... 98

La barre d'outils de la fenêtre macro........................................................................................................................ 98CRÉATION D'UNE MACRO ............................................................................................................................................... 99

Enregistrement d'une macro ................................................................................................................................... 100Exécution d'une macro............................................................................................................................................ 100Création d'un groupe de macros............................................................................................................................. 100Comment faire référence à une macro faisant partie d'un groupe. ........................................................................ 101Référence aux noms de contrôles dans les expressions .......................................................................................... 101Expressions conditionnelles dans les macros ......................................................................................................... 102

Page 5: Access Initiation

Mise au point d'une macro ..................................................................................................................................... 102LES MACROS DANS LES FORMULAIRES......................................................................................................................... 103

Liste des événements de formulaire et les propriétés pour y répondre................................................................... 103Attacher une macro à un formulaire ou à un contrôle ........................................................................................... 104Création d'un bouton de commande qui déclenche une macro .............................................................................. 105Filtrage des enregistrements .................................................................................................................................. 105Création d'une barre de menus personnalisée attaché un formulaire.................................................................... 106Pour affecter une macro à une combinaison de touches ........................................................................................ 108

LA MACRO « AUTOEXEC » .......................................................................................................................................... 109LISTE DES ACTIONS UTILISABLES DANS UNE MACRO .................................................................................................... 110

LES EXPRESSIONS .................................................................................................................................................... 121

SAISIE DES EXPRESSIONS ............................................................................................................................................. 121Saisie des noms d'objets ......................................................................................................................................... 121Saisie de valeurs date/heure ................................................................................................................................... 121Saisie de texte ......................................................................................................................................................... 121

LES OPÉRATEURS DANS LES EXPRESSIONS ................................................................................................................... 121Opérateurs d'identificateur..................................................................................................................................... 121

LE GÉNÉRATEUR D'EXPRESSIONS ................................................................................................................................. 122LES FONCTIONS DANS LES EXPRESSIONS...................................................................................................................... 124

Fonctions de regroupement dans les domaines...................................................................................................... 124Fonctions de regroupement SQL............................................................................................................................ 124Autres fonctions ...................................................................................................................................................... 125

EXEMPLES D'EXPRESSIONS .......................................................................................................................................... 126Expression de contrôles calculés............................................................................................................................ 126Expression de validation ........................................................................................................................................ 126Expression de valeurs par défaut ........................................................................................................................... 127Expression Critères ................................................................................................................................................ 127Expression arguments d'actions ............................................................................................................................. 127

LIMITES TECHNIQUES DE MICROSOFT ACCESS ........................................................................................... 128

BASE DE DONNÉES....................................................................................................................................................... 128TABLES........................................................................................................................................................................ 128REQUÊTES ................................................................................................................................................................... 128FORMULAIRES ET ÉTATS .............................................................................................................................................. 128MACROS...................................................................................................................................................................... 129

Page 6: Access Initiation

MicroSoft Access Version 7.0 Page : 1

AVERTISSEMENTS

Cette notice est un résumé succinct des principales fonctions de MicroSoft Access. Dans biendes cas vous serez obligé de vous reporter à la brochure officielle, ou bien d'utiliser l'aide en ligne.

Les « Modules », objets de MicroSoft Access, permettent de programmer ses propres procédureset fonctions.

Ils font partie d'une seconde brochure, et ne seront donc pas décrits ici.

Comment obtenir de l'aide en général?

1- Déroulez le menu ci-dessous et activez la commande « Rubriques d’aide Microsoft Access ».

2- Sélectionnez une option de recherche en cliquant sur un onglet.

Onglet "Sommaire de l'aide"

Onglet "Index"

Page 7: Access Initiation

Page : 2 MicroSoft Access Version 7.0

Onglet "Rechercher"

Onglet "Aide intuitive"

Comment obtenir une aide ponctuelle?

1. Dans la barre de menu, cliquez sur le 2. Puis cliquez sur un objet d’une boîte de dialogue, ou sur un bouton d’une barre d’outils pour

obtenir l’aide correspondante.

1

2

Page 8: Access Initiation

MicroSoft Access Version 7.0 Page : 3

CHARGEMENT DE MICROSOFT ACCESS

1. Cliquez sur le raccourci du bureau, ou cliquez sur le bouton « Démarrer », et ouvrez le groupe« Programme »,

2. Faites un double clic sur l'icône MicroSoft Access3. Access démarre et affiche la fenêtre ci-dessous. Vous avez le choix entre:

a/ ouvrir une nouvelle base.b/ Ouvrir une base « Préfabriquée ».c/ Ouvrir une base existante.

1

2

3

4

5

6

Créer une nouvelle base

1. Activez la commande « Nouvelle base de données ».2. Cliquez sur « Ok ».3. Faite un double clic sur l’icône « Base de données vide ».4. Sélectionnez le répertoire.5. Tapez le nom de la base que vous désirez créer.6. Cliquez sur « Créer ».

Page 9: Access Initiation

Page : 4 MicroSoft Access Version 7.0

1 3

2

4

6

Ouvrir une base « Préfabriquée ».

5

7

1. Activez la commande « Nouvelle base de données ».2. Cliquez sur « Ok ».3. Cliquez sur l’onglet « Base de données ».4. Faite un double clic sur l’icône correspondant au modèle de votre choix.5. Sélectionnez le répertoire.6. Tapez le nom de la base que vous désirez créer.7. Cliquez sur « Créer ».

1

2 4

Ouvrir une base existante

3

5

1. Activez la commande « Ouvrir une base de données existante ».2. Cliquez sur « Ok ».3. Sélectionnez le répertoire.4. Sélectionnez le fichier contenant la base de données.5. Cliquez sur « Ouvrir »..

Page 10: Access Initiation

MicroSoft Access Version 7.0 Page : 5

LES OBJETS ACCESS

Lorsqu'une base de données est ouverte, ou que vous êtes en création, vous avez sur l'écranune boîte à outils vous permettant de créer 6 types d'objets. (Tables, Requêtes, Formulaires, États,Macros et Modules)

Pour créer un objet, vous devez cliquer sur le bouton correspondant, puis sur le bouton« Nouveau ».

Pour modifier un objet, vous devez cliquer sur le bouton correspondant, sélectionner l'objet dansla liste, puis cliquer sur le bouton « Modifier ».

Pour Ouvrir un objet, vous devez cliquer sur le bouton correspondant, sélectionner l'objet dans laliste, puis cliquer sur le bouton « Ouvrir ».

Page 11: Access Initiation

Page : 6 MicroSoft Access Version 7.0

Définitions

Tables

Une table est une suite d'enregistrements contenant des données relatives à une certainecatégorie d'information. Chaque enregistrement est composé de champs contenant les élémentsspécifiques. Une base de données est généralement composée de plusieurs tables, chaque tableétant liée entre elles par des relations.

Clés primaires

Afin de pouvoir établir des liens entre les tables, chaque enregistrement d'une table doit parfoisêtre identifié par une valeur unique. Le champ contenant cette valeur unique s'appelle La cléprimaire.

Lorsque vous choisissez la clé primaire souvenez-vous des points suivants :• Il ne faut pas de doublons dans le champ servant de clé primaire.• La longueur de la clé primaire affecte la vitesse des traitements, choisissez la plus petite longueur

possible.• MicroSoft possède un champ appelé « Compteur », qui numérote en séquence les

enregistrements et peut servir de clé primaire.

Relations

Les relations sont les liens qui existent entre le champ d'une table(Table Source) et le champd'une autre table (Table Destination). La notion de relation est évidemment très importante dans lastructure d'une base de données. Il est vivement conseillé de définir les relations entre les tablesavant toutes saisies.

MicroSoft Access possède une option « Appliquer l'intégrité référentielle », ce qui oblige Access,si cette option est choisie, à faire des contrôles lors de la création ou la suppressiond'enregistrements.

Lorsque cette option est active, il sera impossible de créer un enregistrement dans la table« Destination » faisant référence à un enregistrement n'existant pas dans la table « Source ».

De plus, la suppression d'un enregistrement de la table « Source » sera impossible si cetenregistrement est lié à des enregistrements de la table « Destination ».

MicroSoft Access distingue 2 types de relations :• Relation un à un, où un enregistrement de la table « Destination » correspond à un seul

enregistrement de la table « Source ».• Relation un à plusieurs, où un enregistrement de la table « Source » peut correspondre à

plusieurs enregistrements de la table « Destination ».

Requêtes

Une requête interroge une ou plusieurs tables, en fonction de certains critères.MicroSoft Access distingue 2 types de requêtes :

• Les requêtes « Sélection », qui extrait et affiche des données dans une « Feuille de réponses ».• Les requêtes « Action », qui modifie ou crée des tables.

Access offre une grande souplesse de formulation des requêtes. Elles vous permettent de :• Choisir les champs à sélectionner et à afficher.• Restreindre des enregistrements en fonction de critères de sélection.• Trier les enregistrements.• Interroger plusieurs tables, faire des totaux et des regroupements.• Créer des requêtes à partir de requêtes.

Page 12: Access Initiation

MicroSoft Access Version 7.0 Page : 7

Formulaires

Un formulaire est un masque de saisie personnalisé, contenant les champs d'une table ou d'unerequête. Vous avez donc le choix de modifier une table, soit en utilisant la fenêtre « Modifier », soiten utilisant un formulaire que vous aurez préalablement créé.

Un formulaire vous sera très utile pour :• Saisir, modifier ou visualiser des tables.• Calculer des totaux.• Présenter des données de manière attractive, avec couleurs, reliefs et effets d'ombre.• Incorporer des sous-formulaires et des graphiques automatiques basés sur vos données.

États

Un état sert à regrouper des données extraites d'une table ou d'une requête, dans un format etune mise en page que vous aurez spécifié, afin de les imprimer.

En créant un état vous pourrez :• Organiser et regrouper des données.• Calculer des sous-totaux, des totaux et des pourcentages.• Incorporer des sous-états et des graphiques automatiques basés sur vos données.

Macros

Une macro est une suite d'instructions qui serviront à exécuter des tâches répétitives ouroutinières en diminuant les risques d'erreurs. Vous pouvez créer une macro pour :• Lier des formulaires.• Rechercher et filtrer des enregistrements.• Vérifier la validité des données.• Automatiser des transferts de données.• Créer un environnement de travail en ouvrant automatiquement des formulaires et des

requêtes.

Modules

Un module est un « programme » écrit par le concepteur de la base, dans un langage propre àMicroSoft Access, qui s'appelle « Visual Basic Application ».

Page 13: Access Initiation

Page : 8 MicroSoft Access Version 7.0

LA FENÊTRE MODIFIER

La fenêtre « Modifier » sert à créer ou à modifier un objet (table, requête, formulaire, état, macroou module ).

Page 14: Access Initiation

MicroSoft Access Version 7.0 Page : 9

LA FENÊTRE OUVRIR

La fenêtre « Ouvrir » sert à saisir ou à modifier un objet (table, requête, formulaire, état, une macroou un module ).

Accès à la fenêtre "Modifier"

Supprimer l'enregistrementNouvel enregistrement

Rechercher une chaîne de caractèresTrier la table

1er enregistrement

Dernier enregistrement

Enregistrement suivant

Enregistrement précédent

Nouvel enregistrement

Page 15: Access Initiation

Page : 10 MicroSoft Access Version 7.0

CRÉATION D'UNE BASE DE DONNÉES

L'élaboration d'une base de données est un travail d'analyse méthodique qui prend du temps,mais qui à long terme, en économise beaucoup. Pendant cette phase, vous établissez le schémade la structure de la base. Rappelez-vous que, une base de données bien conçue évite descorrections ultérieures et optimise la productivité de ses utilisateurs.

Pour gérer convenablement la base de données, MicroSoft Access doit stocker les informationsdans des tables, reliées entre elles par des liens.

Pour faciliter la saisie et la mise à jour de la base MicroSoft Access vous permet de définir desécrans appelés « Formulaires ».

Pour la diffusion des données, MicroSoft Access vous permet de définir des « États »L'interrogation de la base se fera à partir de requêtes faciles à mettre en œuvre.

Quant aux macros elles vont vous permettent de personnaliser et d'automatiser votre base dedonnées.

Pour créer une nouvelle base de données :

1

2

3

4

5

1. Activez la commande « Nouvelle base de données » du menu « Fichier ».2. Faite un double clic sur l’icône « Base de données vide ».3. Sélectionnez le répertoire.4. Tapez le nom de la base que vous désirez créer.5. Cliquez sur « Créer ».

Page 16: Access Initiation

MicroSoft Access Version 7.0 Page : 11

TABLES ET FEUILLES DE DONNÉES

Lorsque vous avez ouvert une base de données, la fenêtre « Base de données » apparaît surl'écran. Cette fenêtre comporte une série d'icônes symbolisant tous les objets que vous pouvezcréer.

Boutons de sélectiondes objets

Bouton de créationd'un nouvel objet

Accès à la fenêtre "Ouvrir"

Accès à la fenêtre "Modifier"

Création d'une table

3

1 2

4

1. Cliquez sur l’onglet « table ».2. Cliquez sur le bouton « Nouveau »3. Choisissez le mode de création.

Page 17: Access Initiation

Page : 12 MicroSoft Access Version 7.0

Création en mode « Feuille de données »

Ce mode vous permet de créer une table très rapidement, mais d’une façon incomplète. Eneffet vous ne pouvez pas spécifier les types de données correctement. Toutefois, vous pourrez lefaire ultérieurement si nécessaire.

1. Pour renommer les champs, faite un double clic sur « Champ1 », « champ2...)2. Sur les lignes suivantes, entrez les données.

1

2

Création en mode « Création »

Le mode « Création » est recommandé pour définir une table de façon correcte. Vous pourrezdéfinir les valeurs avec précision.

1 2

2

3

4

5

6 7

1. Dans cette colonne, tapez le nom du champ.

Page 18: Access Initiation

MicroSoft Access Version 7.0 Page : 13

2. Le tableau ci-dessous donne la liste des types disponibles.

Texte Caractères alphanumériques (maximum 255 caractères)

Mémo Caractères alphanumériques (maximum 32000 caractères)

Numérique Octet(0 à 255) ; Entier(-32768 à +32767) ; Entier long(-2 milliards à + 2milliards) ; Réel simple(-3,4 10E38 à +3,4 10E38) ; Réel double(-1,8 10E308 à+1,8 10E308)

Date/Heure Pourra contenir une date ou une heure

Monétaire Pourra contenir une valeur monétaire

Compteur Valeur numérique incrémentée par Access. Ce type est souvent utilisépour créer la clé primaire. Lorsque la clé primaire est basée sur ce type dechamp, le champ correspondant doit être du type Entier long.

Oui/Non Pourra contenir une valeur booléenne (Oui/non ou -1/0).

Liaison OLE Ce champ pourra contenir n'importe quel type de données liées dans uneautre application OLE ( Dessin, son, animation).

3. Dans cette colonne, vous avez la possibilité de taper des informations concernant le champ.C'est un message d'aide pour l'opérateur, qui viendra s'inscrire dans la barre d'état, en bas del'écran lorsque le point d'insertion sera dans le champ et que la table sera en mode saisie(Fenêtre « Ouvrir »)

4. Cette zone s'affiche lorsque le type du champ a été défini.

Taille du champ Longueur de la chaîne de caractères prévue, ou nombre de chiffrespour le type numérique.

Format Valeur du champ Valeur affichéeType numérique, monétaire, compteur

Nombre général 1550,879 1550,879Monétaire 1550,879 1 550,87 FFixe 1550,879 1550,87Standard 1550,879 1 550,87Scientifique 1550,879 1,55E+03Pourcentage 0,186 18,60%

Type DateDate Générale 19/02/94 19/02/94 15:20:12Date complète 19/02/94 Samedi 19 févrierDate réduite 19/02/94 19- Fév-94Date abrégée 19/02/94 19/02/94Heure complète 15:20:12 15:20:12Heure réduite 15:20:12 03:20 PMHeure abrégée 15:20:12 15:20

Type Oui/NonVrai/Faux Vrai ou Oui ou Actif ou valeur

différente de zéroVrai

Oui/Non Non ou Faux ou Inactif ou zéro FauxActif/Inactif Identique

Décimales Cette zone permet de préciser le nombre de décimalesLégende Cette zone permet de saisir un texte qui sera affiché comme libellé du

champ (à la place du nom du champ).Valeur par défaut Permet d'indiquer la valeur qui sera inscrite par défaut, dans le champ.Valide si Utilisé pour saisir une expression de validation pour contrôler la saisie.

Opérateurs de comparaison :< > <= >= <> =Opérateurs logiques : Et, Ou, Ou_x Eqv, Imp, PasFait référence à une date : #23/12/42#Valeur dans une fourchette : Entre (ex: Entre 1 et 31)Valeur dans une liste : Dans (ex: Dans "janvier», «février ","........")Comme (ex: Comme "Juillet", Comme "J*", Comme "Juil?et")Vérifie si un champ est vide : Est null

Message d'erreur Message qui sera affiché en cas d'erreur de saisie

Page 19: Access Initiation

Page : 14 MicroSoft Access Version 7.0

Indexé Un champ indexé activera les recherches sur ce champ.Oui - Avec doublons : autorise la saisie de valeurs identiquesNon - Sans doublons : N'autorise pas les valeurs identiques.

5. Message d'aide pour la construction de la table.6. Ce bouton sert à définir la clé primaire de la table. Pour définir la clé primaire, sélectionnez le

champ, puis cliquez sur l'icône.Une Clé primaire peut être basée sur plusieurs champs, vous devez alors sélectionner le premierchamp, puis en maintenant enfoncée la touche CTRL, sélectionner les suivants.Vous avez la possibilité d'utiliser un champ indexé comme clé primaire, mais il doit s'agir d'unindex "Sans - Doublons".

7. Ce bouton permet d’afficher la fenêtre « Index ». Un index aide Microsoft Access à rechercheret à trier les enregistrements plus rapidement. Vous pouvez créer des index basés sur un seul ouplusieurs champs. Les index multichamps vous permettent de faire la distinction entre lesenregistrements dont le premier champ peut contenir la même valeur.

Liste de choixPour faciliter la saisie ultérieure, vous avez la possibilité d’associer à un champ une « Liste de choix »1. Sélectionnez dans la liste déroulante une zone de liste.2. Renseignez les zones « Origine source, Contenu, colonne liée » ect (voir page 84)

1

2

Page 20: Access Initiation

MicroSoft Access Version 7.0 Page : 15

Création à l’aide de l’assistant

L’assistant table vous propose de créer des tables à partir de modèles :1. Sélectionnez un modèle de table.2. Sélectionnez les champs qui vous conviennent.

1 2

Modification de la structure d'une table

A tout moment vous avez la possibilité de modifier la structure d'une table, en sachant tout demême que la modification de la longueur d'un champ, ou la modification du type de donnéespeut entraîner une perte d'informations. Access effectue les conversions lorsque cela est possible,de toute façon Access vous préviendra, en vous affichant la fenêtre ci-dessous. Dans ce cas,choisissez « Annuler ».

Sélection d'un champ

Positionnez le pointeur desouris ici, puis cliquez

Page 21: Access Initiation

Page : 16 MicroSoft Access Version 7.0

Insertion d'un champ

1. Sélectionnez la ligne au dessus de laquelle vous désirez insérer votre nouveau champ.

2. Activez la commande « Champ » du menu « Insertion ».

Suppression d'un champ

1. Sélectionnez le champ que vous désirez supprimer.

2. Activez la commande « Supprimer une ligne » du menu « Edition ».

Renommer une table

1. Cliquez sur l’onglet « Table ».2. Sélectionnez la table dans la liste.

1

32 4

3. Activez la commande « Renommer » du menu « Edition ».4. Modifiez le nom de la table, et appuyez sur la touche « Entrée ».

Page 22: Access Initiation

MicroSoft Access Version 7.0 Page : 17

Dupliquer une table

1. Cliquez sur l’onglet « Table ».2. Sélectionnez la table à copier dans la liste.

5

6

3. Activez la commande « Copier » du menu « Edition ».4. Activez la commande « Coller » du menu « Edition ».5. Sélectionnez une option.6. Modifiez le nom de la table, et cliquez sur le bouton « Ok ».

Supprimer une table

1. Dans la fenêtre « Base de données », sélectionnez la table à supprimer2. Choisissez la commande « Supprimer » du menu « Edition »3. Normalement, Access vous affiche une boîte de dialogue, dans laquelle vous pourrez confirmer

ou annuler la suppression.

Page 23: Access Initiation

Page : 18 MicroSoft Access Version 7.0

Saisie des données dans une feuille de données (Fenêtre "Ouvrir")

1. Activer la fenêtre « Ouvrir », en cliquant sur le boutons

2. Access affiche un tableau où les enregistrements sont en lignes et les champs en colonnes.

Accès à la fenêtre "Modifier"

Supprimer l'enregistrementNouvel enregistrement

Rechercher une chaîne de caractèresTrier la table

1er enregistrement

Dernier enregistrement

Enregistrement suivant

Enregistrement précédent

Nouvel enregistrement

Déplacements

Passer au champ suivant TAB

Passer au champ précédent + TAB

Passer à l'enregistrement suivant ou précédent ou Passer au premier champ de l'enregistrement

Passer au dernier champ de l'enregistrement FIN

Passer au premier champ du premier enregistrement CTRL +Passer au dernier champ du dernier enregistrement CTRL + FIN

Pour aller sur n'importe quel enregistrement

Cliquez sur les flèches

Ou retapez le n° d'enregistrement

Page 24: Access Initiation

MicroSoft Access Version 7.0 Page : 19

Saisie des données

Texte Tapez simplement le texte.

Valeurs numériques Tapez les valeurs numériques avec le séparateur de décimales actif dansWindows.

Dates Vous pouvez saisir les dates sous toutes ses formes.

Champ Oui/Non Tapez Oui/Non, 0 ou autre(pour Oui), Vrai/Faux, Actif/Inactif.

Champs mémos Tapez simplement le texte.

Champs OLE Cliquez dans le champ et activez la commande "Insérer un objet" du menu"Edition". Choisissez le type d'objet, Access lance alors l'application. Vouspouvez également, par la commande "Coller avec liaison.." du menu"Edition", réaliser une liaison DDE.

Pour dupliquer dans un champ, le contenu du même champde l'enregistrement précédent.

CTRL + 4, {

Pour inscrire dans un champ la valeur par défaut que vousavez définie.

Alt Gr + Espace

Pour faire un retour à la ligne à l'intérieur d'un champ. CTRL +

Pour enregistrer les modifications d'un enregistrement. +Saisie d'un nouvel enregistrement

Pour créer un nouvel enregistrement, positionnez-vous sur le dernier enregistrement.La commande « Ajout » du menu « Enregistrements » vous permet de n'afficher que les nouveaux

enregistrements.La commande « Supprimer le filtre/Tri » du même menu, affiche à nouveau la totalité des

enregistrements de la table.

Sélection de colonnes

Pour sélectionner une colonne, positionnez le pointeur de souris dans le libellé de la colonne, lepointeur se transforme en flèche, puis Cliquez.

Pour sélectionner plusieurs colonnes, sélectionnez une première colonne, puis déplacez la sourisen maintenant le bouton enfoncé.

Page 25: Access Initiation

Page : 20 MicroSoft Access Version 7.0

Sélection de lignes

Pour sélectionner une ligne, positionnez le pointeur de souris sur la ligne et dans la colonne laplus à gauche de l'écran (grisée), le pointeur se transforme en flèche, puis Cliquez.

Pour sélectionner plusieurs lignes, sélectionnez une première ligne, puis déplacez la souris enmaintenant le bouton enfoncé.

Sélection du contenu d'un champ

Pour sélectionner le contenu d'un champ, placez-vous dans le champ et appuyer sur la touche

F2

Suppression d'enregistrements

Pour supprimer un ou plusieurs enregistrements, sélectionnez la ou les lignes, puis appuyez sur la

touche Suppr , ou activez la commande « Supprimer » du menu « Edition ».

Recherche dans les champs

Placez le curseur dans le champ, puis cliquez sur le bouton ou activez la commande

« Rechercher » du menu « Edition ».

Les caractères génériques utilisables sont :* qui remplace n'importe quelle suite de caractères (ex: FR*)? qui remplace un caractère (ex: T?T?)[ ] qui permet de rechercher n'importe quel caractère placé à l'intérieur (ex: [eéèê])- qui permet de rechercher dans une fourchette de caractères(ex : A-C)! qui permet de ne pas rechercher les caractères entre crochets (ex: BA[!RST]TE)

Remplacer dans les champs

1. Activez la commande « Remplacer » du menu « Edition ».

2

3

2. Tapez le texte à rechercher.3. Tapez le texte de remplacement.

Page 26: Access Initiation

MicroSoft Access Version 7.0 Page : 21

Modification de l'aspect de la feuille de données

Masquer ou afficher des colonnes

Pour masquer ou afficher une colonne:1. Activez la commande « Afficher les colonnes... » du menu « Format ».

1

2

2. Cocher les cases dont les colonnes doivent être affichées.

Largeur de colonnes

Pour changer la largeur d'une ou de plusieurs colonnes, sélectionnez-les, placez le pointeur desouris dans le libellé de la colonne, à l'intersection de la colonne suivante, le curseur setransforme, dès lors vous pouvez régler la largeur.

ou1. Sélectionnez la ou les colonnes2. Activez la commande « Largeur de colonnes » du menu « Format ».

Hauteur de lignes

Pour changer la hauteur d'une ou de plusieurs lignes, sélectionnez-les. Puis placez le pointeur desouris dans la colonne grisée à gauche de la table et à l'intersection de la ligne suivante. Le curseurse transforme , dès lors vous pouvez régler la hauteur.

ou1. Sélectionnez la ou les lignes2. Activez la commande "Hauteur de lignes" du menu « Format ».

Déplacer des colonnes

Vous avez la possibilité de déplacer les colonnes les unes par rapport aux autres.

1. Sélectionnez la colonne à déplacer.2. Placez le pointeur de souris au niveau du libellé de la colonne, le curseur se transforme en flèche

oblique, dès lors vous pouvez déplacer la colonne.

Page 27: Access Initiation

Page : 22 MicroSoft Access Version 7.0

Figer des colonnes

Lorsque les champs d'une table ne peuvent tenir tous sur l'écran, vous êtes obligé de faire défilervers la droite le contenu de la fenêtre. Il est parfois agréable dans ce cas, de conserver sur l'écran,lors du défilement, un ou plusieurs champs. Pour ce faire :

1. Sélectionnez les colonnes que vous désirez immobiliser.2. Activez la commande « Figer les colonnes » du menu « Format ».

Colonne figée

Lors du défilement la colonnefigée ne bougera pas.

Pour effectuer la manœuvre inverse, utilisez la commande « Libérer les colonnes » du menu« Format ».

Affichage ou non du quadrillage, apparence des cellules.

Pour afficher ou pas le quadrillage comme dans l'exemple ci-dessous, activez la commande« Cellules... » du menu « Format ».

Changement de police

Pour changer la police de caractères utilisée, activez la commande « Caractères.. » du menu« Format », sélectionnez une police, la taille et le style, puis cliquez sur le bouton « Ok ».

Sauvegarde de la mise en forme

Lorsque vous voulez sauvegarder la mise en forme de façon à ce qu'elle soit conservée dansune session ultérieure, activez la commande « Enregistrer le format » du menu « Fichier ».

Page 28: Access Initiation

MicroSoft Access Version 7.0 Page : 23

Les options des feuilles de données

La commande « Options... » du menu « Outils »", ouvre une boite de dialogue, dans laquelle vousaccédez aux diverses options.

L’onglet « Général ».

L’onglet « Feuille de données ».

Page 29: Access Initiation

Page : 24 MicroSoft Access Version 7.0

L’onglet « Editer/Rechercher ».

L’onglet « Affichage ».

Page 30: Access Initiation

MicroSoft Access Version 7.0 Page : 25

Impression d'une feuille de données

Que ce soit pour une feuille de données, un formulaire, une requête ou un état, le processus estrigoureusement identique.

1. Vérifiez les marges et l’orientation du papier à l’aide de la commande « Mise en page... » dumenu « fichier ».

2. Avant d'imprimer il est vivement conseillé de lancer la commande « Aperçu avant impression »du menu « Fichier ».Imprimer

Zoom

Contrôle du zoom

Afficher une page

Afficher deux pages

Fermer la fenêtre

Page 31: Access Initiation

Page : 26 MicroSoft Access Version 7.0

LES RELATIONS

Pour définir une relation entre 2 tables vous devez avoir préalablement défini au moins une cléprimaire dans une des 2 tables que vous désirez mettre en relation.

Clés primaires

La puissance d'un système de gestion de base de données relationnelles, tel que MicroSoftAccess, réside dans sa capacité à rechercher et à relier des données stockées dans plusieurstables. Pour qu'Access réalise ces tâches avec une efficacité maximale, chaque table de la basede données doit inclure un champ qui identifie chaque enregistrement de la table. Il doit s'agird'un numéro d'identification unique. En terminologie base de données, cela s'appelle la « Cléprimaire » de la table.

Grâce aux clés primaires :• Vous pouvez créer des liens entre les tables pour que MicroSoft Access associe

automatiquement et correctement les données qu'elles contiennent.• Access trouve et extrait plus rapidement les données qui proviennent de tables ayant une clé

primaire.• Vous disposez d'une plus grande souplesse pour la modification et la mise à jour des données. Si

vous visualisez des données provenant de plusieurs tables sans clé primaire, MicroSoft Accessn'autorise pas les modifications.

Définition d'une clé primaire

1. Rappelez-vous qu'une clé primaire ne peut comporter de doublons.

2. Sélectionnez le champ que vous destinez à être la clé, puis cliquez sur le bouton .

Les types de relations

Pour établir une relation entre deux tables, vous devez ajouter la clé d'une table dans l'autretable, de façon à ce qu'elle apparaisse dans les deux tables. Pour savoir quel est le champ ougroupe de champs qui doit être défini en tant que clé primaire, vous devez déterminer le type derelations à mettre en place. Il en existe trois :

• Relation un à un.• Relation un à plusieurs.• Relation plusieurs à plusieurs.

Relation un à un

Dans ce type de relations, un enregistrement de la table A ne peut être relié qu'à un seulenregistrement de la table B, et inversement. Ce type de relation est rare car dans bien des cas ilpeut être plus astucieux de combiner ces 2 champs dans une même table.

Relation un à plusieurs

Dans une base de données relationnelles, cette relation est très fréquente. Avec une relation un-à-plusieurs un enregistrement de la table A peut être relié à plusieurs enregistrements de la table B,mais un enregistrement de la table B ne peut être relié qu'à un seul enregistrement de la table A.

Page 32: Access Initiation

MicroSoft Access Version 7.0 Page : 27

Relation plusieurs à plusieurs

Dans ce type de relations, un enregistrement de la table A peut être relié à plusieursenregistrements de la table B, et inversement. Dans une telle relation vous devez créer une tableintermédiaire pour éclater la relation plusieurs-à-plusieurs en deux relations un-à-plusieurs. Pour cefaire, vous allez placer la clé primaire de chacune des deux premières tables dans la troisième.

Définition des relations

1. Fermez tous les objets, ne gardez sur l'écran que la fenêtre « base de données ».

2

2. Activez la commande « Relations... » dans le menu « Outils ». La fenêtre ci-dessous s’affiche avecles relations déjà établies.

Page 33: Access Initiation

Page : 28 MicroSoft Access Version 7.0

3. Pour définir une autre relation, activez la commande « Ajouter une table » dans le menu« Relations ».

4. Sélectionnez la table.5. Cliquez sur le bouton « Ajouter ».

3

4

5

5. Ensuite, faites glisser le champ comportant la clé primaire sur le champ homologue de l'autretable, la fenêtre ci-dessous doit apparaître.

5

8

6

7

9

6. Définissez le type de relation.7. Définissez éventuellement le type de jointure.8. Si vous activez cette option, MicroSoft Access appliquera les règles de l'intégrité référentielle lors

de l'ajout ou de la suppression d'un enregistrement.9. Cliquez sur le bouton « Créer », pour enregistrer la relation.

Conséquences de l'intégrité référentielle:• Lors de l'ajout d'enregistrements dans la table Destination il doit y avoir un enregistrement

correspondant dans la table Source.• Interdit la suppression d'un enregistrement dans la table Source s'il existe un enregistrement

correspondant dans la table Destination.

Page 34: Access Initiation

MicroSoft Access Version 7.0 Page : 29

LES REQUÊTES

L’onglet « requête »

Une requête interroge une ou plusieurs tables et/ou une requête. La manière de formuler larequête indique à MicroSoft Access les données qu'il doit extraire.MicroSoft Access distingue 2 types de requête :

• Les requêtes « Sélection » où le résultat génère une table de réponses, c’est à dire que cettetable n’existe que le temps de la requête.

• Les requêtes « Action » qui effectuent des modifications sur les tables origines.

1. Cliquez sur l'onglet « requête », si vous avez déjà créé des requêtes, vous les verrez apparaîtredans la fenêtre ci-dessous.

1

Icône de requête Sélection.

Icônes de requête Action.

Page 35: Access Initiation

Page : 30 MicroSoft Access Version 7.0

Construction d'une requête simple

L'exemple suivant est basé sur la table « Commune », représentée ci-dessous.Nous allons construire une requête qui interroge cette table, et qui nous affiche les communes duVal de marne dont l’altitude est supérieure à 100 mètres.

1. Cliquez sur l'onglet « requête ».2. Cliquez sur le bouton « Nouveau ».3. Cliquez sur « Mode Création ».

43

4. Cliquez sur « Ok ».5. Dans la boîte de dialogue « Ajouter une table », sélectionner la table sur laquelle va porter la

requête.

7

6

Affiche la liste des tablesAffiche la liste des requêtes

5

Page 36: Access Initiation

MicroSoft Access Version 7.0 Page : 31

6. Cliquez sur « Ajouter »7. Puisque cette requête ne va travailler que sur cette table, cliquez sur « Fermer ».8. Dans la fenêtre ci-dessous, désignez les champs utiles à la requête :

Cliquez sur les champs de la table, et faites-les glisser sur la ligne « Champ : ».

8

9. Dernière étape, précisez les critères de recherche, les champs à afficher dans la réponse etéventuellement ordre du tri.

9

Cliquez ici, pour ne pas voir apparaîtrece champ dans la réponse.

Ecrivez les critères de recherche

Choisissez l'ordre du tri

10. La requête est maintenant terminée, donnez lui un nom à l’aide de la commande« Enregistrer » du menu « Fichier ».

10

11. Lancer la requête soit en la sélectionnant dans la liste,puis en cliquant sur la bouton « Ouvrir »,

ou plus simplement en cliquant sur le bouton de labarre d’outils.

12. Le résultat de la requête apparaît dans une feuille dedonnées comme ci-contre.

Page 37: Access Initiation

Page : 32 MicroSoft Access Version 7.0

Construction d'une requête multi-tables

L'exemple suivant est basé sur les tables « Commune », « Maire »et « Partis_politiques »,représentées ci-dessous.

Nous allons construire une requête qui interroge ces trois tables, et qui nous affiche lescommunes du Val de marne qui ont un maire appartenant au parti communiste.

1. Vous reprenez les étapes 1, 2 , 3, 4 et 5 comme dans l’exemple précédent.2. Dans la boîte de dialogue « Ajouter une table », sélectionner les tables de la façon suivante :3. Sélectionnez la table « Commune », puis cliquez sur « Ajouter »4. Sélectionnez la table « Maire», puis cliquez sur « Ajouter »5. Sélectionnez la table « Partis_politiques», puis cliquez sur « Ajouter »6. Cliquez sur « Fermer ».

4

5

3

6

Page 38: Access Initiation

MicroSoft Access Version 7.0 Page : 33

Si les relations n’ont pas été créés entre les tables, nous allons établir des jointures de la façonsuivante :

a/ En partant de la table « Maire », faite glisser le champ « n°insee » sur le champ « Maire » de latable « Commune ».

b/ En partant de la table « Partis_politiques », faite glisser le champ « N°» sur le champ « Partis »de la table « Maire ».

7a 7b

8a

Double clic

8. Nous allons pour chaque jointure définir sa propriété :a/ Faite un double clic sur la jointure, et dans la fenêtre ci-dessous choisissez la propriété de la

jointure.

8b

9. Insérez les champs nécessaire à la requête, précisez les critères de recherche, les champs àafficher dans la réponse et éventuellement ordre du tri.

Critères

9

Page 39: Access Initiation

Page : 34 MicroSoft Access Version 7.0

La requête est maintenant terminée, donnez lui un nom à l’aide de la commande « Enregistrer »du menu « Fichier ».

11. Lancer la requête soit en la sélectionnant dans la liste, puis en cliquant sur la bouton « Ouvrir »,

ou plus simplement en cliquant sur le bouton de la barre d’outils.Le résultat de la requête apparaît dans une feuille de données comme ci-dessous.

La barre d'outils « Requête »

Menu déroulant permettant de choisirentre une requête Sélection ou une

requête Action.

Menu déroulant permettant de passersoit en mode Créationsoit en mode Feuille de donnéessoit de visionner le code SQL

Page 40: Access Initiation

MicroSoft Access Version 7.0 Page : 35

Les opérateurs utilisés dans les requêtes

Opérateurs ou conventions SignificationConventions[ Nom de champ] [ Spécialité] donne le contenu du champ spécialité# Ce caractère sert à encadrer une date :#23/12/45#.Opérateurs de comparaison< Inférieur à> Supérieur à<= Inférieur ou égal à>= Supérieur ou égal à<> Différent de= Égal àOpérateurs arithmétiques* Multiplication/ Division (ex : 5\2 donne 2,5)\ Division entière (ex : 5\2 donne 2)+ Addition- Soustraction^ Elévation à la puissance nMod Donne le reste d'une division (ex : 5 Mod 2 donne 1)Opérateurs de chaînes& Concatène 2 chaînes de caractèresOpérateurs logiquesEt Et logiqueOu Ou logiqueOu_x Ou exclusif logiqueEqv Equivalence logique (bit à bit)Imp Implication logique (bit à bit)Pas Non logiqueEntre Valeur comprise entre (ex : Entre 10 Et 20)Dans Valeur dans une liste (ex : Dans "Lundi";"Mardi";"Dimanche"Est null Si le champ est videEst pas null Si le champ n'est pas videComme Recherche d'une chaîne. L'utilisation du caractère * et ? peut être

utilisé ( ex : Comme "*di"Les séparateurs d'objets. Sert à préciser l'appartenance d'un nom de champ à une table,

lorsque le nom d'un champ est commun à plusieurs tables.(ex : [Groupe].[Responsable] désigne le champ Responsable de latable Groupe

! Sert à faire référence à un élément contenu dans un objet.ex : Formulaire![Saisie_Groupe]![Responsable], fait référence au champResponsable du formulaire Saisie_groupe

FonctionsToutes fonctions Toutes les fonctions Access peuvent être utilisées.

Page 41: Access Initiation

Page : 36 MicroSoft Access Version 7.0

Insertion ou suppression de lignes ou de colonnes dans une requête

Suppression d'une colonne

1

1. Placez le pointeur de souris dans la bande grise au-dessus de la colonne, celui-ci se transformeen flèche.

2. Cliquez, puis appuyez sur la touche Suppr ou activez la commande « Supprimer colonne » du

menu « Edition ».

Suppression d'une ligne

1

1. Placez le pointeur de souris à gauche de la ligne, celui-ci se transforme en flèche.

2. Cliquez, puis appuyez sur la touche Suppr ou activez la commande « Supprimer ligne » du

menu « Edition ».

Insertion d'une colonne

1

1. Placez le pointeur de souris dans la bande grise au-dessus de la colonne, celui-ci se transformeen flèche.

2. Cliquez, puis appuyez sur la touche Inser ou activez la commande « Insérer colonne » du

menu « Edition ».

Page 42: Access Initiation

MicroSoft Access Version 7.0 Page : 37

Insertion d'une ligne

1

1. Placez le pointeur de souris à gauche de la ligne, celui-ci se transforme en flèche.

2. Cliquez, puis appuyez sur la touche Inser ou activez la commande « Insérer ligne » du menu

« Edition ».

Déplacement d'une colonne

1 2

1. Placer le pointeur de souris dans la bande grise au-dessus de la colonne, celui-ci se transformeen flèche.

2. Cliquez, de façon à sélectionner la colonne.3. Placez le pointeur de souris de nouveau dans la bande grise, puis déplacez la colonne à

l'endroit désiré.

Changement des libellés de colonnes

Si vous désirez avoir dans la « Fenêtre résultats », un nom de colonne différent du nom dechamp, tapez le nouveau libellé devant le nom du champ suivi de deux points.

Dans l'exemple ci-dessus nous avons tapé : Nom de pays : Pays.Ci-dessous nous n'avons plus « Pays » pour libellé de la colonne 2, mais « Nom de pays ».

Page 43: Access Initiation

Page : 38 MicroSoft Access Version 7.0

Valeurs distinctes

Par défaut, Access affiche tous les enregistrements correspondant aux critères définis. Vous avezla possibilité de demander à Access de n'afficher que les valeurs distinctes. Pour ce faire, lorsquevous êtes en mode création, activez la commande « Propriétés de la requête » du menu

« Affichage » ou bien cliquez sur le bouton de la barre d'icônes .

• Modifiez la ligne "Valeurs distinctes seulement".

Champs calculés

Lors d'une requête, vous avez la possibilité de créer de nouveaux champs qui seront issus d'uncalcul en fonction du contenu d'un ou plusieurs autres champs.

1. Sur la ligne « Champ » de la table de requête, tapez dans une colonne vide le nom du champque vous désirez créer.

2. Tapez ensuite le caractère deux point suivi, de la formule de calcul.

Exemple :Pour calculer le champ TTC en fonction du champ Prix_HT , vous devez créer un champ TTC de

manière suivante :TTC : [Prix_Ht]* 2,206

Regroupements

Une requête permet de regrouper des données de manière à effectuer des calculs statistiquessur des ensembles de valeurs.

Exemple :La Table PERSO contient les champs nom, prénom, sexe... groupe et enfants.La requête donnée en exemple, consulte cette table et fait le cumul des valeurs contenues

dans le champ « enfants », avec un regroupement sur le champ « Groupe ». Pour ce faire,procédez de la manière suivante:

1. Activez la commande "Opérations" du menu "Affichage" ou bien cliquez sur le bouton de la

barre d'outils.

Page 44: Access Initiation

MicroSoft Access Version 7.0 Page : 39

2. Une nouvelle ligne est ajoutée au tableau de la requête. (Ligne Opération).

3 4

2

3. Choisissez de faire le regroupement sur le champ "Groupe".4. Cliquez sur le menu déroulant du champ "enfants", et choisissez "Somme".5. Lancez la requête, vous obtenez le résultat ci-dessous.

Remarque :Par défaut, chaque champ de la ligne « Opération » est un regroupement. Vous pouvez donc

modifier cette opération en sélectionnant une autre opération dans le menu déroulant, ousupprimer simplement l'opération en sélectionnant la cellule de la ligne « Opération »et en pressant

la touche Suppr .

Type d'opérations avec un regroupement

Type d'opérations Signification

Somme Somme des valeurs du champ

Moyenne Moyenne des valeurs du champ

Min Valeur mini du champ

Max Valeur maxi du champ

Compte Nombre de valeurs dans le champ

Ecart type Ecart type des valeurs du champ

Var Variance des valeurs du champ

Premier Contenu du champ dans le premier enregistrement de larequête

Dernier Contenu du champ dans le dernier enregistrement de larequête

Expression Calcul(pour les champs calculés)

Où Pas de regroupement le champ sert simplement de critère

Page 45: Access Initiation

Page : 40 MicroSoft Access Version 7.0

Liens jointures

Dans une requête, lorsque vous demandez d'ajouter une table, les liens créés par la commande« Relations » du menu « Outils » sont représentés par un trait reliant les champs liés.

Il est toutefois possible lors de la création d'une requête, de créer de nouveaux liens. Ce type delien, appelé Jointure, ne sera pris en compte par Access que dans la requête où ce lien a été créé.

Création d'une jointure

Cliquez sur le champ à lier de la table d'origine, gardez le bouton de la souris enfoncé, etdéplacez-vous sur le champ à lier de la table destination, relâchez le bouton. Access afficheaussitôt la jointure, symbolisée par un trait reliant les 2 champs.

Suppression d'une jointure

Cliquez sur le trait symbolisant la jointure, il apparaît en gras, appuyez sur la touche Suppr .

Access vous permet de définir 3 types de jointure:

• Les équi-jointures• Les jointures externes• Les jointures réflexives.

Pour définir le type de jointure, cliquez sur le trait symbolisant la jointure pour le sélectionner, puisactivez la commande « Propriété de la jointure » du menu « Affichage », vous obtiendrez ainsi laboîte de dialogue figurant sur la page suivante.

Les équi-jointures

Dans ce type de jointure, les liens établis entre les tables imposent qu'il existe unecorrespondance entre les champs liés, ainsi Access n'extraira que les enregistrements dont leschamps ont la même valeur dans les différentes tables. Cette jointure est l'option 1 de la boîte dedialogue et est l'option par défaut d'Access.

Les jointures externes

Dans ce type de jointure, les liens établis ne sont pas pris en compte pour les champs nonconcordants. Pour réaliser une telle jointure, cochez dans la boîte de dialogue ci-dessus, l'option 2ou 3, en sachant qu'Access extraira tous les enregistrements de la première table, et seulementceux de la seconde dont les champs joints sont identiques à ceux de la première table.

Page 46: Access Initiation

MicroSoft Access Version 7.0 Page : 41

Les jointures réflexives

Ce sont des jointures entre 2 champs d'une même table. Pour réaliser une jointure entre 2champs d'une même table, affichez 2 fois la même table à l'aide de la commande « Ajouter unetable ... » du menu « Requête », puis liez ensuite les champs exactement comme vous le feriez pour2 tables différentes.

Analyse croisée

Lorsque l'on fait des regroupements pour analyser des données statistiques, il peut être plusagréable de représenter les données sous forme de tableau plutôt que sous forme de liste.

Pour ce faire :1. Créer une nouvelle requête à l’aide de l’assistant « Analyse croisée ».2. Répondez aux questions de l’assistant.

1

2

Page 47: Access Initiation

Page : 42 MicroSoft Access Version 7.0

Création de requêtes « Action »

Les requêtes « Action » servent à créer de nouvelles tables, ou à modifier des données dans lestables existantes. MicroSoft Access offre quatre types de requêtes « Action ».

• La requête création de tables, qui crée une nouvelle table à partir d'une ou plusieurs tables.• La requête Suppression, qui supprime des enregistrements dans une ou plusieurs tables.• La requête Ajout, qui ajoute des enregistrements dans une ou plusieurs tables.• La requête Mise à jour, qui modifie des données dans une ou plusieurs tables.

Différence entre une requête Sélection et une requête Action

Lorsque vous créez une requête, c'est automatiquement une requête Sélection, à moins quevous ne la transformiez en requête Action en choisissant dans le menu « Requête » une des optionssuivantes :

• Création de tables ...• Mise à jour.• Ajout...• Suppression.

Pour empêcher toute modification inopportune après le lancement accidentel d'une requêteAction, Access identifie ces requêtes à l'aide d'une icône spéciale.

Icône de requête Sélection.

Icônes de requête Action.

De plus, par précaution, Access demande confirmation. Ceci étant une option que vous pouvezmodifier dans le menu « Outils -Options », onglet « Editer/Rechercher ».

Page 48: Access Initiation

MicroSoft Access Version 7.0 Page : 43

ConseilsAvant de modifier des données importantes par l'intermédiaire d'une requête Action, il peut êtreutile de créer une copie de la, ou des tables concernées par cette requête. Partant du principequ'il vaut mieux prévenir que guérir, il est recommandé de créer les requêtes Action en 3 étapes:

1. Créer une requête « Sélection ».2. Lancez la requête et examinez la feuille de réponses.3. Convertissez la requête Sélection en requête Action lorsqu'il vous semble que votre requête est

correcte.

Création de table

Si vous désirez que le résultat de la requête « Action » soit une nouvelle table :

1. Dans la fenêtre « Modification », activez la commande « Création de table... » du menu« Requête » pour obtenir la boîte de dialogue ci-dessous.

2. Répondez aux questions de la boîte de dialogue.

Tapez le nom de la nouvelle table

Tapez éventuellement le nomde la nouvelle base de données

Cliquez pour

valider

3. En cliquant sur le bouton de la barre d'outils, Access va vous créer la nouvelle table.

Ajout d'enregistrements à une table

1. Dans la fenêtre « Modification », activez la commande « Ajout... » du menu « Requête » pourobtenir une boîte de dialogue similaire à celle de création de tables.

2. Répondez aux questions de la boîte de dialogue.3. En cliquant sur le bouton

de la barre d'outils, Access va ajouter les enregistrements à la

table.4. Remarquez qu'Access a créé une ligne supplémentaire dans la requête (Ajouter à). Cette ligne

sert à indiquer à Access le nom des champs de la table destination auxquels correspondent leschamps de la table origine. Vous pouvez recopier le contenu de certains champs d'une tabledans les champs d'une autre table même ci ceux-ci ne portent pas le même nom.

Page 49: Access Initiation

Page : 44 MicroSoft Access Version 7.0

Mise à jour de données

1. Activez la commande « Mise à jour » du menu « Requête ».2. Constatez qu'Access affiche une nouvelle ligne (Mise à jour) dans le tableau de requête.

2

3. Sur cette ligne « mise à jour », inscrivez la formule qui modifiera les données du champ.

Suppression d'enregistrements

Lorsque vous avez des enregistrements à supprimer dans une table, il est souvent commode decréer une requête Action qui le fera automatiquement en fonction de certains critères.

1. Par prudence, construisez une requête « Sélection », vérifiez les résultats.2. Dans la fenêtre « Modification », activez la commande « Suppression » du menu « Requête ».

Access ajoute une nouvelle ligne au tableau de requête, la ligne « Supprimer ».

2

3. En cliquant sur le bouton de la barre d'outils, Access supprimera les enregistrements

correspondant aux critères que vous avez définis.

Page 50: Access Initiation

MicroSoft Access Version 7.0 Page : 45

Paramètrage d'une requête

Lorsqu'une requête doit être fréquemment utilisée avec des critères de sélection légèrementdifférents, vous pouvez paramètrer les critères de sélection.

Pour définir un paramètre dans un critère :1. Entrez un texte entre crochets, qui sera le message pour l'utilisateur.2. Vous pouvez également définir le type du paramètre afin d'éviter les erreurs de saisie. Activez la

commande "Paramètres..." du menu "Requête".

Copier

Coller

1

43

3. Dans la colonne « Paramètre » remettez le texte entre [ ]4. Cliquez sur le menu déroulant de la colonne « Type de données » pour en définir le type.5. Dans notre exemple, lors de l'exécution, la boîte de dialogue représentée ci-dessous s'affichera.

Mise à jour des enregistrements d'une table à partir d'une feuille de réponses

Dans de nombreux cas les modifications apportées dans une feuille de réponses d'une requêtesont répercutées dans la table source. Pour que la mise à jour soit possible il faut que chaqueenregistrement de la requête représente un seul enregistrement de la table.

Le tableau ci-dessous récapitule les cas où les tables sources sont oui ou non, modifiables àpartir d'une feuille de réponses.

Type de requête ou de champ Champsactualisables

Commentaires

Requête reposant sur une seuletable

Oui Si la requête ne comporte ni calcul, ni valeurunique, ni analyse croisée.

Requête reposant sur deux tablesavec relation un à un

Oui Si la requête ne comporte ni calcul, ni valeurunique, ni analyse croisée

Requête reposant sur deux tablesavec relation un à Plusieurs ouPlusieurs à un

En partie Vous pouvez mettre à jour les champs du côté"Plusieurs" uniquement si la requête ne comporteni calcul, ni valeur unique, ni analyse croisée.

Page 51: Access Initiation

Page : 46 MicroSoft Access Version 7.0

Requête reposant sur deux tablesavec relation un à Plusieursaucun champ du côté Plusieursn'étant inclus dans la feuille deréponses

Oui Vous pouvez mettre à jour les champs du côté"Un" uniquement si la requête ne comporte nicalcul, ni valeur unique, ni analyse croisée.

Requête reposant sur deux tablesavec relation un à un avecjointure réflexive

Non

Requête avec valeur unique (oùla propriété Valeur unique estsélectionnée)

Non

Requête avec calculs Non

Requête Analyse croisée Non

Requête multitables sans cléprimaire ou sans index unique ducôté "un" de la relation

Non Un index unique signifie que la propriété Index duchamp est définie sur "Oui-sans doublons".

Champ calculé Non Vous pouvez cependant modifier les champsdont dépendent le champ calculé, les champsseront recalculés.

Visualisation des instructions SQL

SQL ( Structured Query Language) est un langage de programmation particulièrement adaptéà l'interrogation, la mise à jour et la gestion de bases de données relationnelles. Lorsque vous créezune requête dans un tableau de "Requête", MicroSoft Access convertit systématiquement vosinstructions en langage SQL.

Pour visualiser ou modifier les instructions SQL :

1. Créez bien évidemment une requête.2. Utilisez la barre d’outils ou choisissez la commande « SQL... » du menu « Affichage », Access vous

affiche la boîte de dialogue ci-dessous.

3. Le cas échéant, vous pouvez modifier les instructions directement dans cette boîte dedialogue.

4. Cliquez sur « Ok », les modifications sont directement visibles dans le tableau de requête.

Page 52: Access Initiation

MicroSoft Access Version 7.0 Page : 47

Dupliquer une requête

1. Dans la fenêtre « Base de données », sélectionnez la requête à copier.2. Choisissez la commande « Copier » du menu « Edition ».3. Choisissez la commande « Coller » du menu « Edition ».4. Access vous affiche la boîte de dialogue « Coller sous.. », dans laquelle vous pourrez taper le

nouveau nom.

Supprimer une requête

1. Dans la fenêtre « Base de données », sélectionnez la requête à supprimer.2. Choisissez la commande « Supprimer » du menu « Edition ».3. Access vous affiche une boîte de dialogue, dans laquelle vous pourrez confirmer ou annuler la

suppression.

Page 53: Access Initiation

Page : 48 MicroSoft Access Version 7.0

LES ÉTATS

A quoi sert un état

Un état regroupe des données dans un format et une mise en page que vous allez spécifier.Vous faites appel à un état pour extraire d'une base de données, des informations significatives afinde les diffuser. Les étiquettes de publipostage, les factures, les listes téléphoniques sont autantd'exemples d'états.

Création d'un état à l’aide de l'assistant

Il est vivement conseillé d’utiliser un assistant pour la création d’un état , vous gagnerez dutemps et pourrez éventuellement le modifier ponctuellement par la suite.

1. Cliquez sur l’onglet « état »

1

2

2. Puis cliquez sur le bouton « Nouveau ».La fenêtre « Nouvel état » affichée ci-dessous vous permet de sélectionner la table principale àpartir de laquelle vous allez récupérer les informations.

3. Sélectionnez une table ou une requête.

3

4

5

4. Sélectionnez un assistant dans la liste qui vous est proposée.5. Cliquez sur « Ok ».6. Indiquez les champs que vous désirez mettre dans votre état.

Page 54: Access Initiation

MicroSoft Access Version 7.0 Page : 49

7. Indiquez si vous voulez faire un regroupement sur un champ.8. Précisez le champ sur lequel l’état doit être trié.9. Choisissez une présentation.10. Choisissez un style.11. Donnez un titre à votre état.

6

7

8

9

10

11

Page 55: Access Initiation

Page : 50 MicroSoft Access Version 7.0

Modification d'un état

Pour modifier un état créé à l'aide de l'assistant, passez en « Mode Création ».

Enregistrement et fermeture d'un état

Au moment de la fermeture de la fenêtre, Access vous propose d'enregistrer l'état. Vous pouvezcependant enregistrer vous-même de la manière suivante :

1. Choisissez « Enregistrer sous... » du menu « Fichier ».2. Tapez le nom de l'état.3. Cliquez sur « Ok ».

Pour fermer un état :1. Activez la commande « Fermer » du menu « Fichier ».

Impression d'un état

1. Choisissez « Configuration de l'imprimante » dans le menu « Fichier ».2. Sous « Orientation » sélectionnez le mode « Portrait » ou « Paysage ».3. Cliquez sur « Ok ».4. Activez la commande « Imprimer » du menu « Fichier ».

Dupliquer un état

1. Dans la fenêtre « Base de données », sélectionnez l'état à copier.2. Choisissez la commande « Copier » du menu « Edition ».3. Choisissez la commande « Coller » du menu « Edition ».4. Access vous affiche une boîte de dialogue, dans laquelle vous pourrez taper un nouveau nom.

Page 56: Access Initiation

MicroSoft Access Version 7.0 Page : 51

Supprimer un état

1. Dans la fenêtre « Base de données », sélectionnez l'état à supprimer.2. Choisissez la commande « Supprimer » du menu « Edition ».3. Access vous affiche une boîte de dialogue, dans laquelle vous pourrez confirmer ou annuler la

suppression.

Page 57: Access Initiation

Page : 52 MicroSoft Access Version 7.0

Modification d'un état

Lorsque vous passez en « mode création », MicroSoft Access affiche la fenêtre ci-dessous:

Mode Création

Aperçu avant inpressionEchantillon de l'aperçu

Trier et regrouperPropriétés

Liste des champsBoîte à outils

Palette des couleurs

Sections

Modifier les dimensions

Sections

Aperçu avant inpression Trier et regrouper Propriétés

Liste des champs

Boîte à outils

Modifier les dimensions

Changement de mode

Cette fenêtre est partagée en plusieurs parties appelées Section. La section Détail est la zonedans laquelle vous allez créer votre état. Un état peut contenir 4 sections :

• Une section détail.• Des sections, En-tête de groupe et Pied de groupe qui contiennent les données affichées en

début et fin de chaque groupe, dans le cas où l'état est basé sur une requête comportant desregroupements.

Page 58: Access Initiation

MicroSoft Access Version 7.0 Page : 53

• Une section En-tête d'état et Pied d'état qui contient les données affichées au début de lapremière page et en fin de dernière page.

• Des sections En-tête de page et Pied de page qui contiennent les données affichées en débutet en fin de chaque page.

Dimensions d'une section

Pour changer les dimensions d'une section :

1. Sélectionnez l'icône de la boîte à outils.

2. Placez le curseur de la souris sur le bord de la section (le curseur se transforme), déplacez lasouris pour redimensionner la section.

Création d'une section En-tête/Pied d'état

Pour créer une section En-tête et une section Pied d'état, appelez la commande « En-tête/Piedd'état » du menu « Disposition ».

Access affiche alors deux nouvelles sections. Vous pouvez y placer n'importe quel contrôle.

Création d'une section En-tête/Pied de page

Pour créer une section En-tête et une section Pied de page, appelez la commande « En-tête/Pied de page » du menu « Disposition ».

Access affiche alors deux nouvelles sections. Vous pouvez également y placer n'importe quelcontrôle.

Création d'une section de groupe

Pour définir une section de groupe, appelez la commande « Trier et regrouper » du menu

« Affichage » ou bien cliquez sur l'icône de la barre d'icônes.

Propriétés d'une section

Propriété Sections FonctionSaut de page En-tête/Pied de groupe

En-tête/Pied d'étatDétail

Permet d'indiquer si l'impression de la section doit êtreprécédée ou suivie d'un saut de page.

Nouvelle Ligneou colonne

En-tête/Pied de groupeEn-tête/Pied d'étatDétail

Permet d'indiquer si, dans une impression en multi-colonnes, la section doit être imprimée sur une nouvelleligne ou une nouvelle colonne ou bien suivie d'un retourligne ou d'un changement de colonne.

Section insécable En-tête/Pied de groupeEn-tête/Pied d'étatDétail

Si vous choisissez "Oui", la section sera obligatoirementimprimée en entier sur une page.

Visible Toutes Permet de masquer une section à l'impression.

Au formatage Toutes Permet de spécifier le nom d'une macro ou d'unefonction à exécuter lorsque l'état est mis en forme.

Sur impression Toutes Permet de spécifier le nom d'une macro ou d'unefonction à exécuter lorsque l'état est imprimé.

Auto-extensibleAuto-réductible

En-tête/Pied de groupeEn-tête/Pied d'état

Détail

Permet d'indiquer si la taille de la section peut êtremodifiée automatiquement afin de s'ajuster à la taille del'enregistrement (en tenant compte des lignes vierges).

Page 59: Access Initiation

Page : 54 MicroSoft Access Version 7.0

Hauteur Toutes Hauteur de la section.

Apparence Toutes Aspect de la section (couleur ou 3D).

Couleur du fond Toutes Pour changer la couleur du fond, choisissez "Palette"dans le menu "Affichage". Cliquez sur la section, puischoisissez la couleur dans la ligne "Fond" de la palette.

Page 60: Access Initiation

MicroSoft Access Version 7.0 Page : 55

Les contrôles de la boîte à outils

Les outils utilisés pour créer des contrôles sont identiques, que ce soit pour les formulaires ou lesétats. Cependant certains de ces outils se prêtent mal aux états; c'est le cas des zones de liste, deszones de liste modifiable, des boutons de commande et des boutons bascule.

Zone de texte

Pointeur de sélection

Groupe d'options Bouton bascule

Case à cocherListe modifiable Zone de liste

Sous état

Cadre d'objetindépendant

Trait Rectangle

Saut de page

Bouton de commande

Etiquette de texte

Bouton d'options

dépendantCadre d'objet

Assistant contrôle

Image

Modification des « propriétés par défaut » des contrôles

Pour modifier les propriétés qui seront prises par défaut :

1. Cliquez sur dans la barre d'outils.

2. Cliquez sur le contrôle que vous désirez modifier.

1

3

3. Dans la feuille de propriétés, modifiez les paramètres pour qu'ils deviennent les valeurs pardéfaut.

Le Pointeur

Outil de sélection d'objets

Le contrôle "Étiquette"

Écriture d'une étiquette (titre, commentaire etc..). Pour un retour à ligne appuyer surCTRL+Return

Page 61: Access Initiation

Page : 56 MicroSoft Access Version 7.0

1. Sélectionnez l'outil2. Positionnez le cadre dans la feuille d'état3. Tapez le texte

Le contrôle "Zone de texte"

Ce contrôle va servir à afficher un texte libre dans le rectangle de gauche

(étiquette) et à mettre une valeur calculée dans le rectangle de droite (formule, champ d'une table ou d'une requête).

Pour déplacer l'ensemble placer lepointeur de souris ici

Pour déplacer cet objetPlacer le pointeur ici

Pour déplacer cet objetPlacer le pointeur ici

Exemple d'une zone de texte avec une formule:

1. Sélectionnez l'outil « Zone de texte ».2. Placez le contrôle sur la feuille d'état ou le formulaire.3. Sélectionnez le texte de l'étiquette(à gauche), puis retapez votre texte (Imprimé le :).4. Sélectionnez le texte du cadre de droite, puis tapez la formule (=Maintenant() ).

3 4

Cliquez sur Vous obtenez cela :

Page 62: Access Initiation

MicroSoft Access Version 7.0 Page : 57

Exemple d'une zone de texte qui affiche des champs d'une table

1. Cliquez sur le bouton « Liste des champs » dans la barre d'outils ou choisissez « Liste des champs »dans le menu « Affichage ».

2. Sélectionnez le ou les champs (sélectionnez le premier, puis les suivants avec la touche CTRL)3. Faites glisser la sélection de la liste vers l'état.

3

2

4- Si vous désirez modifier l'étiquette, sélectionnez-la, puis modifiez le texte.5- Choisissez « Propriété » dans le menu « Affichage » ou cliquez sur dans la barre d'icônes.

4

7

6

6. Tapez le libellé de l'étiquette.7. Refermez la boîte de dialogue.

Le contrôle Groupe d'options (voir page 79)

Le contrôle Bouton bascule (voir page 78)

Le contrôle Case d'options (voir page 77)

Le contrôle Case à cocher (voir page 78)

Liste modifiable (voir page 84)

Le contrôle Zone de liste (voir page 84)

Le contrôle Bouton de commande (voir page 82)

Page 63: Access Initiation

Page : 58 MicroSoft Access Version 7.0

Le contrôle Graphique

Avant de créer un graphique, il faut décider de la source de ses données. Si toute l'informationnécessaire se trouve dans une seule table, cette table sera la source. Bien souvent, hélas lesdonnées proviennent de plusieurs tables. Il faut dans ce cas créer une requête sur laquelle serabasé le graphique. La source de données, qu'il s'agisse d'une table ou d'une requête, comprendgénéralement une combinaison des champs suivants:

• Le(s) champ(s) contenant les données à représenter sous forme graphique. Un de ces champsau moins doit être numérique.

• Le(s) champ(s) contenant les étiquettes qui identifient les valeurs dans le graphique.• Le(s) champ(s) de liaison si le graphique doit être régénéré enregistrement par enregistrement.

Les valeurs du champ de liaison doivent correspondre - enregistrement par enregistrement - auxvaleurs d'un autre champ dans l'état ou le formulaire. C'est grâce à ces champs que legrapheur différencie les données à associer à chaque enregistrement.

Exemple :Dans cet exemple le formulaire est basé sur une requête qui fournie pour chaque élève, les nom

et prénom, adresse et les notes de grammaire, d'orthographe et lecture.Nous allons construire un formulaire qui représente ces 3 notes graphiquement.

1. Dans la fenêtre « Base de données », cliquez sur l’onglet « Etats ».2. Cliquez ensuite sur le bouton « Nouveau ».

2

1

3. Dans la fenêtre « Nouvel état », sélectionnez « Assistant graphique ».4. Sélectionnez la table ou la requête sur laquelle doit être basé l’état, puis cliquez sur « Ok ».

4

3

Page 64: Access Initiation

MicroSoft Access Version 7.0 Page : 59

L’assistant graphique est maintenant lancé, il vous reste à répondre à ses questions.

5. Sélectionnez un à un les champs devant être représenté graphiquement.6. Cliquez sur le bouton pour le faire passer dans la fenêtre de droite, puis cliquez sur « Suivant ».

5

6

7. Choisissez le type de graphique, puis cliquez sur « Suivant ».

7

Page 65: Access Initiation

Page : 60 MicroSoft Access Version 7.0

L’assistant vous propose ensuite la fenêtre ci-dessous.

8. Nous allons faire glisser un à un les champs à représenter graphiquement dans la fenêtre« Données ».

Par défaut, l’assistant propose de synthétiser les données en en faisant la somme. Dans notreexemple nous voulons utiliser les données telles qu’elles sont dans la requête.9. Double cliquez sur chaque champ de façon à ouvrir la fenêtre « Synthétiser », puis choisissez

la fonction à appliquer.10. Cliquez sur le bouton « Ok », puis recommencez les étapes 9 et 10.11. Cliquez sur « Suivant ».

8

9

10

11

La dernière étape vous permet de :

12. Donner un titre au graphique.13. D’afficher ou pas une légende.14. ect..15. Cliquez sur le bouton « Terminer ».

12

13

15

Lorsque vous quittez l’assistant graphique, le graphique apparaît dans votre état. Il vous resteensuite à le mettre en forme.

Page 66: Access Initiation

MicroSoft Access Version 7.0 Page : 61

Mettre en forme un Graphique

Vous avez ensuite la possibilité de faire des modifications de mise en forme, exactement commevous le feriez dans le grapheur « Excel ».

Pour avoir accès à la barre de menu du grapheur, procédez comme suit :1. Cliquez sur le graphique, de manière à le sélectionner.2. Placez la main au milieu du graphique, puis double cliquez.

1

2

La fenêtre du grapheur est représentée ci-dessous. D’un manière générale, pour modifier unobjet du graphique, il faut faire un double clic sur cet objet.

Exemple :Pour modifier l’échelle des valeurs de l’axe des y :

1. Double cliquez sur l’axe des y, la fenêtre « Format d’axe » s’ouvre.2. Dans la fenêtre « Format d’axe », cliquez sur l’onglet « Echelle », puis modifiez les valeurs.

Page 67: Access Initiation

Page : 62 MicroSoft Access Version 7.0

Le contrôle "Sous état"

Un sous état ou un sous formulaire est un état ou un formulaire placé dans un autre état ou un autreformulaire. Ceci est pratique lorsque, par exemple un état doit contenir à la fois des données sousforme de fiche et des données sous forme de tableau; Ou lorsque, sur un même état vous voulezeffectuer des niveaux de regroupements différents. Ou encore lorsque l’état doit comporter ungraphique.

Exemple :Nous venons de voir comment créer un état contenant un contrôle graphique. Cet état, nommé« Graph », nous allons l’incorporer dans l’état ci-dessous, nommé « Relevé de notes ».L’état « Graph » sera alors considéré comme un sous état de l’état « Relevé de notes ».

Nous avons donc, d’une part :La table « Eleves »

et l’état « Relevé de notes » basé sur la table « Eleves ».

Et d’autre part :

La table « notes »

Page 68: Access Initiation

MicroSoft Access Version 7.0 Page : 63

La requête « Graph »

et enfin l’état « Graph ».

Notes de Français

6,92

13,16

9,17

0

5

10

15

20

Grammaire Orthographe Lecture

ATTENTION :Etant donné que l’état « Relevé de notes » est basé sur la table « Eleves » et que l’état « Graph »

est lui basé sur la requête « Graph », il faut que cette requête sélectionne, pour chaqueenregistrement de la table « Eleves » l’enregistrement correspondant dans la table « Notes ».

Il faut donc que le critère de sélection de la requête « Graph » soit par exemple les champsnom et le prénom de l’état « Relevé des Notes ».

Il reste maintenant à incorporer l’état « Graph » dans l’état « Relevé de Notes ».

Page 69: Access Initiation

Page : 64 MicroSoft Access Version 7.0

1. Affichez la fenêtre « Base de données ».2. Sélectionnez l’onglet « Etat ».3. Sélectionnez l’état « Relevé de Notes ».4. Cliquez sur le bouton « Modifier », l’état s’affiche .5. Sélectionnez l’état « Graph »6. Faites-le glisser sur l’état « Relevé de Notes ».

12

3

4

56

L’état « Graph » est maintenant un sous-état de l’état « Relevé de Notes », il ne vous reste plus qu’ademander « l’aperçu avant impression ».

Page 70: Access Initiation

MicroSoft Access Version 7.0 Page : 65

Le contrôle Cadre indépendant

Un cadre d'objet dépendant sert à afficher un objet OLE si vous avez coché l’option « Créernouveau », ou une image si vous avez coché l’option « A partir d’un fichier ». Un cadre d'objetindépendant est similaire à une étiquette. Les étiquettes et les cadres d'objets indépendantsservent à enrichir les formulaires et les états.

Créer ou incorporer un document existant

3

1. Ouvrez l'état ou le formulaire2. Cliquez sur le cadre « Objet indépendant » de la boîte à outils.3. Dans le formulaire ou l'état, cliquez là où vous souhaitez placer le

coin supérieur gauche du cadre de l'objet, et délimitezl'encombrement en faisant glisser la souris sur le coin opposé.

4. MicroSoft Access affiche la liste des objets disponibles

5. Sélectionnez « Créer nouveau » ou « A partir d'un fichier ».6. Sélectionnez le type d'objet ou le fichier contenant l’image.7. Quittez en cliquant sur « OK ».

Le contrôle Cadre dépendant

Un cadre d'objet dépendant sert à afficher un objet OLE stocké dans une table. Un tel contrôlepermet de modifier des images dans un formulaire ou un état, enregistrement par enregistrement,comme on le ferait avec des zones de texte.

Pour créer un cadre d'objet dépendant:

2

1. Ouvrez l'état ou formulaire.2. Cliquez sur le cadre « Objet dépendant » de la boîte à outils

3. Lorsque le cadre est sélectionné, cliquez sur le bouton pourafficher les propriétés de l’objet, puis dans la fenêtre« Propriétés - Source contrôle», sélectionnez le champcorrespondant.

Ou2. Affichez la liste des champs en cliquant sur le bouton dans

la barre d'outils.3. Faites glisser le nom du champ qui stocke l'objet OLE sur le

formulaire ou l'état, Access crée un cadre d'objet dépendantassocié à ce champ.

Page 71: Access Initiation

Page : 66 MicroSoft Access Version 7.0

Le contrôle Trait

1

1. Sélectionnez l'outil « Trait » dans la boîte à outils.2. Cliquez dans l'état ou le formulaire là où vous voulez une des

extrémités du trait et déplacez la souris en gardant le boutonenfoncé jusqu'à l'autre extrémité du trait.

Le contrôle Rectangle

1

1. Sélectionnez l'outil « Rectangle » dans la boîte à outils.2. Cliquez dans l'état ou le formulaire là où vous voulez le coin

supérieur gauche du rectangle et déplacez la souris vers lecoin inférieur droit en gardant le bouton enfoncé, relâchez lebouton.

Le contrôle Saut de page

1

1. Sélectionnez l'outil « Saut de page » dans la

boîte à outils.2. Cliquez dans le formulaire ou l'état à

l'endroit où vous désirez un saut de page.

Page 72: Access Initiation

MicroSoft Access Version 7.0 Page : 67

Les modèles de contrôles

Si vous placez plusieurs fois le même type de contrôle avec les mêmes propriétés, procédezcomme suit :

1. Créez votre contrôle et définissez les propriétés du contrôle.2. Sélectionnez le contrôle puis activez la commande « Définir les paramètres par défaut du

contrôle » du menu « Format »3. Choisissez ensuite, dans la boîte à outils, le bouton correspondant au nouveau contrôle, puis

placez-le dans l'état ou le formulaire. Ce contrôle prend automatiquement les propriétés ducontrôle défini comme modèle.

Alignement, empilement des contrôles

Pour aligner des contrôles les uns par rapport aux autres :

1. Sélectionnez les contrôles à aligner entre eux.2. Utilisez une des options des commandes « Aligner.... » du menu « Format »

Pour empiler les contrôles :

Sélectionnez le contrôle, puis activez la commande « Premier plan » ou « Arrière plan » du menu« Format ».

Page 73: Access Initiation

Page : 68 MicroSoft Access Version 7.0

LES FORMULAIRES

1. Dans la fenêtre « Base de données » cliquez sur l'onglet symbolisant les formulaires.2. Cliquez ensuite sur le bouton « Nouveau ».

1

2

Pour la création d’un formulaire ou d’un état, Access vous offre 3 possibilités : a/ Créer le formulaire de toutes pièces, sans aucune aide, c’est le « Mode création ». b/ Créer le formulaire de façon totalement automatique : « Colonne simple » et « Tabulaire ». c/ Créer le formulaire à l’aide d’un assistant, c’est le mode « Assistant formulaire ».

Création d'un formulaire automatiquement

Assistant Colonne simple

Les champs de chaque enregistrement seront affichés les uns en dessous des autres.

Page 74: Access Initiation

MicroSoft Access Version 7.0 Page : 69

Assistant Tabulaire

Les champs seront affichés les uns à côtés des autres sous forme de tableau, avec un enregistrement parligne.

Création d'un formulaire avec l'assistant

1. Sélectionnez la table ou la requête à utiliser.2. Cliquez sur "Assistant Formulaire".

1

2

3. Choisissez les champs que vous voulez voire apparaître dans le formulaire.

Ajoute le champ sélectionné

Ajoute tous les champs

Retire le champ sélectionné

Retire tous les champs

3

Page 75: Access Initiation

Page : 70 MicroSoft Access Version 7.0

4. Choisissez la présentation.

5. Le style

6. Donnez un nom au formulaire.

6

Page 76: Access Initiation

MicroSoft Access Version 7.0 Page : 71

7. Vous obtenez ceci :

Page 77: Access Initiation

Page : 72 MicroSoft Access Version 7.0

Modification d’un formulaire.

Lorsque qu’un formulaire à été créé à l’aide de l’assistant, vous pouvez toujours le modifier.

Dans la barre d’outils, cliquez sur pour passer en « création ».

Propriétés d'un formulaire

Le formulaire, de même que les contrôles et les objets, possèdent un certain nombre decaractéristiques modifiables appelés « Propriétés ».

Pour afficher la fenêtre de modification, sélectionnez le formulaire à l'aide de la commande« Sélectionner le formulaire » du menu « Edition », puis activez la commande « Propriétés... » du

menu « Affichage ».ou cliquez sur

Propriétés FonctionSource Nom de la table à laquelle appartient les champs. (permet de créer des

formulaires avec des données de plusieurs tables).

Légende Texte affiché dans la barre de titre du formulaire.

Sur activation Contient une macro ou une fonction à exécuter lorsqu'un enregistrement estactivé.

Sur insertion Contient une macro ou une fonction à exécuter lorsqu'un nouvelenregistrement est saisi (au premier caractère saisi).

Sur suppression Contient une macro ou une fonction à exécuter lorsqu'un enregistrement estsupprimé.

Avant MAJ, Après MAJ Contient une macro ou une fonction à exécuter lorsqu'un enregistrement estmodifié. Exécution soit avant, soit après la mise à jour de l'enregistrement.

Sur ouvertureSur fermeture

Contient une macro ou une fonction à exécuter soit à l'ouverture, soit à lafermeture.

Page 78: Access Initiation

MicroSoft Access Version 7.0 Page : 73

Propriétés FonctionMenu Contient le nom d'une macro de la barre de menus à affecter au formulaire.

Affich par défautAffich autorisé

Affich par défaut sert à indiquer le mode d'affichage standard du formulaire:soit simple (un seul enregistrement affiché à la fois), soit continu (plusieursenregistrements affichés à la suite, chacun dans un formulaire), soit feuille dedonnées (affichage par défaut en mode tableau).Affich autorisé indique les types d'affichage autorisés pour le formulaire : soitfeuille de donnée (affichage interdit en mode formulaire), soit formulaire(affichage interdit en mode feuille de donnée), soit les deux.

Permet MAJ Permet d'indiquer quelles sont les tables modifiables avec le formulaire : soitaucune, soit générale(toutes les tables sont modifiables), soit limitée(seules lestables par défaut sont modifiables).

Barre défilement Permet d'indiquer si on doit afficher les barres de défilement.

Filtrage autorisé Donne ou pas, l'autorisation d'utiliser les commandes de filtrage du menu"Enregistrements".

Grille X, Grille Y Indique les valeurs permettant d'ajuster les contrôles.

Police imprimante Indique si les polices disponibles doivent être seulement celles de l'imprimantesélectionnée (option Oui), ou bien toutes celles utilisables à l'écran.

Taille ajustée Avec l'option "Oui", le formulaire sera ajusté de façon à afficher unenregistrement complet. Dans le cas contraire, il sera ouvert à la taille qu'ilavait lors de sa dernière fermeture.

Verrouillage Mode de verrouillage des enregistrements en environnement multi-utilisateurs:Aucun (automatiquement verrouillés), Enr modifié (enregistrement en coursverrouillé durant la modification), Général (tous les enregistrements sontverrouillés).

Fen indépendanteFen modaleAfficher sélecteur

Ces propriétés affectent les sous-formulaires. Fenêtre indépendante (il estouvert par-dessus les autres fenêtres), Fen modale ou non (Une fenêtre modalereste active tant qu'elle n'est pas fermée), Afficher sélecteur sert à afficher ounon les sélecteurs d'enregistrements.

Largeur Indique la largeur du formulaire.

Fichier AideContexte Aide

Pour utiliser ces fonctionnalités, il faut posséder le compilateur d'aide deMicroSoft. Fichier Aide, nom du fichier contenant l'aide attaché au formulaire.Contexte Aide, numéro de la rubrique du Fichier Aide.

Page 79: Access Initiation

Page : 74 MicroSoft Access Version 7.0

Les différentes sections d’un formulaire.

La fenêtre d’un formulaire est partagée en plusieurs parties appelées Section.La section Détail est la zone dans laquelle vous allez créer votre formulaire. Un formulaire peut

contenir 5 sections :Il est également possible de créer d’autres sections, à l’aide des commandes « En-tête/Pied de

formulaire » et « En-tête/Pied de page » du menu « Affichage ».Vous pouvez placer dans ces sections, les contrôles qui vous conviennent.

1

2

Dimensions d'une section

Pour changer les dimensions d'une section :

1. Sélectionnez l'icône de la boîte à outils.

2. Placez le curseur de la souris sur le bord de la section (le curseur se transforme), déplacez lasouris pour redimensionner la section.

Les propriétés des sections

Pour modifier les propriétés d’une section, cliquez sur la section, puis cliquez sur

Page 80: Access Initiation

MicroSoft Access Version 7.0 Page : 75

Placement de champs

1. Pour placer un champ dans un formulaire ou un état, activez la commande « Liste des champs »

du menu « Affichage », ou cliquez sur 2. Faites glisser un champ de la boîte « Champs », vers le formulaire ou l'état.3. Access affiche sur le formulaire, une étiquette, destinée à contenir le nom du champ4. Access affiche sur le formulaire une zone de texte, destinée à contenir le contenu du champ.

2

3 4

Propriétés des contrôles

Pour changer les propriétés d'un contrôle, sélectionnez-le, puis activez la commande« Propriétés... » du menu « Affichage », Access affiche une liste de propriétés qui peuvent êtredifférentes d'un contrôle à l'autre.

PoliceCertaines propriétés, comme la police, les attributs de caractères, ou l'alignement peuvent êtremodifiés directement à partir de la barre d'icônes.

Page 81: Access Initiation

Page : 76 MicroSoft Access Version 7.0

DimensionsPour modifier la position ou les dimensions d'un contrôle, activez la commande « Propriétés... » dumenu « Affichage ».

x du coin supérieur gauche

Y du coin supérieur gauche

Dimensions du contrôle

ApparencePour un contrôle, vous avez le choix entre 6 apparences : à 2 dimensions, relief, 3D enfoncé, gravé,ombré et ciselé.

VisibilitéUn contrôle peut être visible ou invisible. Pour modifier sont état, utilisez la propriété « Visible » dansla fenêtre de propriété.

ValidationSi vous voulez qu'Access vérifie la saisie dans un contrôle, vous pouvez entrer dans la zone « Valablesi », une expression. Les zones avant MAJ et après MAJ vous permettent de préciser le moment oùAccess doit faire la vérification.Vous pouvez également utiliser la zone « Message si erreur » pour envoyé un message à l'utilisateuren cas de non-validité de la saisie.

Couleur

Pour Modifier la couleur d'un contrôle (fond, texte ou bordure), cliquez sur .

Page 82: Access Initiation

MicroSoft Access Version 7.0 Page : 77

Le contrôle « Étiquette » (voir page 55)

Le contrôle « Zone de texte »(voir page 56)

Propriétés des zones de texte

Propriété SignificationTexte barre d'état Le texte tapé dans cette zone est affiché dans la

barre d'état lorsque le contrôle est actif.

Sur entréeSur sortieSur double clic

Nom de macro ou de fonction à exécuter lorsquel'utilisateur active, désactive ou fait un double clicsur le contrôle.

Valeur par défaut Valeur qui sera inscrite par défaut dans le contrôle.

Activé Permet de préciser si l'on peut activer ou non lecontrôle en cliquant dessus.

Verrouillé Permet de spécifier si l'on peut ou non, saisir dutexte dans le contrôle

Barre de défilement Affiche ou pas une barre de défilement

Auto-ExtensibleAuto-réductible

Permet de préciser que le contrôle peut êtreagrandi automatiquement par Access.

Le contrôle « Case d'options »

Les cases d'options sont composées d'un cercle suivi d'une étiquette . Lorsque l'on clique sur cecercle, un rond noir apparaît, on dit que l'option est sélectionnée.

Pour créer une case d'options :1. Sélectionnez le contrôle dans la boîte à outils.

2. Cliquez dans le formulaire à l'endroit où vous désirez placer le contrôle.

Pour créer une case d'options dépendante d'un champ, sélectionnez ce champ dans la propriété« Source contrôle » de la case d'options.

Propriétés des cases options"

Propriété SignificationValeur contrôle Valeur (Entier positif) affectée par le contrôle au champ dont il dépend lorsque

celui-ci est activé.

Texte barre d'état Texte qui apparaît dans la barre d'état lorsque le contrôle est activé.

Activé Permet d'autoriser ou non le contrôle lorsque l'on clique dessus.

Verrouillé OUI :Le contrôle fonctionne normalement mais n’autorise ni l’ajout, ni lamodification, ni la suppression de données.NON :Le contrôle fonctionne normalement et permet l’ajout, la modification etla suppression de données.

Page 83: Access Initiation

Page : 78 MicroSoft Access Version 7.0

Le contrôle « Case à cocher »

Les cases à cocher sont composées d'un carré suivi d'une étiquette. Lorsque l'on clique sur cecarré, une croix apparaît (si il était vide) ou disparaît (si la croix existait). Lorsqu'une croix figure dansle carré, on dit que l'option est sélectionnée.

Pour créer une case à cocher :1. Sélectionnez le contrôle dans la boîte à outils.

2. Cliquez dans le formulaire à l'endroit où vous désirez placer le contrôle.

Pour créer une case à cocher dépendante d'un champ, sélectionnez ce champ dans la propriété« Source contrôle » de la case à cocher.

Propriétés des cases à cocher

Propriété SignificationValeur contrôle Valeur (Entier positif) affectée par le contrôle au champ dont il dépend lorsque

celui-ci est activé.

Texte barre d'état Texte qui apparaît dans la barre d'état lorsque le contrôle est activé.

Activé Permet d'autoriser ou non le contrôle lorsque l'on clique dessus.

Verrouillé OUI :Le contrôle fonctionne normalement mais n’autorise ni l’ajout, ni lamodification, ni la suppression de données.NON :Le contrôle fonctionne normalement et permet l’ajout, la modification etla suppression de données.

Le contrôle « Bouton bascule »

Les boutons bascules sont des boutons qui reste enfoncés lorsque l'on clique dessus.

Pour créer un bouton bascule :1. Sélectionnez le contrôle dans la boîte à outils.

2. Cliquez dans le formulaire à l'endroit où vous désirez placer le contrôle.

Propriétés des boutons bascules

Propriété SignificationLégende Texte affiché dans le bouton.

Image Nom de l'image affichée dans le bouton (image Bitmap .BMP).

Valeur contrôle Valeur affectée par le contrôle au champ dont il dépend lorsqu'on cliquedessus. Cette valeur doit être un entier positif.

Texte barre d'état Texte qui apparaît dans la barre d'état lorsque le contrôle est activé.

Activé Permet d'autoriser ou non le contrôle lorsque l'on clique dessus.

Verrouillé OUI :Le contrôle fonctionne normalement mais n’autorise ni l’ajout, ni lamodification, ni la suppression de données.NON :Le contrôle fonctionne normalement et permet l’ajout, la modification etla suppression de données.

Page 84: Access Initiation

MicroSoft Access Version 7.0 Page : 79

Le contrôle « Groupe d'options »

Un groupe d'options est un cadre possédant une étiquette et permettant d'encadrer des contrôlesqui doivent fonctionner ensemble (de façon à ne pouvoir sélectionner qu'une seule option).

Les contrôles que vous pouvez mettre dans un groupe d'options sont :• les case d'options.• les cases à cocher.• les boutons bascules.

Pour créer un groupe d'options à l’aide de l’assistant:

1. Sélectionnez l'outil dans la boîte à outils.

2. Activez l’assistant, en cliquant sur le bouton se trouvant dans la barre d’outils.3. Positionnez le pointeur de souris là où vous désirez disposer le coin supérieur gauche du

rectangle.4. Déplacez la souris vers le coin opposé. A ce moment précis un assistant vous prend en charge.5. Tapez autant de noms que vous désirez d'étiquettes.6. Cliquez sur « Suivant »

5

6

7. Désignez éventuellement l'option qui doit être prise par défaut, puis cliquez sur « Suivant »..

7

Page 85: Access Initiation

Page : 80 MicroSoft Access Version 7.0

8. Décidez des valeurs à donner à chaque option.

8

9. Si le contrôle est associé à un champ, choisissez le champ dans la liste déroulante.

9

10. Choisissez le type de contrôles11. Choisissez le style des contrôles

10

11

Page 86: Access Initiation

MicroSoft Access Version 7.0 Page : 81

12. Donnez un nom au contrôle, puis cliquez sur « Terminer ».

12

Propriétés des groupes d'options

Propriété SignificationSource contrôle Permet de spécifier le champ dont dépend le

contrôle. Cela sert à modifier le contenu d'unchamp en fonction de l'option sélectionnée.

Texte barre d'état Tapez le texte à afficher dans la barre d'étatlorsque le contrôle est activé.

Sur entréeSur sortieSur double clic

Nom de macro ou de fonction à exécuter lorsquel'utilisateur active, désactive ou fait un double clicsur le contrôle ou son étiquette.

Valeur par défaut Valeur qui sera inscrite par défaut dans le contrôle.

Activé Permet de préciser si l'on peut activer ou non lecontrôle en cliquant dessus.

Verrouillé Permet de spécifier si l'on peut ou non, saisir dutexte dans le contrôle.

Page 87: Access Initiation

Page : 82 MicroSoft Access Version 7.0

Le contrôle « bouton de commande ».

Les boutons de commande sont des boutons classiques donnant lieu à une action lorsque l'onclique dessus.

Pour placer un bouton de commande à l’aide de l’assistant:

1. Sélectionnez l'outil dans la boîte à outils.

2. Cliquez sur le formulaire à l'emplacement où vous désirez placer le bouton.3. Si l'option « Assistant contrôle » du menu « Affichage » est actif, vous êtes pris en charge par

l'assistant :4. Sélectionnez une catégorie, et éventuellement une action.

4

5. Sélectionnez le texte que vous voulez voire apparaître sur le bouton. A la place du texte, vousavez possibilité de mettre une image prédéfinie. Le bouton « Parcourir » vous permet d’allersélectionner une image se trouvant sur la disque.

5

Page 88: Access Initiation

MicroSoft Access Version 7.0 Page : 83

6. Donnez un nom au bouton.

6

Propriétés des boutons de commande

Légende C'est le texte affiché dans le bouton.

Image Nom de l'image affichée dans le bouton, (image Bitmap .BMP).

Transparent Permet de rendre le bouton transparent. Vous pouvez de cette façon placerun bouton par dessus un contrôle.

Auto répétition L'option Oui permet d'exécuter la macro associée dans la rubrique "Surpression", s'exécute tant que le bouton est enfoncé.

Texte barre d'état Texte qui sera affiché dans la barre d'état lorsque le contrôle sera actif.

Sur pressionSur entréeSur sortie*Sur double clic

Nom de macro ou de fonction à exécuter lorsque l'utilisateur clique sur lebouton(sur pression) ou lorsqu'il devient actif (sur entrée) ou lorsqu'il n'est plusactif (sur sortie) ou lorsque l'on double clic.

Actif par défaut Si vous choisissez Oui le bouton sera sélectionné par défaut dans le formulaire.

Afficher Permet d'indiquer si on veut que le contrôle soit visible à l'écran et/ou àl'impression.

Activé Permet de préciser si le contrôle peut être activé en cliquant dessus.

Page 89: Access Initiation

Page : 84 MicroSoft Access Version 7.0

Le contrôle « Liste modifiable »

Pour placer une liste modifiable dans un formulaire :1. Cliquez sur l'outil

de la boîte à outils.

2. Cliquez dans le formulaire, là où vous désirez placer la liste.3. Supprimez éventuellement l'étiquette.

Le contrôle « Zone de liste »

Pour placer une zone de liste dans un formulaire :1. Cliquez sur l'outil de la boîte à outils.

2. Cliquez dans le formulaire, là où vous désirez placer la liste.3. Supprimez éventuellement l'étiquette.

Les listes peuvent contenir différents types de données : des valeurs, des noms de champs issusd'une table, ou le contenu du premier champ d'une table ou d'une requête.

• Pour remplir une liste avec des valeurs.1. Sélectionnez l'option « Liste de valeurs » dans la propriété « Origine Source » et tapez la liste de

valeurs dans la propriété « Contenu ». (le point virgule est le séparateur de valeurs)2. Dans la propriété « Source contrôle » indiquez le champ de la table sur laquelle le formulaire est

basé, afin que l'élément de la liste, sélectionné par l'utilisateur soit recopié dans ce champ.

Champ de la table associéeau formulaire qui sera mis àjour par la sélection d'un élémentde la liste.

Largeur de la liste

Enumérez la liste, en mettant unpoint virgule entre chaque élément.

Remarque : Si on considère qu'une liste de valeurs simule une table, l'exemple ci-dessus,représente une table virtuelle d'un seul champ.Pour simuler une table à 2 champs, il faut énumérer la liste de la façon suivante :Contenu............. : 0;bleu;1;blanc;2;rouge;3;jaune;4;vert

0 bleu1 blanc2 rouge

Page 90: Access Initiation

MicroSoft Access Version 7.0 Page : 85

• Pour remplir une liste avec le champ d'une table.

1. Sélectionnez l'option « Table/requête » dans la propriété « Origine Source »; Dans la propriété« Contenu » Inscrivez le nom de la table, ou de la requête, ou la requête elle-même.(Utilisezl'assistant, il le fera pour vous).

2. Dans la propriété « Source contrôle » indiquez le champ de la table qui doit être mis à jour par laliste.

Nbre de colonnes dela table liée à la liste

Champ de la table associéeau formulaire qui sera mis àjour par la sélection d'un élémentde la liste.

à jour de la table.

N° de la colonne qui contientles informations pour la mise

Largeur de la liste

• Pour remplir une liste à l'aide d'une table comprenant plusieurs champs.

La figure ci-dessous représente les relations entre les propriétés d'une liste et :- La table associée à cette liste.- Le formulaire qui contient la liste.- La table sur laquelle est basée le formulaire.

Pour afficher dans la listela 2ème colonne de la tableon affecte 0 à la largeur dela colonne 1. Nbre de colonnes de

la table liée à la liste

Champ de la table associéeau formulaire qui sera mis àjour par la sélection d'un élémentde la liste.

à jour de la table.

N° de la colonne qui contientles informations pour la mise

1

Page 91: Access Initiation

Page : 86 MicroSoft Access Version 7.0

Propriétés des listesPropriété Signification

Source contrôle Permet de spécifier le champ associé au contrôle. Ce champ sera mis à jouren fonction de l'option sélectionnée dans la liste.

Origine source Permet de choisir le type de données à afficher dans la liste.

Contenu Permet de saisir les valeurs (séparées par des points-virgules) à afficher dans laliste ou bien la table de référence.

Nombre de colonnes Permet de préciser le nombre de colonnes que doit avoir la liste. Lorsque vousaffichez le contenu d'une table, chaque colonne contiendra le contenu d'unchamp.

En-tête colonnes Si l'option Oui est sélectionnée, la première valeur de la liste sera utiliséecomme titre de la liste et ne sera pas sélectionnable.

Largeur colonne Permet de définir la largeur des colonnes.

Colonne liée Permet d'indiquer le n° de la colonne dont le contenu doit être recopié dans lechamp indiqué au niveau de la propriété "Source contrôle".Si vous tapez 0, c'est l'index de l'élément sélectionné qui sera inscrit dans lechamp.

Lignes affichées Permet d'indiquer dans une liste déroulante, le nombre de lignes à afficher, lesautres étant accessibles par l'ascenseur.

Largeur de liste Permet d'indiquer dans une liste déroulante, la largeur de la partie déroulante.

Texte barre d'état Texte qui sera affiché dans la barre d'état.

Limiter à liste L'option Oui permet de taper des valeurs qui ne figure pas dans la liste.

Sur entréeSur sortieSur double-clic

Nom de la macro ou de la fonction à exécuter lorsque l'utilisateur active,désactive ou double-clic sur le contrôle.

valeur par défaut Valeur inscrite par défaut dans le contrôle.

Visible Permet de masquer la liste à l'impression.

Activé Permet de préciser si on peut activer ou non le contrôle.

Verrouillé Permet de spécifier si on peut saisir ou non dans le contrôle.

Les propriétés du contrôle Graphique (voir page 58)

Propriété SignificationVisible Permet de masquer le graphique à l'impression.

Afficher Permet de préciser si l'on veut que le graphique soit visible à l'écran et/ou àl'impression.

Echelle Initiale, l'objet est affiché tel quel ; Proportionnel, l'objet est ajusté au cadredans les 2 dimensions (attention il peut être déformé) ; Zoom, l'objet est ajusté àla plus petite des 2 dimensions du cadre (Pas de déformation).

Application OLE permet de sélectionner l'application d'origine de l'objet (MicroSoft Graph).

Origine source Permet de sélectionner le type de données à représenter : données d'unetable, d'une liste de valeurs ou des noms de champs d'une table.

Contenu Permet de saisir les valeurs à représenter (séparées par un point-virgule) ou latable de référence ou une requête.

Page 92: Access Initiation

MicroSoft Access Version 7.0 Page : 87

Propriété Signification

Champs fils Permet de spécifier le nom des champs à utiliser (précédé éventuellement dunom de table correspondante (séparé par un point).

Champs pères Permet de spécifier le nom des champs correspondant aux champs fils, dans leformulaire.

Nombre de colonnes Permet de préciser le nombre de colonnes qui doivent être envoyées auserveur OLE. Ce paramètre n'a généralement pas d'effet pour un graphique.

En-tête colonnes Avec l'option Oui activée, la première valeur de la liste (ou le nom du champ)sera utilisée comme titre et ne sera donc pas utilisée comme donnée dans legraphique.

Activé Permet de préciser si on peut ou non activer le contrôle en cliquant dessus.

Page 93: Access Initiation

Page : 88 MicroSoft Access Version 7.0

Le contrôle Sous formulaire (voir le contrôle Sous-état page 62)

Le contrôle Cadre indépendant (voir page 65)

Le contrôle Cadre dépendant (voir page 65)

Le contrôle Trait (voir page 66)

Le contrôle Rectangle (voir page 66)

Le contrôle Saut de page (voir page 66)

Ordre de parcours des champs d'un formulaire

Lorsque l'on se déplace dans un formulaire avec la touche « Tabulation », les contrôles sontactivés dans un ordre précis. Vous pouvez redéfinir cet ordre à l'aide de la commande « Ordre detabulation... » du menu « Affichage ».

1

2

Pour changer l'ordre :1. Sélectionnez le contrôle à déplacer, en vous positionnant sur le carré gris de la ligne.2. Toujours sur le carré gris de la ligne, faites glisser la ligne à sa nouvelle place.

Page 94: Access Initiation

MicroSoft Access Version 7.0 Page : 89

Déplacements dans un formulaire

Champ suivant TAB

Champ précédent + TAB

Changement de section F6

Sélectionner le contenu d'un champ F2

Lorsque le contenu d'un champ estsélectionné : retour au 1er champ.

Lorsque le contenu d'un champ estsélectionné : retour au dernier champ.

FIN

Premier champ du premierenregistrement. CTRL +Dernier champ du dernierenregistrement. CTRL + FIN

Pour aller sur n'importe quel champ.

Pour passer d'un sous formulaire auchamp suivant du formulaire principal. CTRL + TAB

Pour passer d'un sous formulaire au 1erchamp du formulaire principal. CTRL + TAB +Enregistrement suivant/précédent.

OU

Pour se déplacer d'un enregistrement àl'autre.

Enregistrement d'un formulaire

Lorsque vous quittez le mode "Création" en fermant le formulaireou en cliquant sur le sélecteur de modeAccess vous propose d'enregistrer le formulaire.

Toutefois, vous pouvez à tout moment utiliser lacommande "Enregistrer" du menu "Fichier".

Page 95: Access Initiation

Page : 90 MicroSoft Access Version 7.0

Saisie en mode formulaire

Saisie de texteTapez tout simplement votre texte.

Saisie de valeurs numériquesTapez les valeurs sans blanc, avec le séparateur décimal choisi dans Windows.

Saisie de dateVous pouvez saisir les dates aux formats suivants : jj/mm/aa ou jj-mm-aa .......

Saisie de champs Oui/NonTapez Oui ou non, ou 0 pour non et toutes autres valeurs pour oui, ou Vrai pour Oui et faux pour

Non, ou Actif pour Oui et Inactif pour Non.

Si le champ est associé à une case à cocher :Cochée = Vrai/Oui/Actif.non cochée = Faux/Non/Inactif.

Saisie de champs mémosTapez simplement votre texte.

Saisie de champs OLECliquez dans le champ et activez la commande « Objet... » du menu « Insertion ».

ouà partir de l’application d’origine, effectuer un « Copier », revenez dans Access, sélectionnez lechamp, puis lancez la commande « Collage spécial » du menu « Edition ».

Page 96: Access Initiation

MicroSoft Access Version 7.0 Page : 91

Saisie d'un nouvel enregistrement

Appelez la commande « Ajout » du menu « Enregistrements ». Access ne vous affiche alors, queles nouveaux enregistrements. Si vous désirez de nouveau tous les enregistrements de la table,appelez la commande « Supprimer le filtre/Tri » du menu « Enregistrements ».

Sélection d'un champ

1. Cliquez sur l'étiquette contenant le nom du champ.

1

Sélection de l'enregistrement affiché

1. Cliquez dans la colonne gris clair à, gauche du formulaire, une fois sélectionnée cette colonnedevient gris foncé.

1

Page 97: Access Initiation

Page : 92 MicroSoft Access Version 7.0

Suppression d'enregistrement

1. Sélectionnez l'enregistrement de la manière décrite au-dessus.2. Activez la commande « Supprimer » du menu « Edition ».

2

1

Suppression d'un formulaire

1. Pour supprimer un formulaire, sélectionnez le formulaire en activant la commande « Sélectionnerle formulaire » du menu « Edition ».

2. Activez la commande « Supprimer » du menu « Edition ».

1

2

Page 98: Access Initiation

MicroSoft Access Version 7.0 Page : 93

Les filtres

Les filtres sont des critères de sélection appliqués à la table principale d'un formulaire. Ilspermettent également de trier la base de données dans un ordre et sur un champ précis. Pourpouvoir utiliser les filtres il faut être en mode « Formulaire » ou en mode « Feuille de données ».

Filtrer par Sélection

1. Ouvrer le formulaire en mode « Feuille de données ».2. Sélectionner dans la feuille de données la valeur qui doit servir de critère.

3. Activez la commande « Filtrer par sélection » du menu « Enregistrements » ou cliquez sur .

1

2

3

4. Vous ne voyez que les enregistrements correspondant au critère défini précédemment.

Page 99: Access Initiation

Page : 94 MicroSoft Access Version 7.0

Filtrer par Formulaire

1. Sélectionnez la commande « Filtrer par formulaire » dans le menu « Enregistrements » ou

cliquez sur .

1

2. Dans la fenêtre ci-dessous, cliquez sous le ou les champs qui vont vous servir de critère.3. Dans la liste déroulante, sélectionnez un critère.

2

3

2

4. Activez le filtre.

4

Page 100: Access Initiation

MicroSoft Access Version 7.0 Page : 95

Filtrer par Filtre/Tri Avancé

Si vos critères de tri sont très compliqués, vous pouvez utiliser cette dernière solution.1. Dans le menu « Enregistrements », exécutez la commande « Filtre/Tri avancé ».

2. Une fenêtre « Requête »s'ouvre.

3. Dans la ligne « Champ » faites glisser le nom des champs qui vont servir de critères de filtrage.4. Dans la ligne « tri », définissez l'ordre de tri.5. Dans la ligne « Critères » entrez les critères de sélection.

6. Lorsque la définition de vos critères est terminée, cliquez sur pour revenir en mode

visualisation des enregistrements. Les critères seront appliqués à la table en cours.

Appuyez de nouveau sur ce bouton pour désactiver le filtre.

Page 101: Access Initiation

Page : 96 MicroSoft Access Version 7.0

Enregistrement d'un filtre

Lorsque vous fermez un formulaire, le filtre n'est pas enregistré. Vous pouvez, cependant,enregistrer un filtre en tant que requête si vous souhaitez vous en servir ultérieurement.

1. Choisissez la commande « Enregistrer comme une requête » dans le menu « Fichier ».2. Indiquez le nom du filtre et validez.

Utilisation d'une requête existante en tant que « Filtre »

Après avoir enregistré un filtre de formulaire en tant que requête, vous pouvez la réutiliser en tantque filtre.

Vous pouvez également utiliser toutes requêtes simples, en tant que filtre de formulaire.Pour utiliser une requête en tant que filtre, celle-ci doit répondre aux exigences suivantes:

• Elle doit être fondée sur la même table ou sur la même requête que le formulaire sur lequel vousvoulez l'utiliser.

• Elle ne doit pas inclure d'autres tables ou d'autres requêtes.• Ce doit être une requête « Sélection » ne comportant pas d'analyse croisée.• Elle ne doit pas inclure d'opérations.

1. Dans le menu « Enregistrements », exécutez la commande « Filtre/Tri avancé ».2. Activez la commande « Charger à partir d'une requête » du menu « Fichier »3. Dans la boîte de dialogue « Filtre à appliquer », sélectionnez la requête voulue et cliquez sur

« Ok ».

Page 102: Access Initiation

MicroSoft Access Version 7.0 Page : 97

LES MACROS

A quoi servent les macros ?

Une macro exécute automatiquement, une ou plusieurs tâches, appelées « actions ».Avec MicroSoft Access vous pouvez automatiser toutes les tâches routinières, ce qui optimise le

fonctionnement de votre base et diminue considérablement les risques d'erreurs.

Principaux avantages des macros :

Liaison de formulaires et d'étatsIl est fréquent de travailler simultanément sur deux formulaires. Avec une macro, vous pouvez

ajouter dans un formulaire un bouton de commande qui ouvre automatiquement le deuxième,vous pouvez également ajouter un bouton qui imprime un état.

Recherche et filtrage automatique des enregistrementsLes macros accélèrent les opérations de recherche. Vous pouvez attacher une macro à un

bouton de façon à filtrer automatiquement un sous-ensemble d'enregistrements.

Définition de la valeur d'un contrôleLes macros permettent de lier la valeur d'un contrôle au résultat d'un calcul ou à une valeur

provenant d'une autre table. Vous pouvez par exemple, utiliser une macro pour rechercherautomatiquement la valeur d'un champ, et placer cette valeur dans un contrôle du formulaire.

Vérification de la validité des donnéesLes macros sont également très appropriées au traitement et à la validation de données

spécifiques dans un formulaire. Lors d'une saisie, une macro peut très bien contrôler la validité d'unchamp et envoyer un message en cas de non-validité.

Automatisation des transferts de donnéesLes macros peuvent également être très utiles pour exporter automatiquement des données

dans un autre format de fichier.

Création d’un environnement de travail personnaliséVous pouvez créer une macro, qui ouvre automatiquement un groupe de requêtes, de

formulaires ou d'états dès, l'ouverture d'une base de données. Vous pouvez égalementpersonnaliser les barres de menus des formulaires.

Page 103: Access Initiation

Page : 98 MicroSoft Access Version 7.0

La fenêtre Macro

Liste des actions possibles Commentaires facultatifs

Description de l'action choisieArguments de l'action

La barre d'outils de la fenêtre macro

ExécuterExécuter pas à pas

"Condition"Ouverture de la colonne

"Nom de macro"Ouverture de la colonne

Insérer une ligne

Supprimer une ligne

Page 104: Access Initiation

MicroSoft Access Version 7.0 Page : 99

Création d'une macro

Pour créer une macro :

1. Dans la fenêtre « Base de données » sélectionnez l'outil « Macro »2. Cliquez sur le bouton « Nouveau »

2

1

3. Dans la colonne « Action » de la fenêtre « Macro », sélectionnez l'action qui vous convient.

3 4

5

ou3. Positionnez côte à côte la fenêtre « Base de données » et la fenêtre « Macro », comme dans

l’exemple de la page suivante.• Dans la fenêtre « Base de données », cliquez sur le bouton du type d'objet à utiliser.• Faites glisser l'objet vers une ligne vide de la colonne « Action » de la fenêtre « Macro ».

Page 105: Access Initiation

Page : 100 MicroSoft Access Version 7.0

4

5

3

• Si vous faites glisser une table, une requête, un formulaire ou un état, Access ajouteautomatiquement l'action qui ouvre l'objet.

• Si vous faites glisser une macro, Access ajoute automatiquement l'action qui exécute la macro.

4. Dans la zone « Commentaire » vous pouvez expliquer l'action.5. Complétez le cas échéant, les arguments de l'action.

Enregistrement d'une macro

Une macro doit être obligatoirement enregistrée avant d'être exécutée.

1. Choisissez « Enregistrer » du menu « Fichier ».

Exécution d'une macro

1. Cliquez sur dans la barre d'icônes, ou choisissez la commande « Exécuter » du menu

« Macro ».

Création d'un groupe de macros

Il est parfois utile de regrouper plusieurs macros en une seule. Pour ce faire, vous devez créer ungroupe de macros.

1. Créez une nouvelle macro, qui contiendra plusieurs macros.2. Cliquez sur dans la barre d'icônes ou activez la commande « Nom de macro » du menu

« Affichage ».3. Dans la colonne « Nom de macro », tapez le nom des macros.4. Dans la colonne « Action », programmez les actions, comme pour une macro ordinaire.

Une macro peut contenir une ou plusieurs actions.

Page 106: Access Initiation

MicroSoft Access Version 7.0 Page : 101

Colonne supplémentaireChaque nom est le début d'une macro

Nom du groupede macros

5. Choisissez « Enregistrer » du menu « Fichier » pour enregistrer le groupe de macros.

Comment faire référence à une macro faisant partie d'un groupe.

Pour appeler une macro faisant partie d'un groupe de macros, on donne le nom du groupe, etle nom de la macro, les deux noms étant séparés par un point.

Dans l'exemple ci-dessus, nous avons les macros :Ouvrir.Réalisateurs, Ouvrir.Acteurs, Ouvrir.Saisie etc..

Référence aux noms de contrôles dans les expressions

Il est souvent nécessaire de se référer à la valeur d'un contrôle dans une macro. Les expressionsfaisant référence aux contrôles doivent respecter la syntaxe suivante.

Formulaires!Nomdeformulaire!nomdecontrôleEtat!nomd'état!nomdecontrôle

Si le nom du formulaire ou du contrôle comporte un espace, vous devez mettre le nom entrecrochets:

Formulaires!Fournisseurs![n° de fournisseur]

Dans l'exemple ci-dessus on fait référence au contrôle « n° de fournisseur » du formulaire« Fournisseurs ».

Page 107: Access Initiation

Page : 102 MicroSoft Access Version 7.0

Expressions conditionnelles dans les macros

Il peut être utile d'exécuter une action ou une suite d'actions seulement si une conditionparticulière est remplie.

Une condition est une expression logique, la macro suit un chemin ou un autre selon que lacondition est vraie ou fausse.

Pour ajouter une condition à une macro :

1. Cliquez sur dans la barre d'icônes ou activez la commande « Condition » du menu

« Affichage ».

Expression conditionnelle ces 2 actions seront exécutéessi la condition est vraie

Points de suite

2. Tapez une expression conditionnelle sur la ligne et la colonne appropriée.3. Sélectionnez dans la colonne « Action », l'action à exécuter si la condition est vraie.

Si vous avez plus d'une action à exécuter ajoutez 3 points dans la colonne « Condition ».

Mise au point d'une macro

1. Ouvrez la macro.

2. Cliquez sur dans la barre d'icônes ou choisissez « Pas à pas » dans le menu « Macro ».

3. Exécutez la macro normalement en cliquant sur

dans la barre d'icônes.

Page 108: Access Initiation

MicroSoft Access Version 7.0 Page : 103

Choisissez :

Pas à Pas Exécute l'action affichée.

Arrêter Interrompt l'exécution.

Continuer Désactive le mode "Pas à Pas". Si vous êtes dans un groupe de macro,Access exécute le reste de la macro, mais reprend le mode "Pas à Pas"lorsqu'il atteint une nouvelle macro.

Les macros dans les formulaires

Lorsque vous travaillez dans un formulaire, Access reconnaît certaines actions en tantqu'événements. Le déplacement d'un enregistrement à un autre ,ou un clic sur un contrôle sontdes événements.

Vous avez la possibilité d'exécuter une macro en réponse à ces événements.

Liste des événements de formulaire et les propriétés pour y répondre

Evénement Propriété Utilisée pourOuverture d'un formulaire Sur Ouverture A l'ouverture d'un formulaire, mais avant

l'affichage du 1er enregistrement.

Activation d'un enregistrement Sur activation Avant qu'un enregistrement ne devienne actif(à l'ouverture du formulaire ou au passage del'enregistrement suivant)

Insertion d'un nouvelenregistrement

Sur insertion Lorsque vous commencez à taper ou quevous définissez la valeur d'un contrôle dans unnouvel enregistrement.

Modification des données dansun enregistrement

Avant MAJ

après MAJ

Après avoir quitté un enregistrement modifié etavant ou après la sauvegarde desmodifications. Cet événement s'applique auxenregistrements existants et nouveaux.

Suppression d'un enregistrement Sur suppression Lorsqu'il y a tentative de suppression, maisavant qu'il ne soit effacé.

Fermeture d'un formulaire Sur fermeture Au moment de la fermeture d'un formulaire,mais avant sa disparition de l'écran.

Sélection d'un contrôle Sur entrée Lorsque vous passez à un contrôle, mais justeavant son activation.

Pression sur un bouton decommande

Sur pression Au moment du clic.

Modification des données dansun contrôle

Avant MAJ

Après MAJ

Après avoir quitté un contrôle modifié et avantou après qu'Access n'accepte lesmodifications.

Double clic sur un contrôle Sur double clic Lorsque vous cliquez 2 fois sur un contrôle.

Sortie d'un contrôle Sur sortie Lorsque vous tentez de quitter un contrôle,mais avant que celui-ci ne devienne inactif.

Page 109: Access Initiation

Page : 104 MicroSoft Access Version 7.0

Attacher une macro à un formulaire ou à un contrôle

1. Dans un formulaire en mode création, sélectionnez le formulaire en activant la commande« Sélectionner le formulaire » du menu « Edition ».Affichez la « Feuille de propriétés » en activant la commande « Propriétés » du menu« Affichage ».

ou

1. Pour un contrôle, sélectionnez ce contrôle et activez la commande « Propriétés » du menu« Affichage ».

3

2

2. Cherchez dans la fenêtre événement auquel vous désirez attacher une macro.3. Sélectionnez dans la liste des macros celle qui vous convient, ou tapez directement le nom de

la macro. Si cette macro fait partie d'un groupe de macros, sélectionnez le nom du groupe puisajoutez un point et le nom de la macro.

exemple: MaMacro ou MomGroupe.Macro1

Page 110: Access Initiation

MicroSoft Access Version 7.0 Page : 105

Création d'un bouton de commande qui déclenche une macro

1. Ouvrez le formulaire qui doit contenir le bouton.2. Dans la fenêtre « Base de données » cliquez sur le bouton « Macro » de façon à afficher la liste

des macros.3. Faites glisser la macro dans le formulaire, Access crée le bouton.

3

2

Filtrage des enregistrements

Si vous appliquez fréquemment des filtres différents à un formulaire, vous pouvez automatiser leprocessus à l'aide de macros, déclenchées par des boutons.

L'action qui permet l'application automatique d'un filtre se nomme « AppliquerFiltre ».

1. Créez une nouvelle macro2. Dans la colonne « Action » choisissez l'action « AppliquerFiltre ».

3. Dans « Nom du filtre » tapez le nom du filtre, si vous avez un filtre enregistré en tant que requête.ou

3. Dans « Condition Where » tapez le critère de sélection (Ex: [MARQUE] = "Citroën")4. Enregistrez la macro, puis définissez le bouton, comme nous l'avons vu précédemment.

Page 111: Access Initiation

Page : 106 MicroSoft Access Version 7.0

Création d'une barre de menus personnalisée attaché un formulaire

Vous pouvez créer une barre de menus personnalisée, comprenant vos propres menus attacherà un formulaire. C'est une manière de personnaliser ses formulaires.

Exemple :Nous voulons créer une barre de menus comme ceci :

1. En mode « Création », sélectionnez le formulaire.2. Affichez les propriétés du formulaire.3. Cliquez sur le générateur de menus.

3

4. Sélectionner « Barre de menu vide » pour créer une nouvelle barre de menu, ou sélectionnezune barre de menu Access pour ajouter vos menus à une barre existante.

5. Cliquez sur « Ok ».

4

5

6. Tapez le libellé du menu ou du sous-menu.7. Déterminez le niveau. (1er niveau c’est le nom du menu, les autres niveaux sont les commandes

du menu.

Page 112: Access Initiation

MicroSoft Access Version 7.0 Page : 107

8. Cliquez sur « Suivant » pour entrer un autre menu ou sous-menu.9. Pour chaque élément de sous-menu, affectez une action.10. Pour chaque action, affectez les arguments, (nom de la macro, ou de la procédure).

6

7

8

9

10

11. Lorsque vous avez terminé, cliquez sur « Ok ».

Remarque :Si vous avez la curiosité d’aller voire dans les macros, vous verrez qu’access à créé autant

nouvelles macros que de menus, plus une.Dans notre exemple, nous avons :

• Une macro qui contient les éléments du 1er menu, ainsi que les actions devant êtredéclenchées par chaque élément du menu.

• Une deuxième qui contient les éléments du 2ème menu, ainsi que les actions devant êtredéclenchées par chaque élément du menu.

• Et enfin, une dernière macro, qui va créer réellement la barre de menu.

Page 113: Access Initiation

Page : 108 MicroSoft Access Version 7.0

Pour affecter une macro à une combinaison de touches

Vous pouvez affecter une série d'actions à une touche ou à une combinaison de touchesparticulières. Chaque série d'actions est placée dans une macro, à l'intérieur d'un groupe demacros spéciales. Lorsque vous appuyez sur la touche ou la combinaison de touches, MicroSoftAccess exécute les actions de la macro.

Le nom du groupe de macros contenant ces macros doit être « AutoKeys ».

1. Créez une macro.2. Tapez la combinaison de touches dans la colonne « Nom de macro ».

Utilisez une des combinaisons de touches listées dans le tableau de la page suivante.

4

3

2

5

3. Dans la colonne Action, sélectionnez la ou les actions qui seront exécutées sur pression de cettecombinaison de touches.Pour sélectionner plusieurs actions, n'entrez rien sur les lignes de la colonne « Nom de macro »qui suivent la combinaison de touches.

4. Pour créer plusieurs raccourcis, placez le pointeur sur les lignes d'action suivantes et répétez lesétapes 2 et 3.

5. Enregistrez le groupe de macros sous le nom AutoKeys.

Syntaxe EnvoiTouches Combinaison de touches

^A ou ^4 CTRL + toute lettre ou chiffre{F1} Toute touche de fonction^{F1} CTRL + toute touche de fonction+{F1} MAJ + toute touche de fonction{INSERTION} Touche INS^{INSERTION} CTRL + touche INS+{INSERTION} MAJ + touche INS{SUPPRESSION} ou {SUPPR} Touche SUPPR^{SUPPRESSION} ou ^{SUPPR} CTRL + touche SUPPR+{SUPPRESSION} ou +{SUPPR} MAJ + touche SUPPR

Page 114: Access Initiation

MicroSoft Access Version 7.0 Page : 109

Remarques

Si vous affectez une série d'actions à une combinaison de touches utilisée par MicroSoft Access(CTRL+C pour la commande Copier, par exemple), ces nouvelles actions remplaceront celles quiont été affectées à la combinaison de touches MicroSoft Access dans toutes les fenêtres de labase de données active. Les rubriques d'aide portant sur les fenêtres « Base de données », « Table »,« Requête », « Formulaire », « Etat », « Macro » et « Module » décrivent les combinaisons de touchesMicroSoft Access.

La macro « AutoExec »

La macro « AutoExec », si elle existe est exécutée automatiquement par MicroSoft Access dèsl'ouverture de la base de données. Elle est très utile pour lancer une application « base dedonnées ».

Une application « Base de données » est un ensemble d'objets (Formulaires, états, requêtes,barre de menus, macros et modules) adaptés à des besoins particuliers et formant un touthomogène.

Pour créer la macro AutoExec :

1. Créez la macro.2. Ajoutez les actions à exécuter.3. Enregistrez-la sous le nom « AutoExec ».

Page 115: Access Initiation

Page : 110 MicroSoft Access Version 7.0

Liste des actions utilisables dans une macro

Les pages qui suivent décrivent succinctement les actions qui sont accessibles à partir de lafenêtre "Macro", pour plus de détails, utilisez l'aide en ligne :

Pour activez l'aide en ligne :

1. Sélectionnez l'action dans le menu déroulant.2. Appuyez sur la touche F1.

ActualiserMet à jour les données d'un contrôle spécifié dans l'objet actif en actualisant la source de la

liste.

Nom contrôle Nom du contrôle que vous voulez mettre à jour. Utilisez seulement le nom du contrôleet non la syntaxe complète (Formulaires!nomformulaire!nomcontrôle). Laissez cetargument vierge si vous voulez actualiser la source de l'objet actif. Si l'objet actif estune feuille de données ou une feuille de réponses dynamique de requête, l'argumentdoit obligatoirement rester vierge.

AfficherTousEnregSupprime tout filtre appliqué du formulaire actif et affiche tous les enregistrements de la table ou

de la requête source du formulaire.

AgrandirAgrandit la fenêtre active de façon à ce qu'elle remplisse la fenêtre MicroSoft Access.

AjouterMenuAjoute un menu déroulant à une barre de menus personnalisée dans un formulaire. Pour créer

une barre de menus personnalisée, procédez ainsi :

Nom menu Nom du menu déroulant à ajouter à la barre de menus personnalisée. Argumentobligatoire.

Nom macro menu Nom du groupe de macros qui contient les macros des commandes du menu.Argument obligatoire.

Texte barre état Texte à afficher dans la barre d'état lorsque le menu est sélectionné.

AnnulerEvénementAnnule l'événement qui a déclenché l'exécution de la macro contenant cette action. La macro

est spécifiée par une propriété d'événement telle que AvantMAJ, SurOuverture, SurFermeture, ouSurImpression.

AppliquerFiltreApplique un filtre, une requête ou une clause WHERE SQL à un formulaire ou à un état pour filtrer

ou trier les enregistrements de la table ou de la requête source de ce formulaire ou de cet état. Ence qui concerne les états, vous ne pouvez utiliser cette action que dans une macro attachée à lapropriété SurOuverture de l'état concerné.

Nom filtre Nom d'un filtre ou d'une requête qui trie les enregistrements du formulaire ou de l'état.Vous pouvez entrer le nom d'une requête existante ou d'un filtre qui a été enregistrécomme requête.

Condition Where Clause WHERE SQL ou expression valide qui filtre l'affichage des enregistrements duformulaire ou de l'état.

ArrêtMacroArrête la macro en cours d'exécution

Page 116: Access Initiation

MicroSoft Access Version 7.0 Page : 111

AtteindreContrôlePlace la sélection sur le champ ou le contrôle spécifié dans la feuille de données du formulaire,

dans celle de la table, dans la feuille de réponses dynamique de la requête ou dans le formulaireouvert.

Nom contrôle Nom du champ ou du contrôle qui doit contenir la sélection. Cet argument estobligatoire.

AtteindreEnregistrementActive l'enregistrement spécifié dans une table, une requête, une feuille de réponses

dynamique ou un formulaire ouvert.

Type objet Type de l'objet dans lequel se trouve l'enregistrement que vous voulez activer. Vouspouvez sélectionner Table, Requête ou Formulaire dans la liste déroulante de cetargument, dans la section Arguments de l'action de la fenêtre Macro. Laissez cetargument vierge pour sélectionner l'objet actif.

Nom objet Nom de l'objet dans lequel se trouve l'enregistrement que vous voulez activer. La listedéroulante affiche tous les objets se trouvant dans la base de données en cours quicorrespondent au type sélectionné avec l'argument Type objet. Si vous laissez Typeobjet vierge, laissez aussi Nom objet vierge.

Enregistrement Enregistrement à activer. Sélectionnez Précédent, Suivant, Premier, Dernier, Atteindreou Nouveau dans la liste déroulante. L'option par défaut est Suivant.

Référence Nombre entier ou expression (précédée d'un signe égal) égale à un nombre entier.Cet argument indique quel enregistrement activer. Vous pouvez utiliser Référence dedeux façons :

Lorsque l'argument Enregistrement est réglé sur Suivant ou Précédent, MicroSoft Access se déplace dunombre d'enregistrements spécifié par Référence vers la fin ou vers le début des enregistrements.

Lorsque l'argument Enregistrement est réglé sur Atteindre, MicroSoft Access affiche l'enregistrement dont lenuméro est égal au numéro de référence. Le numéro de l'enregistrement apparaît dans la zone Enr: en basde l'écran.

AtteindrePagePlace la sélection dans le formulaire actif sur le premier champ de la page spécifiée.

Numéro page Numéro de la page dans laquelle vous voulez placer la sélection. Cet argument estobligatoire.

Droite Position horizontale du coin supérieur gauche de la page mesurée à partir du bordgauche de la fenêtre qui la contient.

Bas Position verticale du coin supérieur gauche de la page mesurée à partir du bordsupérieur de la fenêtre qui la contient.

AvertissementsActive ou désactive les messages système.

Avertissementsactifs

Indique si les messages système sont affichés ou non. Sélectionnez Oui ou Non. Leparamétrage par défaut est Non.

BipEmet un signal sonore dans le haut-parleur de l'ordinateur.

Page 117: Access Initiation

Page : 112 MicroSoft Access Version 7.0

BoîteMessageAffiche une boîte de messages contenant un avertissement ou un message instructif.

Message Texte de la boîte de messages. Vous pouvez taper un maximum de 255 caractères ouentrer une expression (précédée du signe égal (=)).

Bip Indique si le haut-parleur de votre ordinateur émet un seul signal sonore lorsque lemessage s'affiche. Sélectionnez Oui pour émettre un bip et Non si vous ne voulez pasde signal sonore. Le paramétrage par défaut est Oui.

Pictogramme Type de boîte de messages. Chaque type est symbolisé par une icône différente (voirle tableau ci-dessous). Sélectionnez Aucun, Stop, Point d'interrogation, Pointd'exclamation ou Information. Le paramétrage par défaut est Aucun.

Titre Texte affiché dans la barre de titre de la boîte de messages, par exemple "ValidationNo d'identité client". Si vous laissez cet argument vierge, le texte affiché est"MicroSoft Access".

Le paramétrage et les icônes de l'argument sont les suivants :

Type Icône

Aucun Pas d'icôneStopPoint d'interrogationPoint d'exclamationInformation

CopierObjetCopie l'objet de la base de données sélectionné dans une autre base de données MicroSoft

Access ou dans la même base de données sous un autre nom.

Base destination Chemin et nom de fichier valides de la base de données destination. Laissez cetargument vierge pour sélectionner la base de données en cours.

Nouveau nom Nouveau nom de l'objet. Si vous copiez l'objet dans une autre base de données,laissez cet argument vierge pour conserver son nom d'origine.

DéfinirValeurDéfinit la valeur d'un champ, d'un contrôle ou d'une propriété MicroSoft Access dans un

formulaire, une feuille de données de formulaire ou un état.

Elément Nom du champ, du contrôle ou de la propriété dont vous voulez définir la valeur.Utilisez la syntaxe complète pour faire référence à cet élément, telle queNomDeChamp (pour un champ dans un formulaire ou un état depuis lequel lamacro a été appelée) ou Formulaires!NomFormulaire!NomDeChamp. Cet argumentest obligatoire.

Expression Expression utilisée par MicroSoft Access pour définir la valeur de cet élément. Utiliseztoujours la syntaxe complète pour faire référence à n'importe quel objet dansl'expression. Pour augmenter, par exemple, la valeur d'un champ Salaire de 10% dansun formulaire Employés, utilisez Formulaires!Employés!Salaire * 1.1. Argumentobligatoire.

DéplacerDimensionnerDéplace ou redimensionne la fenêtre active.

Droite Nouvelle position horizontale du coin supérieur gauche de la fenêtre mesurée à partirdu bord gauche de la fenêtre qui la contient.

Bas Nouvelle position verticale du coin supérieur gauche de la fenêtre mesurée à partirdu bord supérieur de la fenêtre qui la contient.

Largeur Nouvelle largeur de la fenêtre.Hauteur Nouvelle hauteur de la fenêtre.

Page 118: Access Initiation

MicroSoft Access Version 7.0 Page : 113

EchoSpécifie si MicroSoft Access met à jour l'écran de l'ordinateur lors de l'exécution d'une macro.

Vous pouvez utiliser cette action pour masquer ou afficher les résultats d'une macro en coursd'exécution.

Echo actif Sélectionnez Oui pour activer l'écho ou Non pour le désactiver. Le paramétrage pardéfaut est Oui.

Texte barre état Texte à afficher dans la barre d'état lorsque l'écho est désactivé, par exemple,"Macro en cours d'exécution".

EnvoiTouchesEnvoie des frappes de touches directement à MicroSoft Access ou à une application MicroSoft

Windows active.

Touches Touches que vous voulez faire traiter par MicroSoft Access ou une autre application.Vous pouvez taper un maximum de 255 caractères. Cet argument est obligatoire.

Attendre Précise si la macro doit s'interrompre jusqu'à ce que les frappes de touches soienttraitées. Sélectionnez Oui ou Non. Le paramétrage par défaut est Oui.

ExécuterApplicationExécute une application MicroSoft Windows ou MS-DOS, telle que MicroSoft Excel, MicroSoft

Word pour Windows ou MicroSoft PowerPoint, à partir de MicroSoft Access.

Ligne commande Ligne de commande utilisée pour démarrer l'application (y compris le nom duchemin d'accès et tout autre paramètre nécessaire, tel que les commutateurs quiexécutent l'application dans un mode particulier). Cet argument est obligatoire.

ExécuterCodeExécute une procédure Function d'Access Basic.

Nom fonction Nom de la procédure Function d'Access Basic à exécuter. Les arguments de lafonction doivent être entre parenthèses. Cet argument est obligatoire.

ExécuterElémentMenuExécute une commande de menu MicroSoft Access

Barre menus Nom de la barre de menus qui contient la commande que vous voulez exécuter. Laliste déroulante de cet argument, dans la section Arguments de l'action de la fenêtreMacro, indique les différents modes dans lesquels les barres de menus apparaissent.Cet argument est obligatoire.

Nom menu Nom du menu qui contient la commande à exécuter. La liste déroulante indique tousles menus de la barre que vous avez sélectionnée avec l'argument Barre menus. Cetargument est obligatoire.

Commande Commande à exécuter. La liste déroulante indique toutes les commandes du menuque vous avez sélectionné avec l'argument Nom menu. Cet argument estobligatoire.

Commandesecondaire

Commande secondaire à exécuter. Valable que si la commande visée est dotéed'un sous-menu.

ExécuterMacroExécute une macro, qui peut faire partie d'un groupe de macros.

Nom macro Nom de la macro à exécuter. La liste déroulante de la section Arguments de l'actiondans la fenêtre Macro, affiche toutes les macros (et tous les groupes de macros) dela base de données en cours. Entrez GroupeMacro.NomMacro pour exécuter unemacro particulière d'un groupe de macros. Cet argument est obligatoire.

Répéter compte Nombre d'exécutions maximum de la macro. Si vous laissez cet argument vierge (ainsique l'argument Répéter expression), la macro n'est exécutée qu'une seule fois.

Répéterexpression

Expression dont le résultat est vrai ou faux. L'exécution de la macro est interrompue sil'expression est fausse. L'expression est évaluée chaque fois que la macro estexécutée.

Page 119: Access Initiation

Page : 114 MicroSoft Access Version 7.0

ExécuterSQLExécute une requête action MicroSoft Access en utilisant l'instruction SQL correspondante.

Instruction SQL Instruction SQL pour la requête action que vous voulez exécuter et dont la longueurdoit représenter 256 caractères maximum. Cet argument est obligatoire.

FermerFerme la fenêtre MicroSoft Access spécifiée ou la fenêtre active si aucune fenêtre n'est

indiquée.

Type objet Type de l'objet dont vous voulez fermer la fenêtre. Sélectionnez Table, Requête,Formulaire, Etat, Macro ou Module dans la liste déroulante de cet argument, dans lasection Arguments de l'action de la fenêtre Macro. Pour sélectionner la fenêtreactive, laissez cet argument vierge.

Nom objet Nom de l'objet à fermer. La liste déroulante comprend tous les objets de la base dedonnées du type sélectionné au moyen de l'argument Type objet. Si vous laissez Typeobjet vierge, laissez aussi Nom objet vierge.

ImprimerImprime l'objet activé dans la base de données ouverte. Vous pouvez imprimer des feuilles de

données, des états et des formulaires.

Imprimer Plage des pages à imprimer. Vous pouvez imprimer l'objet entier (Toutes), la partie del'objet qui est sélectionnée (Sélection) ou une plage de pages (Pages) que vousspécifiez à l'aide des arguments De page et A page. Le paramétrage par défaut estToutes.

De page Première page à imprimer. L'impression commence en haut de cette page. Cetargument est obligatoire si vous sélectionnez Pages dans l'argument Imprimer.

A page Dernière page à imprimer. L'impression s'arrête en bas de cette page. Cet argumentest obligatoire si vous sélectionnez Pages dans l'argument Imprimer.

Qualité impression Qualité de l'impression. Vous pouvez sélectionner Haute, Moyenne, Basse ou Brouillon.Plus la qualité est basse, plus l'impression est rapide. Le paramétrage par défaut estHaute.

Copies Nombre de copies à imprimer. Le paramétrage par défaut est 1.Copies triées Sélectionnez Oui pour trier les copies imprimées ou Non si vous n'avez pas besoin

qu'elles soient triées. L'impression peut être plus rapide si l'argument est paramétré surNon. Le paramétrage par défaut est Oui.

OuvrirEtatOuvre un état en mode Création ou en mode Aperçu avant impression ou imprime l'état. Vous

pouvez aussi filtrer les enregistrements imprimés dans l'état.

Nom état Nom de l'état à ouvrir. La liste déroulante de cet argument, dans la sectionArguments de l'action de la fenêtre Macro indique tous les états de la base dedonnées en cours. Cet argument est obligatoire.

Affichage Mode dans lequel l'état est ouvert. Sélectionnez Impression directe (pour imprimertout de suite l'état), Création ou Aperçu avant impression dans la liste déroulante. Leparamétrage par défaut est Aperçu avant impression.

Nom filtre Filtre qui limite ou trie les enregistrements de l'état. Vous pouvez entrer le nom d'unerequête existante ou d'un filtre enregistré comme requête. Cependant, la requêtedoit inclure tous les champs dans l'état que vous ouvrez, ou elle doit avoir étépréalablement enregistrée sans que l'option Restreindre aux champs sélectionnés dela boîte de dialogue Propriétés de la requête ait été sélectionnée.

Condition Where Clause SQL WHERE ou expression valide utilisée par MicroSoft Access poursélectionner des enregistrements dans la table ou la requête source de l'état. Si voussélectionnez un filtre avec l'argument Nom filtre, MicroSoft Access applique cetteClause WHERE au filtre.

Page 120: Access Initiation

MicroSoft Access Version 7.0 Page : 115

Pour ouvrir un état dans lequel la valeur d'un contrôle est égale à celle d'un contrôle dans un formulaire,utilisez la syntaxe suivante :

[nomcontrôle dans un formulaire ouvert] =Forms!NomFormulaire![nomcontrôle dans un formulaire ouvert]Par opposition aux autres arguments de l'action, si vous utilisez seulement le nom du contrôle dans

l'expression de cet argument, il se rapporte au contrôle de l'état qui est ouvert et non au formulaire ou à l'étatqui a appelé la macro.

OuvrirFormulaireOuvre un formulaire en mode Formulaire, en mode Création, en mode Aperçu avant impression

ou en mode Feuille de données. Vous pouvez sélectionner des modes de saisie de données et defenêtre pour le formulaire et filtrer les enregistrements affichés par le formulaire.

Nom formulaire Nom du formulaire à ouvrir. La liste déroulante de cet argument, dans la sectionArguments de l'action de la fenêtre Macro, indique tous les formulaires de la base dedonnées en cours. Cet argument est obligatoire.

Affichage Mode dans lequel il faut ouvrir le formulaire. Sélectionnez Formulaire, Création,Aperçu avant impression ou Feuille de données dans la liste déroulante. Leparamétrage par défaut est Formulaire.

Nom filtre Filtre qui limite ou trie les enregistrements du formulaire. Vous pouvez entrer le nomd'une requête existante ou d'un filtre enregistré comme requête. Cependant, larequête doit inclure tous les champs dans le formulaire que vous ouvrez, ou elle doitavoir été préalablement enregistrée sans que l'option Restreindre aux champssélectionnés de la boîte de dialogue Propriétés de la requête ait été sélectionnée.

Condition Where Clause SQL WHERE ou expression valide utilisée par MicroSoft Access poursélectionner les enregistrements d'une table source ou d'une requête. Si voussélectionnez un filtre à l'aide de l'argument Nom filtre, MicroSoft Access appliquecette Clause WHERE au filtre. Pour ouvrir un formulaire dans lequel la valeur d'un deses contrôles est égale à celle d'un contrôle dans un autre formulaire, utilisez lasyntaxe suivante :[nomducontrôle dans le formulaire ouvert] =Forms!nomFormulaire![nomducontrôledans le formulaire ouvert]Par opposition aux autres arguments de l'action, le nom d'un contrôle utilisé seul dansl'expression d'un argument se rapporte à un contrôle du formulaire qui est ouvert etnon au formulaire qui a appelé la macro.

Mode données Mode de saisie des données pour le formulaire. Ne s'applique qu'aux formulairesouverts en mode Formulaire ou en mode Feuille de données. Sélectionnez Ajout(l'utilisateur peut ajouter de nouveaux enregistrements, mais n'est pas autorisé àmodifier des enregistrements existants), Modification (l'utilisateur peut modifier lesenregistrements existants et en ajouter de nouveaux) ou Lecture seule (l'utilisateurn'est autorisé qu'à examiner les enregistrements). Le paramétrage par défaut estModification.

Mode fenêtre Mode d'ouverture du formulaire. Sélectionnez Standard (le formulaire est ouvert dansle mode défini par ses propriétés), Masquée (le formulaire est masqué), Icône (leformulaire est ouvert sous forme d'icône en bas de l'écran) ou Boîte de dialogue (lespropriétés FenModale (Modal) et FenIndépendante (PopUp) du formulaire sontparamétrées sur Oui). Le paramétrage par défaut est Standard.

Page 121: Access Initiation

Page : 116 MicroSoft Access Version 7.0

OuvrirRequêteOuvre une requête Sélection ou Analyse Croisée en mode Feuille de données, en mode

Création ou en mode Aperçu avant impression. Exécute une requête action. Vous pouvez aussisélectionner un mode de saisie des données pour la requête.

Nom requête Nom de la requête à ouvrir. La liste déroulante de cet argument, dans la sectionArguments de l'action de la fenêtre Macro, indique toutes les requêtes de la base dedonnées en cours.

Affichage Mode dans lequel vous ouvrez la requête. Sélectionnez Feuille de données, Créationou Aperçu avant impression dans la liste déroulante. Le paramétrage par défaut estFeuille de données.

Mode données Mode de saisie des données pour la requête. Ne s'applique qu'aux requêtes ouvertesen mode Feuille de données. Sélectionnez Ajout (l'utilisateur peut ajouter denouveaux enregistrements mais n'est pas autorisé à modifier des enregistrementsexistants), Modification (l'utilisateur peut modifier les enregistrements existants et enajouter de nouveaux) ou Lecture seule (l'utilisateur n'est autorisé qu'à examiner lesenregistrements). Le paramétrage par défaut est Modification.

OuvrirTableOuvre une table en mode Feuille de données, en mode Création ou en mode Aperçu avant

impression. Vous pouvez aussi sélectionner un mode de saisie des données pour la table.

Nom table Nom de la table à ouvrir. La liste déroulante de cet argument, dans la sectionArguments de l'action de la fenêtre Macro indique toutes les tables de la base dedonnées en cours. Cet argument est obligatoire.

Affichage Mode dans lequel la table est ouverte. Sélectionnez Feuille de données, Création ouAperçu avant impression dans la liste déroulante. Le paramétrage par défaut estFeuille de données.

Mode données Mode de saisie des données pour la table. Ne s'applique qu'aux tables ouvertes enmode Feuille de données. Sélectionnez Ajout (l'utilisateur peut ajouter de nouveauxenregistrements mais n'est pas autorisé à modifier des enregistrements existants),Modification (l'utilisateur peut modifier les enregistrements existants et en ajouter denouveaux) ou Lecture seule (l'utilisateur n'est autorisé qu'à examiner lesenregistrements). Le paramétrage par défaut est Modification.

QuitterQuitte MicroSoft Access. Vous avez le choix entre plusieurs options pour enregistrer les objets de

la base de données.

Options Spécifie la façon dont les objets non enregistrés sont traités lorsque vous quittezMicroSoft Access. Sélectionnez Prompt pour enregistrer toutes les modifications endemandant confirmation. Sélectionnez Enregistrer tout pour enregistrer tous les objetssans demander confirmation. Sélectionnez Quitter pour quitter sans enregistrer lesobjets. Le paramètre par défaut est Enregistrer tout.

RedessinerObjetAccomplit les mises à jour en attente des écrans pour un objet de base de données spécifié ou

pour l'objet actif de la base de données si aucun objet n'est spécifié. Ces mises à jour comprennenttout calcul n'ayant pas été effectué en ce qui concerne les contrôles de l'objet.

Type objet Type de l'objet à redessiner. Sélectionnez Table, Requête, Formulaire, Etat, Macro ouModule dans la liste déroulante de la section Arguments de l'action de la fenêtreMacro. Laissez cet argument vierge pour sélectionner l'objet actif.

Nom objet Nom de l'objet à redessiner. La liste déroulante indique tous les objets de la base dedonnées ayant le type sélectionné avec l'argument Type objet. Si vous laissezl'argument Type objet vierge, laissez aussi cet argument vierge.

Page 122: Access Initiation

MicroSoft Access Version 7.0 Page : 117

RéduireRéduit la fenêtre active en icône en bas de la fenêtre MicroSoft Access.

RenommerRenomme l'objet de la base de données sélectionné. Cet objet doit être sélectionné dans la

fenêtre Base de données.

Nouveau nom Nouveau nom de l'objet de la base de données sélectionné. Cet argument estobligatoire.

RestaurerRedonne à une fenêtre agrandie ou réduite sa taille précédente.

SablierTransforme le pointeur de la souris en sablier pendant l'exécution d'une macro.

Sablier actif Sélectionnez Oui pour afficher le sablier, Non pour afficher le pointeur normal. Leparamètre par défaut est Oui.

SélectionnerObjetSélectionne l'objet de la base de données spécifié.

Type objet Type de l'objet de la base de données à sélectionner. Sélectionnez Table, Requête,Formulaire, Etat, Macro ou Module dans la liste déroulante de la section Argumentsde l'action de la fenêtre Macro. Cet argument est obligatoire.

Nom objet Nom de l'objet à sélectionner. La liste déroulante indique tous les objets de la base dedonnées ayant le type sélectionné avec l'argument Type objet. Cet argument estobligatoire.

Dans fenêtre Base Détermine si MicroSoft Access sélectionne l'objet dans la Fenêtre Base de données ounon. Sélectionnez Oui ou Non dans la liste déroulante. Le paramétrage par défaut estNon.

TransférerBaseImporte ou exporte des données entre la base de données MicroSoft Access en cours et une

autre base de données. Vous pouvez aussi attacher une table à la base de données MicroSoftAccess en cours depuis une autre base de données. Lorsqu'une table est attachée, vous pouvezaccéder aux données de la table alors que la table elle-même reste dans une autre base dedonnées.

Type transfert Type du transfert à effectuer. Sélectionnez Importation, Exportation ou Attache dansla liste déroulante de la section Arguments de l'action de la fenêtre Macro. Leparamétrage par défaut est Importation.

Type base Type de la base de données à partir de laquelle importer, vers laquelle exporter, ou àlaquelle attacher une table. Vous pouvez sélectionner MicroSoft Access ou un desautres types de bases de données dans la liste déroulante. Voir la descriptioncomplète des bases de données disponibles dans la rubrique de l'Aide sur lacommande Importer ( menu Fichier). Le type par défaut est MicroSoft Access.

Nom base Nom de la base de données à partir de laquelle importer, dans laquelle exporter ou àlaquelle attacher une table. Incluez le nom de chemin d'accès complet. Cetargument est obligatoire.Pour les types de bases de données tels que Paradox et dBASE qui utilisent des fichiersdifférents pour chaque table, entrez le nom du répertoire contenant le fichier voulu.Entrez le nom du fichier dans l'argument Source (pour l'importer ou l'attacher) ou dansl'argument Destination (pour l'exporter).Pour les bases de données SQL, entrez la chaîne de connexion ODBC complète. Pourvoir un exemple de chaîne de connexion, attachez une table externe à MicroSoftAccess en utilisant, dans le menu Fichier, la commande Attacher une table. Ouvrez latable en mode Création et affichez les propriétés de la table.Le texte à gauche du premier symbole " --> " dans la propriété Description est lachaîne de connexion de la table.

Page 123: Access Initiation

Page : 118 MicroSoft Access Version 7.0

Type objet Type de l'objet à importer ou à exporter. Si vous sélectionnez MicroSoft Access dansl'argument Type base, vous pouvez sélectionner Table, Requête, Formulaire, Etat,Macro ou Module dans la liste déroulante. Si vous sélectionnez un autre type de basede données ou choisissez, pour l'argument Type transfert, l'option Attacher, Type objetest ignoré. Le paramétrage par défaut est Table.

Source Nom de la table ou de l'objet MicroSoft Access que vous voulez importer, exporter ouattacher. Pour certains types de bases de données, tels que Paradox ou dBASE, ils'agit d'un nom de fichier. Incluez l'extension du nom du fichier (par exemple .DBF).Cet argument est obligatoire.

Destination Nom de la table ou de l'objet MicroSoft Access importé, exporté ou attaché dans labase de données destination. Pour certains types de bases de données, tels queParadox ou dBASE, il s'agit d'un nom de fichier. Incluez l'extension du nom du fichier(par exemple .DBF). Cet argument est obligatoire.Si vous sélectionnez Importation pour l'argument Type transfert et Table pourl'argument Type objet, MicroSoft Access crée une nouvelle table qui contient lesdonnées de la table importée.Si vous importez une table ou un autre objet, MicroSoft Access ajoute un numéro àson nom s'il est en conflit avec un nom existant. Si vous importez, par exemple, Table1et que Table1 existe déjà, MicroSoft Access renomme la table importée Table2.Si vous exportez dans une base de données MicroSoft Access ou autre, MicroSoftAccess remplace automatiquement tout objet ou table existant portant le mêmenom.

Structureseulement

Spécifie si vous importez ou exportez uniquement la structure d'une table MicroSoftAccess sans aucune de ses données. Cet argument n'est applicable que si vousimportez ou exportez entre deux bases de données MicroSoft Access. SélectionnezOui ou Non. Le paramétrage par défaut est Non.

TransférerFeuilleCalculImporte ou exporte des données entre la base de données MicroSoft Access en cours et un

fichier de tableur.

Type transfert Type de transfert à effectuer. Sélectionnez Importation ou Exportation dans la listedéroulante de la section Arguments de l'action de la fenêtre Macro. Le paramétragepar défaut est Importation.

Type feuille Type de feuille de calcul à partir de laquelle importer ou dans laquelle exporter. Voussélectionnez un des types de feuille de calcul proposés dans la liste déroulante. Voustrouverez la description complète des feuilles de calcul disponibles dans la rubriquede l'Aide sur la commande Importer (menu Fichier). Le paramétrage par défaut estMicroSoft Excel.

Nom table Nom de la table MicroSoft Access dans laquelle importer ou à partir de laquelleexporter des données de feuille de calcul. Cet argument est obligatoire.Si vous sélectionnez Importation pour l'argument Type transfert, MicroSoft Accessajoute les données de la feuille de calcul à la table si elle existe déjà. Sinon, MicroSoftAccess crée une nouvelle table qui contient les données de la feuille de calcul.

Nom fichier Nom du fichier feuille de calcul à partir duquel importer ou dans lequel exporter desdonnées. Incluez le nom de chemin d'accès complet. Cet argument est obligatoire.MicroSoft Access crée une nouvelle feuille de calcul lorsque vous exportez desdonnées de MicroSoft Access. Si le nom du fichier est le même que celui d'une feuillede calcul existante, MicroSoft Access remplace la feuille de calcul existante.

Contient nomschamps

Indique si la première ligne de la feuille de calcul contient les noms des champs. Sivous sélectionnez Oui, MicroSoft Access utilisera les noms de cette ligne en tant quenoms de champs dans la table MicroSoft Access lorsque vous importerez les donnéesde la feuille de calcul. Si vous sélectionnez Non, MicroSoft Access considère lapremière ligne comme étant une ligne de données normale. Le paramétrage pardéfaut est Non.Lorsque vous exportez des données d'une table MicroSoft Access dans une feuille decalcul, les noms de champs sont insérés dans la première ligne de la feuille de calculsi vous sélectionnez Oui pour cet argument.Si vous voulez importer la plage nommée Base_de_données à partir d'une feuille decalcul MicroSoft Excel, vous devez sélectionner Oui pour cet argument.

Etendue Plage de cellules à importer. Laissez cet argument vierge pour importer la feuille decalcul entière. Vous pouvez entrer le nom d'une plage de la feuille de calcul ouspécifier la plage de cellules à importer, par exemple A1:E25 ou A1..E25. Cetargument est ignoré par MicroSoft Access lors de l'exportation.

Page 124: Access Initiation

MicroSoft Access Version 7.0 Page : 119

Si vous importez à partir d'une feuille de calcul MicroSoft Excel, vous pouvez spécifierla plage nommée Base_de_données en tapant Base_de_données pour cetargument.Lorsque vous exportez vers une feuille de calcul MicroSoft Excel, MicroSoft Accesscrée une plage nommée Base_de_données dans la feuille de calcul contenant lesdonnées de votre table.

TransférerTexteImporte ou exporte du texte entre la base de données MicroSoft Access en cours et un fichier

texte.

Type transfert Type de transfert à effectuer. Vous pouvez importer ou exporter des données vers desfichiers texte délimités ou à longueur fixe. Vous pouvez aussi exporter des donnéesvers un fichier de données de publipostage MicroSoft Word pour Windows que vouspouvez utiliser par la suite avec la fonction de publipostage de Word pour Windowspour créer des documents fusionnés tels des lettres types ou des étiquettes depublipostage. Sélectionnez Importation texte (délimité), Importation texte (longueurfixe), Exportation texte (délimité), Exportation texte (longueur fixe) ou Fusion avecWord pour Windows dans la liste déroulante de la section Arguments de l'action de lafenêtre Macro. Le paramétrage par défaut est Importation texte (délimité).

Format Nom du format des options qui déterminent la façon dont un fichier texte est importéou exporté. Cet argument est obligatoire pour les fichiers texte à longueur fixe.Vous utilisez, dans le menu Fichier, la commande Paramètres d'import/export pourcréer le format pour un type de fichier texte particulier, tel qu'un fichier texte délimitédont les champs sont séparés par des tabulations et qui utilise le format JMA pour lesdates. Sélectionnez les options souhaitées dans les boîtes de dialogue de lacommande Paramètres d'import/export et enregistrez votre format. Vous pouvezensuite entrer le nom de ce format dans l'argument Format chaque fois que vousvoulez importer ou exporter le même type de fichier texte.Vous pouvez importer ou exporter un texte délimité ou des fichiers de données depublipostage Word pour Windows sans entrer de nom de format pour cet argument,auquel cas MicroSoft Access utilise le paramètrage par défaut des boîtes dedialogue de la commande Paramètres d'import/export.

Nom table Nom de la table MicroSoft Access dans laquelle importer ou à partir de laquelleexporter des données texte. Cet argument est obligatoire.Si vous sélectionnez Importation texte (délimité) ou Importation texte (longueur fixe)pour l'argument Type transfert, MicroSoft Access ajoute les données texte à la table sielle existe déjà. Sinon, MicroSoft Access crée une nouvelle table contenant lesdonnées texte.

Nom fichier Nom du fichier texte à partir duquel importer ou dans lequel exporter des données.Incluez le nom de chemin d'accès complet. Cet argument est obligatoire.MicroSoft Access crée un nouveau fichier texte lorsque vous en exportez desdonnées. Si le nom du fichier est le même que celui d'un ficher texte existant,MicroSoft Access remplace le fichier texte existant.

Contient nomschamps

Indique si la première ligne du fichier texte contient les noms des champs. Si voussélectionnez Oui, MicroSoft Access utilisera les noms de cette ligne comme noms dechamps dans la table MicroSoft Access lorsque vous importerez les données texte. Sivous sélectionnez Non, MicroSoft Access considère la première ligne comme étantune ligne de données normale. Le paramétrage par défaut est Non.MicroSoft Access ignore cet argument pour les fichiers de publipostage Word pourWindows, pour lequel la première ligne doit contenir les noms de champ.Lorsque vous exportez des données d'une table MicroSoft Access dans un fichiertexte délimité ou à longueur fixe, les noms des champs de votre table sont insérésdans la première ligne du fichier si vous sélectionnez Oui pour cet argument.Si vous importez un fichier texte à longueur fixe et que vous sélectionnez Oui pour sonargument, la première ligne contenant les noms de champ doit utiliser le délimiteurde texte dans la spécification import/export pour séparer les noms de champ. Si vousexportez vers un fichier texte à longueur fixe et que vous sélectionnez Oui pour cetargument, MicroSoft Access insère les noms de champ sur la première ligne du fichiertexte utilisant ce délimiteur.

Page 125: Access Initiation

Page : 120 MicroSoft Access Version 7.0

TrouverEnregistrementRecherche l'enregistrement suivant qui correspond aux critères spécifiés par les arguments. Vous

pouvez rechercher des enregistrements dans la feuille de données de la table, dans celle duformulaire, dans la feuille de réponses dynamique de la requête ou dans le formulaire actif.

Rechercher Données à rechercher dans l'enregistrement. Entrez le texte, le nombre ou la daterecherché, ou tapez une expression (précédée du signe égal). Vous pouvez utiliserdes caractères génériques. Cet argument est obligatoire.

Où Indique où se trouvent les données dans le champ. Vous pouvez rechercher desdonnées dans n'importe quelle partie d'un champ (N'importe où dans le champ), desdonnées qui remplissent le champ entier (Champ entier) ou des données situées audébut du champ (Début de champ). Le paramétrage par défaut est Champ entier.

Majuscule/minuscule Indique si la recherche respecte les majuscules et les minuscules. Sélectionnez Oui ouNon. Le paramétrage par défaut est Non.

Direction Indique si la recherche commençant à partir de l'enregistrement en cours esteffectuée vers le début ou vers la fin des enregistrements. Sélectionnez Haut ou Bas.Le paramétrage par défaut est Bas.

Comme formaté Indique si la recherche tient compte du format. Si vous sélectionnez Oui, MicroSoftAccess recherche les données telles qu'elles sont mises en forme et affichées dans lechamp. Si vous sélectionnez Non, MicroSoft Access recherche les données tellesqu'elles sont stockées dans la base de données, ce qui est parfois différent de leuraffichage. Le paramétrage par défaut est Non.Vous pouvez utiliser cette caractéristique pour limiter la recherche aux donnéesdotées d'un certain format. Sélectionnez Oui et entrez 1 234, par exemple, dansl'argument Rerchercher pour trouver la valeur 1 234 dans un champ doté d'unespace pour le séparateur de milliers. Sélectionnez Non et entrez 1234 pourrechercher cette valeur dans les données du champ sans tenir compte du format.Pour rechercher des dates, sélectionnez Oui pour rechercher une date telle qu'elleest mise en forme dans les champs, par exemple 03-mars-1992. Si vous sélectionnezNon, la date sera recherchée suivant le format défini dans la section Internationaledu Panneau de configuration de Windows (soit le format Date abrégée de la sectionFormat Date). Si, par exemple, le format de la date abrégée est réglé sur j/m/aa,vous pouvez entrer 9/3/92 et MicroSoft Access recherchera toutes les entrées d'unchamp Date qui correspondent au 9 mars 1992, quel que soit le format du champ.Remarque Cet argument n'est effectif que si le champ en cours est un champdépendant, que l'argument Où est réglé sur Champ entier, que l'argumentRechercher dans est réglé sur Champ en cours et que l'argumentMajuscule/minuscule est réglé sur Non.

Rechercher dans Indique si la recherche est limitée au champ en cours dans chaque enregistrement(Champ en cours) ou si elle s'étend à tous les champs (Tous les champs) de chaqueenregistrement. La recherche effectuée en sélectionnant Champ en cours est plusrapide que celle effectuée avec Tous les champs. Le paramétrage par défaut estChamp en cours.

Trouver premier Indique si la recherche commence au niveau du premier enregistrement ou del'enregistrement en cours. Sélectionnez Oui pour démarrer au premier enregistrementet Non pour démarrer à l'enregistrement en cours. Le paramétrage par défaut estOui.

TrouverSuivantRecherche l'enregistrement suivant qui correspond aux critères spécifiés par l'action

TrouverEnregistrement précédent ou dans la boîte de dialogue Rechercher de la commandeRechercher.

Page 126: Access Initiation

MicroSoft Access Version 7.0 Page : 121

LES EXPRESSIONS

Les expressions représentent une partie essentielle des nombreuses opérations MicroSoft Access.Elles sont utilisées pour les calculs, pour définir les critères de requête, pour contrôler les macros eten tant qu'arguments dans les fonctions.

Saisie des expressions

Si une expression dépasse la taille de la zone de saisie prévue dans une "Fenêtre de propriétés",vous pouvez ouvrir la boîte de dialogue "Zoom" en appuyant simultanément sur MAJ+F2.

Saisie des noms d'objets

Les crochets doivent entourer les noms d'objetsex : = [Port]+[Montant]

Saisie de valeurs date/heure

Les signes # entourent les valeurs de type Date/heureex : #23-12-92#

Saisie de texte

Les guillemets anglais entourent les valeurs de type texte.ex : "Paris".

Les opérateurs dans les expressions

Les opérateurs arithmétiques, comparatifs, logiques et de concaténation de chaînes sont décritsdans la rubrique "Les opérateurs dans les requêtes" page 27 de cette notice.

Opérateurs d'identificateur

L'opérateur ! et. servent à signaler l'appartenance d'un élément à un objet.

Le ! est toujours suivi du nom d'un élément défini par l'utilisateur.ex : Formulaires![commande]![date_commande] fait référence au champ Date_commande

dans le formulaire commande, lequel est un objet "Formulaire"Le . est toujours suivi du nom d'une propriété.ex : Formulaires![clients].Visible fait référence à la propriété "Visible" du formulaire client.

Page 127: Access Initiation

Page : 122 MicroSoft Access Version 7.0

Le générateur d'expressions

La syntaxe des expressions n'est pas évidente, en revanche Access possède un Générateurd'expressions agréable à utiliser.

Vous pouvez l'activer à partir de la plupart des éléments qui servent à la rédaction d'expressions.Pour lancer le Générateur d'expressions à partir de la barre d’outils.

1. Cliquez sur dans la barre d’outils.

Pour lancer le Générateur d'expressions à partir d'une feuille des propriétés1. Cliquez dans la zone de l'argument qui doit contenir l'expression.2. Cliquez sur le bouton « Générateur » situé à droite de l'argument.

2

1

Pour lancer le Générateur d'expressions dans une fenêtre Requête.1. Avec le bouton droit de la souris, cliquez à l'endroit où vous souhaitez insérer l'expression.2. Dans le menu contextuel, choisissez « Générer ».

2

1

Page 128: Access Initiation

MicroSoft Access Version 7.0 Page : 123

La fenêtre du générateur d'expressions.

Pour copier un élément de la zone inférieure du Générateur d'expression et le coller dans lazone Expression

1. Dans la zone de gauche, cliquez deux fois sur le dossier contenant le type d'objet ou l'élémentrecherché.

2. Dans le dossier, cliquez sur l'objet de votre choix.

1

23

4Zone contenant l'expression créée5

3. Utilisez les zones situées au centre et à droite pour sélectionner un élément à coller.4. Cliquez deux fois sur ce dernier, ou choisissez le bouton « Coller ».5. Lorsque l'expression est correcte, cliquez sur « Ok ».

• Pour coller un identificateur ou un champ se référant à une « Table » ou à un champ« Requête », cliquez sur le dossier pour choisir la table ou la requête concernée puis cliquez sur lechamp de votre choix.

• Pour coller un identificateur se référant à une propriété ou à un contrôle de formulaire ou d'état,ou à un champ de la requête ou de la table sous-jacente d'un formulaire ou d'un état cliquezsur le dossier contenant le formulaire ou l'état. Dans la zone centrale, sélectionnez le typed'élément et, dans la zone de droite, cliquez deux fois sur l'élément choisi.

• Pour coller une fonction intégrée ou définie par l'utilisateur , cliquez sur le dossier contenant lesfonctions intégrées ou les fonctions définies par l'utilisateur . Dans la zone centrale, sélectionnezla catégorie de fonctions ou le module de votre choix puis, dans la zone de droite, cliquez deuxfois sur la fonction.

Page 129: Access Initiation

Page : 124 MicroSoft Access Version 7.0

Les fonctions dans les expressions

Vous utilisez les fonctions dans les expressions pour retourner une valeur basée sur le résultat d'uncalcul ou d'une opération. Vous pouvez également créer vos propres fonctions dans un module en"Access Basic".

Fonctions de regroupement dans les domaines.

Fonction Retourne.

MoyDom La moyenne d'un ensemble de valeurs dans un domaine.

CpteDom Le nombre d'enregistrements sélectionnés dans un domaine.

PremDom Une valeur de champ provenant du premier enregistrement dans un domaine.

DernDom Une valeur de champ provenant du dernier enregistrement dans un domaine.

RechDom Une valeur de champ dans un domaine.

MinDom La valeur minimale d'un ensemble de valeurs dans un domaine.

MaxDom La valeur maximale d'un ensemble de valeurs dans un domaine.

EcartyDom L'écart-type d'une population représentée en tant qu'ensemble de valeurs dans undomaine.

EcartyPDom L'écart-type d'un échantillon de population représentée en tant qu'ensemble devaleurs dans un domaine.

SomDom La somme d'un ensemble de valeurs dans un domaine.

VarDom La variance d'une population représentée en tant qu'ensemble de valeurs dans undomaine

VarPDom La variance d'un échantillon de population représentée en tant qu'ensemble devaleurs dans un domaine.

Fonctions de regroupement SQL

Fonction RetourneMoyenne La moyenne d'un ensemble de valeurs dans un

champ.

Compte Le nombre d'enregistrements sélectionnés.

Premier La valeur d'un champ provenant du premierenregistrement dans une requête, un formulaire ouun état.

Dernier La valeur d'un champ provenant du dernierenregistrement dans une requête, un formulaire ouun état.

Min La valeur minimale d'un ensemble de valeurs dansun champ.

Max La valeur maximale d'un ensemble de valeurs dansun champ.

Ecartype L'écart-type d'une population représentée en tantqu'ensemble de valeurs dans un champ.

Page 130: Access Initiation

MicroSoft Access Version 7.0 Page : 125

EcratypeP L'écart-type d'un échantillon de populationreprésentée en tant qu'ensemble de valeurs dansun champ.

Somme La somme d'un ensemble de valeurs dans unchamp.

Var La variance d'une population représentée en tantqu'ensemble de valeurs dans un champ.

VarP La variance d'un échantillon de populationreprésentée en tant qu'ensemble de valeurs dansun champ.

Autres fonctions

Fonction Retourne

Choisir Une valeur parmi la liste d'arguments.

Date La date système actuelle.

AjDate Une date à laquelle a été ajoutée un intervalle detemps x.

DiffDate Le nombre de jours 'ou autre intervalle de temps)entre 2 dates.

PartDate Un élément x de la date.

Jour Un nombre entre 1 et 31 représentant le jour dumois.

Format Un nombre, une date, une heure ou une chaînemise en forme.

VraiFaux Un argument ou un autre en fonction du résultatd'une expression.

EstNull Une valeur qui indique si une expression contient ounon la valeur spéciale Null.

Gauche Les n premiers caractères d'une chaîne.

Droite Les n derniers caractères d'une chaîne.

Page 131: Access Initiation

Page : 126 MicroSoft Access Version 7.0

Exemples d'expressions

Expression de contrôles calculés

Vous utilisez ce type d'expression pour créer un contrôle calculé dans un formulaire ou un état,ou en tant que paramètre de la propriété Source contrôle dans une fenêtre de propriétés.

Expression Ce qui est affiché=[Prénom] & " " &[Nom] Les valeurs des champs Prénom et Nom séparés

par un blanc.

=[Quantité] * [Prix unitaire] Le produit du champ Prix unitaire par le champQuantité.

=[Prix unitaire]* 1,06 Le produit du champ Prix unitaire par la valeur 1,06.

=[Ventes]/Somme([Ventes])*100 La valeur des ventes dans un enregistrement entant que pourcentage du total des ventes danstous les enregistrements.

="Page" &Page Page 1, Page 2, etc., à l'impression.

=RechDom("[Contact]";"[Fournisseurs]";"[ N°fournisseur]= Formulaires![N° fournisseur]")

La valeur du champ Contact dans la tableFournisseurs correspondant au N° fournisseurspécifié dans le formulaire en cours.

=RechDom("[Contact]";"[Fournisseurs]";"[ N°fournisseur]= Formulaires![Nouveauxfournisseur]![N° fournisseur]")

La valeur du champ Contact dans la tableFournisseur correspondant au N° fournisseur spécifiédans le formulaire "Nouveaux fournisseurs.

=SomDom("[Montant]";"[Commandes]";"[ Codeclient]=100")

Le total de tous les champs Montant de la tableCommandes pour lesquels le code client est égal à100.

Expression de validation

Les expressions de validation sont utilisées pour définir la propriété "Valide si" ou en tant quecondition de macro.

Expression Les données doivent="Royaume-Uni" Etre égales à "Royaume-Uni".

Entre 10 Et 100 Etre comprises entre 10 et 100

Dans ("British Columbia" ; "Québec") Correspondre à ""British Columbia" ou à "Québec".

Comme "P[A-F]###" Commencer par le lettre "P" suivie de toute lettrecomprise entre "A" et "F", puis de 3 chiffres.

RechDom("[Code]";"[Employés]";"[Code]=[Employés]") EstPas Null

Correspondre à une des valeurs stockées dans lechamp Code de la table Employés. L'expressionretourne "Vrai" s'il y a correspondance ; "Faux" dansle cas contraire.

Page 132: Access Initiation

MicroSoft Access Version 7.0 Page : 127

Expression de valeurs par défaut

Ce type d'expression est utilisé pour définir le paramètre de la propriété "Valeur par défaut"dans la feuille propriété.

Expression La valeur par défaut est=1 1.=Null Pas de valeur.=Date() Date système.=PartDate("m":Date()) Le mois de la date système.=Format$(Date();"jj-mmm-aa" La date système dans le format indiqué.

Expression Critères

Ce type d'expression est utilisé dans la cellule "Critère" d'une requête ou d'un filtre.

Champ Expression La requête trouve les commandesVille de livraison "Paris" ou "Bruxelles" Expédiées à Paris ou Bruxelles

Pays de livraison Dans("Canada";"France") Expédiées au Canada ou en France.

Pays de livraison Pas "Etats Unis" Expédiées dans tous les autres pays sauf les étatsunis.

Date d'envoi Entre #05-07-92# Et #05-09-92# Expédiées entre le #05-07-92# et le #05-09-92#

Date commande < Date()-30 Passées il y a plus de 30 jours

Date commande Année([Date commande])=1991

commandées en 1991.

Date commande PartDate("t";[Datecommande])=4

Commandées pendant le dernier trimestre del'année.

Destinataire "S*" Expédiées aux clients dont le nom commencepar "S".²

Destinataire Comme "[A-D]*" Expédiées aux clients dont le nom commencepar "A", "B", "C" ou "D".

Expression arguments d'actions

Vous utilisez ce type d'expression en tant qu'arguments dans plusieurs actions.

Expression Action RésultatFormulaire![Fournisseur]!N°fournisseur

DéfinirValeur Définit la valeur de l'élément del'action spécifié, sur la valeur de N°fournisseur dans le formulairefournisseur.

Formulaire![Employés]![Salaire]*1,1 DéfinirValeur Définit la valeur de l'élément del'action spécifié, sur le Salaire+10% duformulaire Employés.

=[Choix société] RechercherEnregistrement Recherche l'enregistrement portant lenom de société figurant dans la zonede liste "Choix société"

Année[Date commande]=92 ExécuterMacro Exécute la macro si la date stockéedans le champ Date commande est92.

Page 133: Access Initiation

Page : 128 MicroSoft Access Version 7.0

LIMITES TECHNIQUES DE MICROSOFT ACCESS

Base de données

Attribut MaximumTaille d'un fichier .MDB 1 gigaoctetNombre de tables dans une base 32.768Nombre de tables attachées 32768Nombre de requêtes dans une base 32768Nombre de tables ouvertes 254Nombre de caractères d'un nom d'objet 64Nombre de tables d'un mot de passe 14Nombre de tables d'un nom d'utilisateur 20Nombre d'accès simultanés 255

Tables

Attribut MaximumNombre de caractères d'un nom de table 64Nombre de caractères d'un nom de champ 255Nombre de champs dans un enregistrement ou une table 255Taille d'une table 1 gigaoctetNombre de caractères dans un champ de type texte 255Nombre de caractères dans un champ de type Mémo 64000Taille d'un champ de type Liaison OLE 1 gigaoctetNombre d'index dans un enregistrement ou une table 32Nombre de champs dans un index 10Nombre de caractères d'un message de validation 255Nombre de caractères d'un enregistrement 2000Nombre de caractères d'une description de table oude champ 255

Requêtes

Attribut MaximumNombre de tables dans une requête 32Nombre de champs dans une feuille de réponses 255Taille d'une feuille de réponses 1 gigaoctetNombre de champs de tri 10Nombre de niveaux d'emboîtement 50

Formulaires et états

Attribut MaximumNombre de caractères dans une étiquette 2048Nombre dans une zone de texte 64000Largeur d'un formulaire ou d'un état 22 pouces (55,87 cm)hauteur d'une section 22 pouces (55,87 cm)Hauteur totale des sections et des en-têtes 200 pouces (508 cm)Nombre de niveaux d'emboîtement 3Nombre de champs/expression de tri et de regroupement 10Nombre d'en-tête/pieds de groupes 10Nombre de pages imprimées 65.536

Page 134: Access Initiation

MicroSoft Access Version 7.0 Page : 129

Macros

Attribut MaximumNombre d'action dans une macro 999Nombre de caractères dans un commentaire 255Nombre de caractères d'une condition 255Nombre d'actions dans un argument d'action 255

Page 135: Access Initiation

InformatiqueBase de donnees - Access

UFR L.E.A. - MST CI 2Janvier 2004

A. Lemay

Page 136: Access Initiation

Contenu du document.

1 Introduction 3

2 Methode Merise 42.1 Principes generaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.2 Modele Conceptuel de donnees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2.2.1 Reperage des entites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2.2 Construction des entites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2.3 Construction des relations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.2.4 Choix des cardinalites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72.2.5 Cas particuliers et pieges . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.3 Modele Logique de donnees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.3.1 Construction des tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.3.2 Transformation des relations en liens . . . . . . . . . . . . . . . . . . . . . . 102.3.3 Suppression des tables inutiles . . . . . . . . . . . . . . . . . . . . . . . . . 11

3 Creation de la base de donnees dans Access 123.1 Creation des tables dans Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.2 Importation de table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.3 Relations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

4 Requetes 164.1 generalites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164.2 Requete de selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

4.2.1 Requetes mono-table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164.2.2 Requetes multi-tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164.2.3 Requetes avec critere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174.2.4 Requetes a champs calcules . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.2.5 Requetes de regroupements . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.2.6 Requetes en cascades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214.2.7 Requete d’analyse croisee . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214.2.8 Requetes en mode SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4.3 Requetes d’actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224.3.1 Requetes de suppression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.3.2 Requetes de mise a jour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.3.3 Requetes de creation de table . . . . . . . . . . . . . . . . . . . . . . . . . . 244.3.4 Requetes d’ajout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

5 Finalisation de la base 265.1 Etats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265.2 Modification de l’etat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275.3 Creation d’un formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285.4 modification d’un formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295.5 Sous formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305.6 Menus et autres personnalisations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

5.6.1 menu general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315.6.2 Demarrage de l’application . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

2

Page 137: Access Initiation

1 Introduction

Alors qu’au debut de leur histoire les ordinateurs servaient essentiellement a calculer, leur utilisa-tion principale de nos jours est la gestion d’informations. On les retrouve dans tous les secteursd’activite. Une grande quantite d’informations stockee dans un ordinateur s’appelle une base dedonnees. Un logiciel permettant d’utiliser ces donnees est un systeme de gestion de base de donnees(SGBD).

Differents logiciels existent permettant cette operation. Ainsi un tableur (tel qu’Excel) peut etreconsidere comme un SGBD. Nous allons utiliser ici le logiciel Accesscomme SGBD. Ce logicielpermet une conception aisee de bases de donnees de ”petite” taille avec un nombre restreintd’utilisateurs. Il est a noter que plusieurs autres SGBD plus performants (mais egalement pluscomplexes) existent par ailleurs. On peut citer notamment Oracle, SQL Server, Paradox, MySQL,PostgreSQL parmi beaucoup d’autres.

La plupart de ces systemes sont bases (dont Access) sur le modele relationnel et fonctionnentsur le meme principes generale : les informations sont stockees dans des tables qui sont reliees entreelles par des relations. L’interrogation de la base de donnees se fait a l’aide de requetes, ces requetesetant ecrites a l’aide d’un langage commun a la plupart des SGBD : le SQL (Structured QueryLanguage). Accessa comme avantage par rapport a la plupart de ses concurrents de permettreune ecriture en mode graphique des tables, de leur relations et de la plupart des requetes. De plus,il integre un systeme de creation d’applications claires et simples pour chaque base de donnees.

Ce document est compose de cinq parties :

1. cette introduction,

2. une partie consacree a la methode Merise, qui indique comment concevoir une base dedonnees,

3. une partie consacree a la creation de la base de donnees dans le logiciel Access,

4. une partie consacree aux differents type de requetes,

5. et une derniere partie consacree a la finalisation de la base de donnees (notamment conceptiondes formulaires, des etats et des menus) qui permet d’avoir un produit fini, utilisable par unutilisateur n’ayant pas de connaissances particuliere sur les SGBD.

3

Page 138: Access Initiation

2 Methode Merise

2.1 Principes generaux

La methode Merise a ete creee en France dans les annees 1970. Cette methode utilise le systemedit d’entites-relations. Il s’agit d’un outil et d’une technique d’analyse permettant de construiredes schemas theoriques de raisonnement sur des applications tournant avec des bases de donneesdite relationnelles (comme celles d’Access).

A noter que nous ne presenterons ici qu’une partie de la methode Merise, puisque la methodeMerise generale traite de l’integralite de la conception de la base de donnees : elle ne s’interesse pasuniquement de la partie correspondant au stockage des donnees, mais egalement a leur traitement.

La methode Merise considere quatre phases dans la creation d’une base de donnees :

1. La phase d’analyse : cette phase, qui ne sera pas etudie dans ce document, est une phaseessentielle qui consiste a

• etudier l’existant : y-a-t’il un systeme qui gere deja tout ou partie de l’information,qu’il s’agisse d’un logiciel ou d’un ensemble de documents papiers ? Comment cesinformations sont elles stockees ? Quelles sont les informations stockees ? Que manque-t’il ? Qu’est ce qui convient ou ne convient pas aux utilisateurs ?

• interroger les futurs utilisateurs : qu’attendent-ils du futur SGBD ? Quelles sont lesoperations qu’ils desirent automatiser ?

• recueillir les informations existantes, etudier les divers liens qui peuvent exister entreces informations, mettre en evidence les regles de gestion employees, ...

2. La phase conceptuelle : elle consiste a representer l’organisation des donnees de manieregenerale. Elle aboutit sur la creation du modele conceptuel des donnees (MCD) dans lequelles donnees sont representees sous forme d’entites liees entre elles par des relations.

3. La phase logique ou organisationnel : dans cette phase, la base de donnees sontrepresentees sous une forme logique plus proche de leur representation reelle au sein duSGBD : les informations sont representees uniquement sous forme de tables au sein d’unmodele logique des donnees (MLD).

4. La phase physique ou operationnelle : elle consiste a construire reellement la base dedonnees au sein du SGBD (ici Access). Cette partie ne sera pas decrite dans cette section,mais dans les suivantes.

Les quatre phases de la methode Merise :

1. analyse (etude de l’existant et enquete)

2. conceptuel (creation du MCD)

3. logique (creation du MLD)

4. physique (conception de la base de donnees dans Access)

A retenir

2.2 Modele Conceptuel de donnees

Apres la phase d’analyse, nous pouvons commencer a representer les informations sous formeconceptuelle. Le Modele Conceptuel de Donnees (MCD) que nous allons construire contient deuxelements principaux : les entites et les relations.

4

Page 139: Access Initiation

Une entite est un element du probleme. Elle est definie par un ensemble de proprietes. Chacunedes propriete est l’un des elements qui caracterise l’entite. Il faut distinguer une entite et uneoccurrence d’entite (ou instance). Une entite correspond au type general d’une donnee (ex : letype ”employe”) alors qu’une occurrence d’une entite est un representant particulier de cette entite(l’employe ”Jean Martin”).

Une relation est un lien possible qui relie deux entites. Par exemple, si un employe peut etreaffecte a un entrepot, il y aura une relation ”affectation” entre l’entite entrepot et l’entite ”em-ploye”. Cela ne signifie pas necessairement qu’il y aura affectation pour chacun des employe, justequ’il est possible qu’un employe soit affecte a un entrepot. Une relation peut eventuellement etrereliee a plus de deux entites et peut avoir certaines proprietes.

Apres avoir fait une analyse aussi complete que possible du probleme a informatiser, la construc-tion du MCD se fait en quatre etape :

1. reperage des entites,

2. construction des entites, choix des proprietes,

3. construction des relations,

4. choix des cardinalites.

2.2.1 Reperage des entites

Une entite est un composant du probleme : une personne, une facture, un livre, ... C’est larepresentation d’un objet materiel ou immateriel pourvu d’une existence propre et conforme auxchoix de gestion de l’entreprise. Comme dit plus haut, ce que l’on considere comme entite est untype general (ex : l’entite personne represente toutes les personnes) a ne pas confondre avec uneoccurrence d’entite (Jean Martin etant une personne, on le considere comme une occurrence del’entite personne). Une entite doit avoir une existence independamment de tout autre entite.

Exemple : On considere le probleme suivant :

Un libraire gere des œuvres litteraires. Une œuvre est une creation litteraire.Une œuvre a au moins un auteur et est dans une edition (un livre). Une editionpossede un ISBN unique et a un unique editeur. Elle peut contenir plusieursœuvres. On veut memoriser pour chaque edition le nombre d’exemplaires enstock et pour chaque exemplaire son etat.

Dans ce probleme, les entites sont :

• l’entite ”œuvre” : Une creation litteraire, un recit...

• l’entite ”auteur” : une personne createur d’œuvre,

• l’entite ”edition” : un livre contenant une ou plusieurs œuvres litteraires,

• l’entite ”editeur” : la societe qui va imprimer les livres,

• l’entite ”exemplaire” : un exemplaire physique de livre.

L’ISBN, par exemple, n’est pas une entite puisqu’il s’agit d’un element qui caracterise l’entite”edition”.

2.2.2 Construction des entites

L’etape suivante correspond a la construction des entites. On commence par donner un nom achacune des entites. Il faut ensuite rechercher les proprietes de ces entites. On devra garder al’esprit les points suivants :

5

Page 140: Access Initiation

• toute propriete est elementaire (elle n’est pas la composition d’eventuelles proprietes pluspetites),

• une propriete ne doit pas etre ”instable” ou ”calculable” : si une propriete peut etre obtenuepar calcul a partir d’autres elements qui vont apparaıtre dans la base de donnee (notammentd’autres proprietes), on ne doit pas la considerer,

• toute entite doit posseder une propriete particuliere appelee sa cle (ou identifiant). Unecle doit caracteriser de maniere unique chaque occurrence de l’entite. Par exemple, le nomde famille d’une personne ne peut pas etre considere comme une cle d’une entite ”personne”puisque deux personnes peuvent avoir le meme nom de famille. Le numero de securite socialeest par contre tout a fait acceptable. Il vaut mieux eviter les identifiants trop longs (onpreferera un code de quelques chiffres a un intitule d’une vingtaine de lettres par exemples),

• si aucune des proprietes ”naturelles” ne peut servir de cle, on en rajoute une artificiellement(par exemple ”CodeLivre” ou ”IdAnimal”).

• Chaque propriete ne doit dependre que d’une seule entite.

Une entite se represente ensuite graphiquement sous la forme d’un boıte dans lequel on indiqueen titre le nom de l’entite suivi de toutes ses proprietes. On indique d’une maniere particulierel’identifiant.

EntiteIdentifiantpropriete 1propriete 2

...

Exemple : Dans l’exemple du libraire, on peut construire les entites suivantes (les proprietessont indiquees apres le nom de l’entite, l’identifiant est en gras) :

• œuvre : Idœuvre, titre

• Auteur : IdAuteur, nom, prenom

• Edition : ISBN, titre, nb pages

• Editeur : IdEditeur, nom

• Exemplaire : IdExemplaire, etat

Notons que, dans le cas de l’edition, l’ISBN est un identifiant tout a fait acceptable. Dans lesautres cas, aucune des proprietes ne convenant comme identifiant, il a fallu creer une proprieteparticuliere pour cet effet (Id...).

2.2.3 Construction des relations

L’etape suivante consiste a enumerer toutes les relations possibles entre entites. Si une relation aune chance d’apparaıtre (et de nous interesser), alors on doit la considerer dans le MCD. On parleegalement parfois d’association.

Une relation se represente de la maniere suivante :

Entite A...

EcritEntite B...

On notera les points suivants :

6

Page 141: Access Initiation

• Une relation est en general entre deux entites. Il est possible d’avoir des relations entreplus que deux entites. Par exemple, une relation Vente entre Acheteur, Vendeur et Lieupour une base de donnee de transaction immobiliere. Il est neanmoins souvent possible(et preferable !) de se restreindre a des relations entre deux entites. Dans le cas ici, larelation Vente pourrait etre remplacee par une entite Acte de vente qui est en relationavec l’acheteur, le vendeur et le lieu.

• Il est tout a fait possible d’avoir plusieurs relations entre deux entites.

• Il est egalement possible d’avoir une relation dite reflexive, c’est-a-dire entre une entite etelle-meme. Par exemple, on peut avoir une relation Responsable entre une table employeet elle-meme. Dans ce cas, il convient tout de meme de remarquer que chacune des ”pattes”de la relation a une signification differente. Ici, l’une des ”pattes” signifiera est responsablede et l’autre signifiera a comme responsable.

• une relation peut avoir des proprietes. Par exemple, si une relation Contient lie l’entiteFacture et l’entite Produit, elle possede certainement la propriete ”quantite” (une facturecontient un produit x en quantite y). D’ailleurs, si une propriete depend de plus d’une entite(comme c’est le cas ici avec la quantite qui depend a la fois de la facture et du produit), c’estcertainement qu’elle depend d’une relation, et non pas d’une entite.

• Il faut eviter les relations que l’on peut deduire d’autres relations par transitivite. Parexemple, dans une base de donnees gerant une universite, si on dispose d’entites etudiant,formation et cours. On a les relations fait partie entre formation et cours (un cours faitpartie d’une formation) et inscription entre etudiant et formation. Il est inutile d’avoir enplus une relation inscription entre etudiant et cours : tout etudiant inscrit a une formationest systematiquement inscrit a tous les cours qui composent la formation.

Exemple : Dans l’exemple du libraire, on a les relations suivantes :

œuvreIdœuvreTitre

ecrit

AuteurIdAuteurnomprenom

edition

EditionISBNTitrenb pages

editeEditeurIdEditeurNom

tirage

ExemplaireIdExemplaire

Etat

2.2.4 Choix des cardinalites

Une fois les relations etablies, il convient ensuite de caracteriser le nombre de fois ou chacune deces relations peut apparaıtre reellement. Ceci se fait a l’aide des cardinalites. Dans une relationclassique (i.e. entre deux entites), quatre cardinalites sont a determiner.

Entite A... Relation

Entite B...

minA : maxA minB : maxB

• minA est le nombre minimal de fois ou une occurrence de l’entite A participe a une relationdu type considere. Il s’agit en general de 0 ou 1.

7

Page 142: Access Initiation

• maxA est le nombre maximal de fois ou une occurrence de l’entite B participe a la relation.Il s’agit en general de 1 ou n (n pour plusieurs fois, ou un nombre quelconque de fois).

• minB et maxB fonctionnent de la meme maniere, mais en considerant l’entite B.

Notons qu’il est souvent difficile de choisir entre une cardinalite de type 0 : n et une cardinalitede type 1 : n. Il est important de noter que ce choix a souvent peu d’importance.

Exemple : Dans l’exemple du libraire, considerons la relation edite qui existe entre les entitesediteur et edition. Ainsi, dans l’exemple du libraire, une edition (un livre) a toujours un et unseul editeur (soit un minimum de un editeur, et un maximum de un editeur). Un editeur par contrepeut editer au minimum une edition et au maximum plusieurs editions (un nombre quelconque defois). Ce qui nous donne :

Editeur... Edite

Edition...

1 : n 1 : 1

Le MCD complet est donc :

œuvreIdœuvreTitre

ecrit

AuteurIdAuteurnomprenom

edition

EditionISBNTitrenb pages

editeEditeurIdEditeurNom

tirage

ExemplaireIdExemplaire

Etat

1 : n 1 : n

1 : n

1 : n

1 : 1 1 : n

0 : n1 : 1

2.2.5 Cas particuliers et pieges

Quelques points particuliers sont a garder a l’esprit lors de la realisation d’un MCD.

• Un identifiant est obligatoire pour chaque entite.

• Il ne doit pas y avoir de redondance d’informations : une information quelconque ne doit pasetre representee plus d’une fois dans le MCD.

• Evitez autant que possible les relations entre plus de deux entites. Souvent, il est possiblede remplacer la relation par une entite.

• Restez dans la mesure du possible avec des cardinalites de valeurs 0, 1 ou n. Il est de toutemaniere souvent possible de se ramener a ce cas dans les rares cas ou des cardinalites d’unautre type semblent plus naturelles.

• Dans l’ideal, il faut trouver un bon compromis entre niveau de detail et ”taille” de la basede donnees. Il est toujours possible de multiplier les entites, mais il vaut mieux le faire quesi cela a vraiment du sens et un interet dans le probleme. Par exemple, si on a une entitepersonne, on peut considerer l’adresse comme une entite separee (reliee a personne par unerelation ”habite a”) ou comme une propriete de la personne (ce qui est fait usuellement). Enregle generale, il est plus economique de definir l’adresse comme une propriete, mais dans uncas ou il est courant que des personnes habitent au meme endroit, la regle de non-redondanceincite plutot a utiliser une nouvelle entite.

8

Page 143: Access Initiation

La methode generale de construction du MCD :

1. recherche des entites,

2. recherche des proprietes (dont la cle de chaque entite),

3. recherche des relations entre entites,

4. recherche des cardinalites (0:1, 1:1, 0:n ou 1:n ?)

A retenir

2.3 Modele Logique de donnees

Une fois le MCD construit, l’etape suivante dans la conception de la base de donnees consiste aconcevoir le modele logique de donnees, ou MLD. Ce MLD montre l’organisation des donnees sousforme de tables et est tres proche de la maniere dont les donnees vont etre effectivement organiseesdans Access. L’etape de transformation du MCD en MLD est assez simple et passe par troisetapes :

1. transformation des entites en tables,

2. transformation des relations du MCD,

3. suppression des tables inutiles.

2.3.1 Construction des tables

La premiere etape consiste a transformer toutes les entites du MCD en tables du MLD. Cettetransformation est directe : il suffit de recopier les entites. Il s’agit essentiellement d’un changementde vocabulaire :

• une entite devient une table,

• une propriete devient un champ,

• un identifiant devient une cle primaire.

A noter toutefois qu’il est essentiel qu’il n’y ait pas deux tables qui aient le meme nom.

Exemple : la premiere partie de la construction du MLD du libraire est directe. Il suffit derecopier les entites.

œuvreIdœuvreTitre

AuteurIdAuteurnomprenom

EditionISBNTitrenb pages

EditeurIdEditeurNom

ExemplaireIdExemplaire

Etat

9

Page 144: Access Initiation

2.3.2 Transformation des relations en liens

L’etape suivant consiste a transformer les relations du MCD en liens du MLD. Deux grands caspeuvent se presenter.

1. l’une des branches de la relation a une cardinalite de 1:1 ou 0:1

2. les autres cas

Premier casDans le cas d’une relation ou l’une des branches a une cardinalite de 1:1 ou 0:1, la transformation

de la relation de la relation se fait de la maniere suivante :

• On ramene dans la table correspondant a l’entite ”du cote du 1:1” (ou du 0:1) la cle primairede l’autre table ainsi que toutes les eventuelles proprietes de la relations.

• On lie la cle primaire ainsi importee avec la cle primaire de la deuxieme table.

• Si la relation contenait des proprietes, celle-ci se retrouve egalement importees du cote du1:1.

Entite AIdA...

Relation

Entite BIdB...

1 : 1 ? :?

Se transforme en :Entite AIdAIdB...

Entite BIdB...

A noter que la cle importee (ici IdB qui se retrouve dans table A) ne devient pas une cle dela table : c’est une propriete comme une autre. Notons aussi que le lien se fait entre champs (onrelie IdA a IdB) et non pas, comme dans le MCD, entre les tables.

Deuxieme casDans tous les autres cas, la relation du MCD se transforme en une table du MLD :

• on cree une nouvelle table correspondant a la relation. Cette table contient toutes leseventuelles proprietes de la relation.

• On integre a cette table les cles primaires des entites impliquees dans la relation.

• On relie les cles primaires des tables avec les cles importees dans la nouvelle table.

• On choisit enfin la ou les cles primaires de la nouvelle table. L’idee generale est que chaqueoccurrence de cette entite doit pouvoir etre identifiee de maniere unique par ses cles primaires.Cela revient en general a choisir comme cles primaires l’ensemble des cles importes des autrestables.

Entite AIdA...

Relation

Entite BIdB...

? : n ? : n

se transforme en :Entite AIdA...

RelationIdAIdB

Entite BIdB...

Cas particuliersQuelques cas particuliers peuvent apparaıtre.

10

Page 145: Access Initiation

• Si la relation est de type 1:1 - 1:1, on fusionne les deux entites en une. Ce type de relationrare est souvent due a un probleme dans la conception du MCD.

• Si la relation est de type 0:1 - 1:1, on traite la relation comme une relation de type 1:1 - ?:?(en ramenant la cle primaire du cote du 1:1)

• Les relations reflexives (entre une entite et elle-meme) se traitent comme les autres relations.

• les relations ternaires (entre trois entites, ou plus), se traitent comme d’habitude. Si l’unedes branches a une cardinalite de type 1:1, on ramene les cles primaires des autres entites etles propriete de la relation dans l’entite ”du cote du 1:1”. Si ce n’est pas le cas, la relationse transforme en table.

2.3.3 Suppression des tables inutiles

La derniere etape consiste simplement a supprimer les tables inutiles. En general (mais pas tou-jours), une table qui ne contient qu’un seul champ (sa cle) est inutile : elle ne nous apporte aucuneinformation. L’exemple le plus classique est une entite de type ”date”.

Exemple : Le MLD correspondant a l’exemple du libraire est le suivant :

œuvreIdœuvreTitre

EcritIdœuvreIdAuteur

AuteurIdAuteurnomprenom

Rel EditionIdœuvreISBN

EditionISBNTitrenb pagesIdEditeur

EditeurIdEditeurNom

ExemplaireIdExemplaireISBN

Etat

Le methode de transformation MCD - MLD :

1. les entites sont transformees en tables (sans modification)

2. les relations sont transformees en fonction de leurs cardinalites

• pour une relation de type 1:1 - ?:? entre une entite A et une entite Bse traduit par une importation de la cle primaire de l’entite B dansla table de A, et on ajoute un lien entre les deux cles,

• une relation autre (sans 1:1 - ?:?) se transforme en table dans laque-lle on retrouve les cles primaires de A et B.

3. les tables inutiles sont supprimes : il s’agit essentiellement des tables aun seul champ (leur cle).

A retenir

11

Page 146: Access Initiation

3 Creation de la base de donnees dans Access

Apres avoir concu un MLD, l’etape finale de la methode Merise consiste a concevoir le Modelephysique de nos donnees. Il s’agit ni plus ni moins que d’integrer le MLD au sein du SGBD(Access). Cette operation comprend trois phases essentielles.

1. Creation de la table : il s’agit simplement d’ouvrir Accesset de choisir ”Nouvelle basede donnees”.

2. Creation des tables : toutes les tables du MLD doivent etre creees. Les donnees peuventeventuellement provenir d’un logiciel exterieur (feuille Excel, document textuel...). Il fautegalement specifier le type de donnee que doit contenir chaque champ de la table et preciserquelle est la ou les cle(s) de la table.

3. Creation des liens : tous les liens qui apparaissent dans le MLD doivent apparaıtre dansla base de donnees.

3.1 Creation des tables dans Access

Il existe deux principales methodes pour creer une table dans Access. Soit la table est creeedirectement dans Access, soit elle provient d’un logiciel exterieur. Nous traiterons ici de la creationdans Access. L’importation sera traitee dans la section suivante. L’objectif final est de creer ausein d’Access toutes les tables presentes dans le MLD.

Tout d’abord, selectionnez ”creez une table dans Access” en mode creation. La table creee estvide. Il faut maintenant creer tous les champs presents dans le MLD. Pour creer un champ, il suffitde cliquer sur une zone vide dans la liste des champs et de rentrer le nom du champ. Il faut ensuitepreciser les differentes proprietes de ce champ presentes soit dans le tableau de la liste des champs,soit dans les onglets en dessous. Les proprietes indiquees d’une asterisque sont obligatoires.

Nom du champ* le nom du champ, tel qu’il apparaıt dans le MLD

Type de donnee*

a choisir parmi (essentiellement) Texte, Numerique, Date/Heure,NumeroAuto (un compteur qui s’incremente automatiquement,tres utile pour les cles), Oui/Non (champ a deux valeur possible :Oui/Non mais aussi Vrai/Faux...) et monetaire.

Taille du champ*pour un champ de type texte, il s’agit de la longueur maximale(en nombre de caractere) d’un element du champ.

Format Permet de definir l’apparence du champ a l’ecran

Masque de saisie

permet l’utilisation d’un masque de saisie qui peut faciliter grande-ment la saisie des donnees. Utile notamment pour les numero detelephone, code ISBN ou autre reference. (voir l’aide F1 , le bou-ton ... contient quelques exemples utiles)

Valeur par defaut Une valeur proposee par defaut pour le champ.

Valide SiCondition pour lesquelles la valeur entree par utilisateur est ac-cepte (par exemple ”H ou F” pour le sexe... voir F1 )

Message si erreurMessage indique a l’utilisateur si son information n’est pas valide,selon la condition entree dans Valide Si

Null Interdit*Accepte-t’on que l’utilisateur laisse eventuellement ce champ vide? Dans le cas d’une cle importee, c’est OUI si la relation dans leMCD etait de type 0:1, NON si c’etait 1:1.

Chaıne vide autorisee*Autorise-t’on une reponse vide (””) ? A priori, laisser la valeurpar defaut.

Indexe* Laisser la valeur par defaut.Compression Unicode* Laisser la valeur par defaut.

Liste de choix

Pratique si on desire que l’utilisateur entre son information dansune liste. Il faut alors preciser soit les elements de la liste, soitle champ de la table dans lequel se trouvent ces informations.Interessant surtout pour les cles importees.

12

Page 147: Access Initiation

important : si deux champs sont de meme natures, ils doivent etre de meme type et de memetaille. Par exemple, dans l’exemple du libraire, le numero d’editeur (champ IdEditeur) doit etrede meme type (texte, nombre ou numeroAuto) et de meme taille de champ qu’il soit dans la tableediteur ou la table edition.

Note : Si un champ a un nombre limite de valeurs (par exemples, les categories sociaux pro-fessionnelles, le statut marital, ...), il vaut mieux considerer une champ de type numerique plutotqu’un champ texte. Preferera stocker 1,2 ou 3 plutot que ”celibataire”, ”marie” ou ”veuf”.

La derniere etape consiste a selectionner la ou les cles de la table. Selectionner ce ou ces champs(s’il y en plusieurs, vous pouvez les selectionner en cliquant sur CTRL ) et appuyez ensuite sur lebouton representant une cle.

Pour creer une table :

• selectionnez Table dans le menu general, puis Nouveau.

• Creez ensuite tous les champs en precisant leur type et leurs proprietes.

• Precisez la cle ou les cles en selectionnant le champ correspondant et encliquant sur le bouton representant une cle dans la barre d’outils.

En pratique

3.2 Importation de table

La deuxieme solution pour creer une table consiste a importer des donnees deja existantes dansune autre base de donnees. Ce peut etre (essentiellement) un fichier texte, un classeur Excel ouune table dans une autre base de donnees Access.

• Pour un fichier texte :

1. s’assurer que le nom du fichier se termine bien par ”.txt” ou ”.tab”, que ses donneessont bien disposees en ligne (un enregistrement par ligne) et que sa premiere ligne estbien soit une ligne de titre, soit une ligne de donnees (supprimer les eventuelles lignessuperflues),

2. creez la table en passant par Fichier,Donnees externes, Importer, optez pourFichier texte et selectionnez votre fichier texte,

3. choisissez si les champs de votre fichier sont separes par un delimiteur (un caracterespecial) ou si elles sont de largeurs fixes (chaque champ prend un certain nombre decaracteres). S’il s’agit de champs delimites, choisissez le delimiteur (le caractere quisepare les champs, souvent la tabulation ou la virgule). S’il s’agit de champ de largeurfixe, indiquez quelles sont les zones qu’occupent chaque champ.

4. Indiquez ensuite le nom et le type de chaque champ. Si la cle primaire n’est pas presentedans votre table, ajoutez la maintenant. Sinon, ne precisez pas de cle tout de suite

5. indiquez le nom de la table et sauvegardez. La table est maintenant cree.

6. Modifiez eventuellement la table. En particulier, selectionnez eventuellement la ou lescle(s) primaire(s).

• Pour un fichier Excel :

1. s’assurer que les donnees sont bien sur une seule feuille Excel qui ne contient que cesdonnees avec une eventuelle ligne de titre. Supprimez les donnees superflues.

2. Creez la table en passant par Fichier,Donnees externes, Importer, optez pourFichier Excel et selectionnez votre classeur Excel, puis la feuille qui contient lesdonnees.

13

Page 148: Access Initiation

3. Pour tous les champs, verifiez et changez eventuellement leur noms et le type de donnees.Indiquez egalement les champs dont vous ne voulez pas dans votre table.

4. Si la cle primaire existe deja dans la table, selectionnez la, sinon vous avez la possibilited’ajouter une cle primaire de type numerotation automatique. Si la table contientplusieurs cles primaires (dans le cas d’une table cree a partir d’une relation du MCDnotamment), ne selectionnez aucune cle pour l’instant.

5. Terminez en donnant un nom a la table, la table est creee.

6. Modifiez eventuellement la table. En particulier, ajoutez les cles primaires le cas echeant.

• Pour un fichier Access :

1. creez la table en passant par Fichier,Donnees externes, Importer, optez pourFichier access et selectionnez votre base de donnee,

2. selectionnez la table qui vous interesse,

3. modifiez eventuellement la table.

3.3 Relations

La deuxieme phase consiste a integrer dans la base de donnes les relations du MLD. Cela se fait enouvrant la fenetre des relations (menu Outils, Relations), en affichant toutes les tables (cf boutondroit) et en dessinant les relations : cliquez sur la cle primaire et faites glisser vers la cle importee.

Access vous demande si vous voulez activer la contrainte d’integrite de votre base. Une con-trainte d’integrite empeche dans votre base des references a des cles inexistantes. Par exemple, sila relation entre livre et auteur a une contrainte d’integrite, il sera impossible d’indiquer a un livreun numero d’auteur inexistant dans la base. En regle general, activez la contrainte, cela eviterades problemes dans votre base.

Deux autres options sont indiquees :

• mettre a jour en cascade : Si cette option est cochee et que vous changez la valeur d’unecle (par exemple le numero d’Auteur dans la table auteur), la valeur de la cle sera modifieepartout (toute reference a l’ancien numero d’auteur sera remplacee). Inversement, si la casen’est pas cochee, il sera impossible de modifier une cle primaire si elle est utilisee dans d’autrestables.

En general, cette option peut etre activee sans risque.

• Si cette option est cochee et que vous supprimez un enregistrement, tous les enregistrementsde la table qui font reference a la cle primaire de cet enregistrement seront supprimes. Dansl’exemple, la suppression d’un auteur entraınerait la suppression de tous ses livres. Inverse-ment, si la case n’est pas cochee, il sera impossible de supprimer un auteur tant que tous seslivres ne sont pas supprimes egalement.

A vous de voir dans quels cas la suppression doit se faire automatiquement ou pas. Parsecurite, vous pouvez laisser cette option desactivee.

Un cas particulier peut arriver : le cas des relations reflexives. Si une relation existe entreune table et elle meme, Access vous interdira de la dessiner directement. Il faudra ajoutez unedeuxieme fois la table (avec le bouton droit de la souris) et indiquer la relation entre la cle importeede la table de depart et la cle primaire de la deuxieme table.

14

Page 149: Access Initiation

Pour creer les relations de votre base :

1. allez dans le menu Outils, Relations pour acceder a la fenetrerepresentant les relations,

2. avec le bouton droit de la souris, choisissez afficher la table etselectionnez les tables de votre base,

3. dessinez les relations en faisant glissez les cles primaires vers les clesimportees,

4. N’oubliez pas d’activer les contraintes d’integrites.

En pratique

15

Page 150: Access Initiation

4 Requetes

4.1 generalites

Les requetes constituent un moyen pratique et automatise d’interroger ou de modifier la base dedonnees. On distingue deux grands types de requetes :

• les requetes de selection : ces requetes selectionnent une partie des donnees de la base,souvent dans le but de les montrer a l’utilisateur. Il s’agit de loin le type de requetes le plusfrequent ;

• les requetes d’action : ces requetes modifient la base de donnees en ajoutant, retirant oumodifiant des enregistrements. On distingue parmi ces requetes les requetes de suppression,de mise-a-jour, de creation de table ou d’ajout.

Toutes ces requetes sont construites de maniere assez similaire. Nous allons commencer parpresenter les requetes de selection en montrant les differentes methodes employees pour creer cesrequetes.

4.2 Requete de selection

4.2.1 Requetes mono-table

Une requete mono-table est la requete la plus simple qui soit : on desire selectionner/montrerles valeurs d’un ou plusieurs champs d’une table. Pour creer une requete de ce type, il faut toutd’abord selectionner la table qui contient les enregistrements qui nous interesse, puis choisir parmiles champs de cette table ceux que l’on desire selectionner.

• Dans la partie Requete du menu principal, selectionnez Nouveau, puisMode creation.

• Selectionnez la table contenant les informations.

• Selectionnez les champs qui contiennent les informations qui vousinteressent en double-cliquant dessus. Verifiez bien que la case affichersoit cochee.

En pratique

4.2.2 Requetes multi-tables

Une requete concerne souvent plus d’une table. Par exemple, dans le cas du libraire, on peut avoirenvie d’afficher la liste des auteurs avec pour chaque auteur, la liste de ses oeuvres. Cette requetefait intervenir deux tables : la table auteur et la table oeuvre. Il y a ici une relation entre ces deuxtables que nous allons exploiter. Nous voulons donc afficher pour chaque auteur X, les oeuvresdont l’auteur est X, par consequent, il faudra utiliser le lien qui existe entre le champ ’idauteur’de la table auteur et le champ ’idauteur’ de la table oeuvre.

Remarque : Il est possible dans ce genre de requetes de faire appel plusieurs fois a la memetable. Supposons par exemple que nous disposons d’une entite employe qui dispose d’une relationreflexive responsable entre employe et employe. Si on desire la liste de tous les employes avec leursresponsables, il nous faudra utiliser deux fois la table employe dans la requetes : l’une d’entre ellerepresentera l’employe, l’autre le responsable.

16

Page 151: Access Initiation

• Dans la partie Requete du menu principal, selectionnez Nouveau, puisMode creation.

• Selectionnez les tables intervenant dans la requete.

• Verifiez que les liens ont tous vraiment du sens dans votre requetes, sup-primez les liens inutiles.

• Selectionnez les champs a afficher.

En pratique

4.2.3 Requetes avec critere

Lorsqu’une requete ne s’interesse pas a tous les enregistrements d’une table de la base de donnees,mais seulement a certains, il nous faut utiliser des criteres pour limiter la selection. Les criteress’indiquent dans la ligne du meme nom.

Supposons que nous nous desirons afficher toute la liste des auteurs dont le nom est ”Dupont”.Nous allons commencer par ecrire une requete qui affichent tous les auteurs, puis nous allonsrestreindre cette requete en selectionnant le champ ”Nom” et en indiquant dans la zone ”Criteres”la valeur ="Dupont" (ou simplement "Dupont").

Access nous permet d’utiliser d’autres operateurs mathematiques que =.

Operateur Signification

= Egal<> Diferent< Inferieur<= Inferieur ou egal> Superieur>= Superieur ou egal

On peut egalement utiliser les operateurs suivants

Operateur Signification Exemple

EntreSelectionne les enregistrements pour lesquels la valeur d’unchamp est comprise dans un intervalle de valeurs.

Entre "A" et "C"

Entre 10 et 20

Entre #01/01/04# et

#31/12/04#

DansSelectionne les enregistrements pour lesquels la valeur d’unchamps est comprise dans une liste

Dans("Lille";"Roubaix")

EstSelectionne les enregistrements pour lesquels un champ estvide ou non

est NULL

est pas NULL

CommeSelectionne les enregistrements contenant une donnee ap-proximative Comme ”rue*”

PasSelectionne les enregistrements ne correspondant pas aucritere

Pas Entre ”A” et ”C”

Il est possible de faire reference a un autre champ dans les criteres. Pour cela, utilisez le nom duchamp entre crochets (Exemple : [Nom]. Si deux tables possedent ce champ, on doit alors preciserla table en la mettant egalement entre crochet et en separant la table et le champ par un point(exemple : [Clients].[Nom]).

Par exemple, la requete suivante selectionne les livres dont l’auteur est le meme que celui specifiedans la table Auteur.

17

Page 152: Access Initiation

Champ : IdAuteurTable : Livre

Tri :Afficher :Critere : [Auteur].[IdAuteur]

Un certain nombre de fonctions sont egalement disponibles. En voici quelques unes.

Pour les texte

Nbcar nombre de caractere d’un texteNbcar([Nom]) = ”4” selectionne lesnoms de 4 caracteres

Droiteretrouve les caracteres a droite d’untexte

Droite([Nom]; 2) = ”se” selectionneles noms se terminant par ”se”

Gaucheretrouve les caracteres a gauche d’untexte

Droite([Nom]; 2) = ”mo” selectionneles noms commencant par ”mo”

Extracchaıne retrouve les sous-chaınes d’un texte

ExtracChaıne([Nom]; 2; 3) = ”ach”selectionne les noms qui contiennent lachaıne ”ach” a partir de la deuxiemelettre (”machin” par exemple)

Pour les dates et heures

Moispermet d’avoir le mois d’une date (il ex-iste aussi jour et annee)

Mois([DateCommande]) = 6 Afficheles commandes du mois de Juin.

diffdatepermet de faire une difference entredeux dates

DiffDate(”j”; [Date1]; [Date2]) >100 retrouve les elements pour lesquelsil y a plus de 100 jours entre date1et date2 (mettre ”m” pour le mois et”aaaa” pour l’annee a la place de ”j”).

AjDatepermet de faire des operations sur lesdates

AjDate(”j”;−10; [DateLivraison])fournit une date anterieure de 10 joursa la dte de livraison.

Aujourdhuipermet d’avoir la date du jour (voiraussi maintenant pour avoir l’heureactuelle)

= Aujourdhui()) permet deselectionner un champ date dontla valeur correspond a la date du jour.

Pour les champs numeriques ou monetaires

Ent calcule la partie entiereEnt([Prix]) = [Prix] selectionne lesprix ronds (sans centimes).

Abs calcule la valeur absolueAbs([V ariation]) < 10 selectionne lesvariation entre -10 et +10.

Access autorise la combinaison de plusieurs criteres. Si ces criteres sont tous sur la memeligne, la requete selectionnera les enregistrements qui repondent a tous les criteres a la fois. Sices criteres sont sur des lignes differents (lignes ”ou”), la requete selectionnera les enregistrementscorrespondant a l’une de ses lignes.

Champ : Ville Age

...

Criteres : ”Roubaix” > 50

Ou :

Champ Ville Age

...

Criteres : ”Roubaix”

Ou : > 50

Champ Ville Age

...

Criteres : ”Roubaix” > 50

Ou : ”Lille”

Ici, par exemple, la premiere requete selectionnera les habitants de Roubaix de plus de 50 ans.La deuxieme requete selectionnera les habitants de Roubaix (indifferemment de leur age) et lespersonnes de plus de 50 ans (meme n’habitant pas Roubaix). La troisieme requete selectionne leshabitants de Roubaix de plus de 50 ans ainsi que tous les habitants de Lille.

La combinaison de critere peut aussi etre realisee a l’aide des operateurs booleens : OU, ET ouNON. La requete suivante permet de selectionner les habitants de Lille et de Roubaix (soit, ceuxdont le champ ville vaut ”Lille” ou ”Roubaix”)

18

Page 153: Access Initiation

Champ : Ville...

Criteres : ”Roubaix” Ou ”Lille”Ou :

Enfin, il est possible de demander a l’utilisateur d’entrer un critere. Pour cela, mettre [truc] dansles criteres (eventuellement dans une formule) ou truc est un nom quelconque qui ne correspondpas a un nom de champ. L’exemple suivant permet de selectionner un auteur dont le nom estdemande a l’utilisateur.

Champ : NomTable : Auteur

Tri :Afficher :Critere : [Quel Nom]

4.2.4 Requetes a champs calcules

Si on desire afficher une information qui n’est pas presente dans la base, mais qui est issue d’uncalcul a partir d’autres champs, il est possible d’utiliser des formules pour creer ce nouveau champ.Ce champ s’appelle alors un champ calcule. Pour cela, dans la zone de champ, on ecrit nom du

champ : formule ou nom du champ est le nom que l’on desire donner a notre nouveau champ etformule est une formule Access (ecrite avec les memes operateurs que dans le point precedent).

Par exemple, la requete suivante permet d’avoir l’age d’une personne.

Champ : Age : DiffDate(”aaaa”,[Date],Aujourdhui())Table :

Tri :Afficher :Critere :

4.2.5 Requetes de regroupements

La requete de regroupement est un important outil d’analyse et de synthese. Un regroupementpermet de faire un calcul sur un ensemble de valeurs d’un champ eventuellement en fonction d’unautre.

Prenons par exemple les donnees ci-dessous contentant le chiffre d’affaire de plusieurs agencesd’une societe a differentes dates.

Date Agence CA06/01/2003 Nord 927,02 e06/01/2003 Sud 1 098,46 e06/01/2003 Est 561,29 e07/01/2003 Nord 1 385,55 e07/01/2003 Est 681,09 e07/01/2003 Sud 1 401,56 e

Pour juger des performances des differentes agences, on peut avoir envie de faire des calculs surle chiffre d’affaire en fonction de differentes donnees :

• par date : on peut avoir le chiffre d’affaire total par jour. le ”par jour” est un indice fort duregroupement : on fera un regroupement sur la date, et un somme sur les chiffres d’affaires.Notons que la notion d’agence ne nous interesse pas, elle ne devra pas apparaıtre dans larequete

19

Page 154: Access Initiation

• par agence : en sommant les chiffres d’affaires. Le regroupement se fait sur l’agence, onfait une somme sur le CA. Encore une fois la date ne doit pas apparaıtre dans la requetepuisqu’elle ne joue aucun role dans le regroupement.

Lorsqu’on fait un regroupement, comme dans les deux exemples ci-dessus, il y a donc deux typesde champs qui nous interessent :

• les champs sur lesquels le regroupement porte (ici date et agence)

• les champs sur lesquels un calcul s’effectue

Tous les autres champs ne nous interessent pas et n’ont pas a apparaıtre dans la requete. Enparticulier, si on desire ajouter une critere dans la requete sur un champ qui n’est ni un champ deregroupement, ni un champ de calcul, cela ne sera pas possible (directement en tout cas, voir lesrequetes en cascade).

Differentes operations sont possibles, en voici quelques-unes :

• Somme : effectue la somme de tous les champs

• Compte : calcule le nombre de fois ou un champ apparaıt. A ne pas confondre avec somme,dans les requetes ci-dessus, il s’agit bien d’une somme de CA. Un compte indiquerait parexemple 3 (il y a 3 chiffres d’affaire pour chaque date).

• Moyenne

• Var, EcartType : variance et ecart type.

• Minimum, Maximum : la plus petite/grande valeur

• Premier, Dernier : le premier/dernier de la liste (souvent couple avec des tris)

Notons que bien evidemment la plupart de ces operations n’ont de sens que sur des donnees detype numerique ou monetaire.

Pour creer une requete de regroupement :

1. Commencez par creer votre requete en ne faisant intervenir que deschamps sur lesquels vous ferez une calcul ou un regroupement (si vousavez besoin d’autres champs, il vous faudra plusieurs requetes, voir lasection ”requete en cascades”),

2. Cliquez sur le bouton droit de la souris dans la zone de description devotre requete et selectionnez ”Totaux”,

3. Pour chacun des champs, choisissez l’operation que vous comptez ef-fectuer, ou ”Regroupement” si le champ est un champ sur lequel vousallez faire un regroupement (il est obligatoire de renseigner cette partie :si vous pensez qu’il ne faut rien mettre, c’est probablement que le champqui vous interesse n’a pas a apparaıtre dans la requete).

En pratique

20

Page 155: Access Initiation

4.2.6 Requetes en cascades

Il arrive souvent qu’une requete ne puisse pas realiser exactement ce que vous vouliez. Dans cecas, il ne faut pas avoir peur de decomposer cette requete en plusieurs. Il est possible en effetde construire une requete en ouvrant une autre requete a la place d’une table. Pour cela, lorsdu choix des tables necessaires pour une requete, choisissez l’onglet ”Requete” et selectionnez larequete dont vous avez besoin.

Une demarche generale pour creer une requete peut maintenant etre proposee :

• commencez a concevoir votre requete principale,

• s’il vous manque une information, creez la requete qui indiquera cette information,

• repetez cette operation jusqu’a ce que votre requete principale ait tout ce dont elle a besoin.

Un exemple, supposons qu’une liste de personne soit indiquee avec leur nom, prenom et leur datede naissance. On desire connaıtre le nom de la ou des personne(s) les plus ages.

• la requete sera une requete simple avec un critere : le champ nom sera affiche et la date denaissance doit etre egale a la plus petite date de naissance.

• L’information ”la plus petite date de naissance” n’est pas connue. Pour avoir cette infor-mation, il nous faut donc creer une requete : ce sera une requete par regroupement qui faitsimplement un ”min” sur l’ensemble des dates de naissance.

• Nous pouvons maintenant creer notre requete principale en se basant sur la requete qui nouspermet d’avoir la date de naissance la plus ancienne.

Important : Quand vous envisagez de faire des requetes en cascade, pensez a afficher la cleprimaire de vos tables dans toutes vos requetes : les liaisons entre vos requetes se feront plusfacilement et vous ferez moins d’erreur.

4.2.7 Requete d’analyse croisee

Faire une analyse croisee consiste a effectuer une synthese des donnees sur plusieurs niveaux. Celaressemble a bien des points de vue a la creation d’un Tableau Croise Dynamique (TCD) en Excel.Dans Access, l’analyse croisee constitue une forme particuliere de requete de selection.

trois colonnes, et possedant des caracteristiques particulieres. L’une des colonnes doit comporterdes doublons, sur lesquels sera effectuee l’operation de regroupement (la colonne ”U” de la figureci-dessous). Une autre colonne (la colonne ”W” de la figure ci-dessous) doit comporter un nombrerestreint de valeurs distinctes, qui serviront a creer les nouvelles colonnes.

U V Wa 1a 2a 3b 1b 2c 1c 2c 3

U W1 W2 W3abc

On peut ainsi realiser des tableaux en deux dimensions pour visualiser l’evolution d’une donnees.Trois types de champs sont importants :

• entete de ligne : le champ qui sert a etiqueter les lignes,

21

Page 156: Access Initiation

• entete de colonne : le champ qui sert a etiqueter les colonnes,

• valeur : le champ qui va etre a l’interieur du tableau ; il faut lui associer une operation (voirrequetes de regroupement).

Pour creer une requete d’analyse croisee :

1. creez une requete de selection contenant les donnees

2. transformez la en requete d’analyse croisee en allant dans le menu typede requete et en selectionnant Analyse Croisee,

3. indiquez quel champs utiliser comme entete de ligne, entete de colonneet valeur (dans analyse)

En pratique

4.2.8 Requetes en mode SQL

Le SQL (Structured Query Language) est le veritable langage utilise pour faire des requetes nonseulement par Access, mais aussi par la quasi totalite des SGBD.

Il y aurait beaucoup a dire sur le SQL, et nous ne rentrerons pas ici dans les details. Nous nousbornerons a montrer que chaque requete realisee graphiquement en Access a une traduction enSQL (l’inverse n’est pas vrai), et qu’Access permet d’ecrire des requetes en SQL.

Le SQL est un langage assez simple qui permet d’ecrire une requete sous forme de texte. Parexemple, la requete SQL suivante permet de selectionner les noms de l’auteur ayant ecrit ”Franken-stein”.

SELECT AUTEUR.nom FROM AUTEUR, OEUVRES where AUTEUR.idAuteur = OEUVRES.idAuteur AND

OEUVRES.titre=’Frankenstein’;

En quelques mots : la requete SQL indique qu’il affiche le champ nom de la table AUTEUR,qu’il a besoin pour cela des tables AUTEUR et OEUVRES, qu’il utilise le lien AUTEUR.idAuteur -

OEUVRES.idAuteur et qu’il a un critere : OEUVRES.titre=’Frankenstein’.

Pour passer en ’Mode SQL’ :

• creez une requete normalement ou ouvrez une requete existante ;

• au moyen de l’icone d’affichage (situee sous fichier, completement agauche de la barre d’outils), selectionnez le ”Mode SQL” ;

• vous pouvez voir la traduction SQL de votre requete, et eventuellementmodifier votre requete ;

• la requete modifiee ne peut eventuellement plus etre vue dans Access(si elle ne peut pas etre representee graphiquement). On peut toutefoistoujours l’executer (bouton avec point d’exclamation).

En pratique

4.3 Requetes d’actions

Jusqu’a present, les requetes que nous avons vu sont toutes des requetes qui permettent de consulterla base de donnees. Il est egalement possible de faire des requetes qui vont modifier la base dedonnees :

22

Page 157: Access Initiation

• en supprimant des enregistrement,

• en les modifiant,

• en en ajoutant,

• ou en creant de nouvelles tables.

Nous voyons dans cette section comment realiser ces differentes operations. Il s’agit en reglegenerale de creer une requete de selection (avec les methodes vues ci-dessus) et en modifiant cesrequetes pour les transformer en requetes d’action.

4.3.1 Requetes de suppression

Une requete de suppression permet d’effacer des informations de la base de donnees. La conceptiond’une requete de suppression se fait tres simplement en deux temps :

• creation d’une requete de selection qui va selectionner les enregistrements a supprimer,

• transformation de la requete en requete de suppression.

Faıtes tres attention lorsque vous utilisez ce genre de requete ! Cette operation est irreversible etpar le jeu des relations, les suppressions peuvent se repercuter en cascade dans d’autres tables sil’option correspondante a ete choisie lors de la creation de la relation (voir la section sur l’integritereferentielle).

Pour concevoir une requete de suppression :

• creer une requete de selection qui va selectionner les enregistrements asupprimer,

• transformez la en requete de suppression en allant dans le menu type derequete et en selectionnant Suppression,

• vous pouvez passer en mode ”feuille de donnees” pour afficher les enreg-istrements qui vous etre supprimes (sans les supprimer reellement),

• pour executer la requete (et supprimer effectivement les enregistrements)appuyez sur le bouton ”!” ou allez dans le menu Requete / Execution,soit dans la liste des requetes, double-cliquez sur votre requete.

En pratique

4.3.2 Requetes de mise a jour

Une requete de mise a jour permet de modifier les valeurs de certains enregistrement de la table.Il s’agit probablement du type de requete d’action le plus courant.

La conception d’une requete de mise a jour se fait en deux temps :

1. Conception de la requete comme d’une requete de selection. On commence par creer unerequete de selection qui va permettre d’indiquer quels sont les enregistrements qui vont etremodifies.

2. Modification des enregistrement : on indique quels sont les nouvelles valeurs des champsindiques.

23

Page 158: Access Initiation

Attention : il n’est pas possible d’utiliser des criteres dans une requete de mise a jour. Si vousavez besoin d’utiliser des criteres, utilisez alors des requetes en cascade : une requete de selectionchoisit les enregistrements qui vous interessent, et une requete de mise a jour ouvre la requete deselection et fait les modifications.

Pour faire une requete de mise-a-jour :

1. creez une requete en mode selection qui affiche les champs qui serontmodifies,

2. transformez cette requete en requete de mise a jour a partir du menuType de requete,

3. Indiquez pour champs, sa nouvelle valeur (qui peut eventuellement etreune formule).

4. testez en passant en mode feuille de donnees et executez avec le bouton”!”,

En pratique

4.3.3 Requetes de creation de table

La requete de creation de table se fait egalement tres simplement. Le resultat d’une requete deselection peut se voir sous la forme d’une table : la requete de creation de table cree simplementcette table reellement.

Il est a noter que ce type de requete ne devrait servir que tres rarement, essentiellement lorsqu’ils’agit de modifier une base de donnees ou de creer une base de donnees a partir d’une autre (envue de faire de l’importation de donnees).

Pour faire une requete de creation de table :

1. creez une requete en mode selection qui affiche les informations qui serontpresentes dans votre table,

2. transformez cette requete en requete de creation de table a partir dumenu Type de requete,

3. testez en passant en mode feuille de donnees et executez avec le boutond’execution (”!”),

4. a l’execution le systeme demandera un nom de table.

En pratique

4.3.4 Requetes d’ajout

Ce type de requete ajoute un groupe d’enregistrements d’une ou plusieurs tables a la fin d’une oude plusieurs autres tables. Sa creation est egalement tres aisee :

• on cree une requete de selection comprenant les enregistrement a ajouter,

• on transforme la requete en requete d’ajout,

• et a l’execution de la requete, on specifie la table a laquelle sont ajoutees les donnees.

Il faut bien sur que la requete de selection ait bien les memes champs que la table a laquelle lesdonnees seront ajoutees.

24

Page 159: Access Initiation

Pour faire une requete d’ajout :

1. creez une requete en mode selection qui affiche les informations qui serontajoutees,

2. transformez cette requete en requete d’ajout a partir du menu Type derequete,

3. testez en passant en mode feuille de donnees et executez avec le boutond’execution (”!”),

4. a l’execution le systeme demandera le nom de table a laquelle serontajoutees les donnees.

En pratique

25

Page 160: Access Initiation

5 Finalisation de la base

Une fois la base de donnees terminee, l’utilisateur final ne devrait pas avoir a manipuler directementles differentes tables et requetes. Il manipulera la base a l’aide d’etats et de formulaires. Un etatpermet une presentation agreable des donnees de la base de donnees et propose ainsi une vuesoit sur une table de la base, soit sur les donnees selectionnees par une requete de selection. Lanavigation parmi ses differents elements se fait classiquement a l’aide d’un menu.

5.1 Etats

Un etat sert a visualiser les donnees. Il ne permet aucune modification. Les etats sont en particuliertout a fait adaptes a l’impression des donnees : ils fournissent une presentation sous forme de feuillespretes a etre imprimes.

La creation d’un etat se fait dans la section ”etat” puis ”Nouveau”. Differentes methodes decreation sont proposees :

• Mode creation : creation de l’etat sans aucune aide.

• Assistant etat : conseille pour la plupart des utilisations.

• Etat Instantane Colonnes / Tableau : permet la creation tres rapide d’etats, mais sansaucune option de personnalisation. L’assistant colonnes permet une presentation sous formede colonnes avec a gauche le nom du champ et a droite sa valeur, l’assistant tableau genereune presentation proche de celle des tables (noms des champs en haut puis la liste des valeurs).

• Assistant graphique : pour creer un graphique (non aborde ici).

• Assistant Etiquette : genere des etats sous forme d’etiquettes. Non aborde ici, la creationse fait cependant d’une maniere tres similaire a celle des etats classiques.

Nous verrons ici uniquement l’utilisation de l’assistant etat. Celui-ci nous pose differentes ques-tions :

• Choix des champs : tout d’abord, selectionnez une table ou une requete puis faites glisserles champs qui seront affiches dans l’etat. Notez que si les champs qui vous interessentappartiennent a plusieurs tables ou requetes, alors il vaut mieux commencer par creer unerequete qui regroupe ces differentes informations et batir l’etat sur cette nouvelle requete.

• Niveau de regroupement : si l’etat necessite un regroupement, c’est ici qu’on l’indique.Par exemple, si on desire la liste des livres par auteurs, nous choisirons un regroupementpar auteur (sur IdAuteur). Notez que si tous les champs ne sont pas a leur bon niveaude regroupement, ce sera rectifiable par la suite (par exemple, le regroupement par IdAu-teur laissera le nom de l’auteur au meme niveau que les informations sur les livres, ce serarectifiable plus tard).

• Le tri : on choisit les champs a partir duquel les lignes de details seront tries (les lignes dedetails sont les lignes qui seront affiches pour chaque enregistrement).

• La presentation : on choisit ici le modele de presentation de l’etat.

• Le style : on choisit les differents elements de style (couleur,...) parmi une liste de quelqueschoix.

• Nom de l’etat : le nom avec lequel l’etat sera stocke.

L’etat est ensuite cree.

26

Page 161: Access Initiation

5.2 Modification de l’etat

Un etat etant cree, il est possible de le modifier. Pour cela, cliquez sur le bouton ”Modifier” apresavoir selectionne votre etat (ou passez en mode ”Creation”).

On observe alors les differentes parties de l’etat :

• l’entete de l’etat : c’est ce qui va etre imprime au debut de l’etat ; ce ne sera imprimequ’une seule fois.

• l’entete de page : c’est ce qui est affiche au debut de chaque page

• l’entete de groupe : c’est ce qui va etre imprime au debut de chaque groupe, un groupeetant l’un des niveaux de regroupements choisis lors de la creation de l’etat

• le detail : c’est ici que vont etre imprimes chaque ligne de l’etat

• le pied de groupe : c’est ce qui va etre imprime a la fin de chaque groupe,

• le pied de page : ce qui est imprime en bas de chaque page (souvent la date et le numerode pages),

• le pied d’etat : imprime une seule fois a la fin du document.

Notez qu’il peut y avoir plusieurs groupes (s’il y avait plusieurs niveaux de regroupements) etqu’il est possible que certaines section indiques ici manquent (pied de groupe est souvent absent),on peut choisir les sections a afficher a l’aide du bouton ”Trier/Regrouper”.

Par exemple, si on utilise un etat qui affiche tous les auteurs, avec tous leurs livres (avec doncun regroupement sur Auteur), l’impression du document se fait ainsi :

Entete de l’etat

Entete de page

Entete de groupe 1 (Auteur1)

Detail : premier livre de Auteur1

Detail : deuxieme livre de Auteur1

Detail : troisieme livre de Auteur1...

Entete de groupe 1 (Auteur1)

Entete de groupe 2 (Auteur2)

Detail : premier livre de Auteur2

Detail : deuxieme livre de Auteur2

Detail : troisieme livre de Auteur2...

Entete de groupe 2 (Auteur2)

...

Pied de page

Pied de l’etat

A partir de la, il est possible de faire differents types de modifications :

• deplacer un element, y compris d’une section a une autre,

• supprimer des elements,

27

Page 162: Access Initiation

• ajouter des elements de decoration (lignes, boıtes, images, textes), pour cela appuyer sur lebouton ”boıte a outils”,

• les sauts de pages peuvent egalement etre ajoutes (voir propriete des differentes sections, engeneral dans ”pied de groupe”).

5.3 Creation d’un formulaire

Un formulaire permet de modifier et d’afficher le contenu d’une facon bien plus agreable que lemode ”feuille de donnees” qui ne permet qu’un affichage en lignes et colonnes.

De plus, le mode ”feuille de donnees” ne permet l’affichage et la modification d’informationsne provenant que d’une seule table, le formulaire peut nous permettre de manipuler au memeendroit des informations provenant de plusieurs tables simultanement. Par exemple, dans la basede donnees du libraire, il est possible au sein d’un meme formulaire d’ajouter ou modifier lesinformations sur un auteur et sur l’ensemble des oeuvres qu’il a ecrit.

La creation d’un formulaire se fait d’une maniere tres similaire a la creation d’etat. Apres avoirfait ”nouveau formulaire”, plusieurs choix vous sont proposes.

• Mode creation : la creation se fait sans aucune aide.

• Assistant formulaire : Access nous guide pas a pas dans la creation du formulaire

• formulaires instantanes (Colonnes / Tableau / Feuille de donnees) : cree un for-mulaire rapidement pour une table, sans poser de questions. L’aspect est rudimentaire et nedonne pas de grandes possibilites de personnalisations

• Assistant graphique et tableau croise dynamique : non aborde ici.

Si vous creez un formulaire en utilisant la methode ”Assistant formulaire”, Access vous demandeles renseignements suivants :

• La table : quelle est la table qui contient les informations que l’on souhaite modifier.

• Les champs : quels sont les champs que nous desirons afficher dans le formulaire (engeneral tous, mais pas toujours. Il n’est par exemple pas necessairement utile de choisir lacle si celle-ci est issu d’un champ de type NumeroAuto).

• La presentation : la presentation generale de l’etat, les plus souvent utilises etant ”Colonnesimple” et ”Tabulaire”.

• Le style : le style general (couleur, fond...).

• Le nom : le nom de l’etat.

Une autre methode pour creer le formulaire consiste a utiliser l’un des assistants ”formulaireinstantane”. Pour cela, a la creation, choisissez l’un de ces assistants plutot que l’assistant standard:

• l’assistant formulaire instantane : Colonnes cree un formulaire standard avec un enreg-istrement par feuille,

• l’assistant formulaire instantane : Tableau cree un formulaire sous la forme d’un tableaureprenant l’ensemble des enregistrements,

• l’assistant formulaire instantane : Feuille de donnees permet la creation immediate deformulaire reprenant la meme presentation que les feuilles de donnees (c’est-a-dire moche).

L’assistant vous demande simplement la table ou la requete a partir de laquelle vous voulez creervotre formulaire et le cree instantanement. Ceci a l’avantage de permettre une creation tres rapidemais ne propose pas beaucoup de possibilite de personnalisation.

28

Page 163: Access Initiation

5.4 modification d’un formulaire

Le formulaire etant cree, il est ensuite possible de le modifier. La modification d’un formulaire ensuivant une methode similaire a celle utilisee pour modifier un etat.

Pour modifier un formulaire, il faut passer en mode creation (dans le menu affichage ou parl’icone mode creation). On voit alors la structure du formulaire, a partir de la, il est possible derealiser les operations suivantes :

• deplacer ou redimensionner un element,

• supprimer des elements,

• changer les proprietes des elements (en cliquant sur l ’element avec le bouton droit de lasouris)

• ajouter des elements (bouton, ligne, zone de texte...), pour cela appuyer sur le bouton ”boıtea outils”,

Lorsqu’on ajoute un element, il est possible de les ajouter directement pour ensuite modifierl’element, ou, plus simplement, en utilisant un assistant. Pour cela, selectionnez sur la boıtea outils le bouton representant une ”baguette magique” avec de creer l’element. On trouve leselements suivants :

• intitule : il s’agit d’une zone de texte qui ne sert qu’a la presentation.

Pour le creer, selectionnez le bouton correspondant (”Aa”) et cliquez sur le formulaire al’endroit ou vous voulez placer votre intitule et ecrivez votre texte.

• zone de texte : une zone de texte est une zone qui sert a afficher la valeur d’un champ. Ilest egalement possible d’ajouter des champs calcules a partir d’autres champs presents dansle formulaire.

Pour la creer, selectionnez le bouton correspondant (”ab|”) et cliquez sur le formulaire al’endroit ou vous voulez placer votre zone de texte. Si vous avez active l’assistant (”baguettemagique”), on vous demandera alors a quel champ doit correspondre la zone de texte. Sinon,dans la zone de texte, indiquez le champs qui vous interesse ("[salaire]" par exemple, ou"=[salaire] + [commission]" si vous voulez une formule).

• bouton bascule, bouton d’option et case a cocher : ils fonctionnent de la mememaniere que les zones de textes, mais pour des champs de type Oui/Non.

• groupe d’options : un groupe d’options vous permet de choisir entre differents choix al’aide de boutons ou de cases. Le groupe d’options est particulierement adapte aux champscontenant un nombre limite de valeurs numeriques ”codes” (par exemple, les categories so-ciaux professionnelles).

Pour le creer, utilisez l’assistant, selectionnez le bouton correspondant et cliquez sur le for-mulaire a l’endroit ou vous voulez placer votre groupe d’options. L’assistant vous demandequelles sont les differentes etiquettes de votre liste (”patron”, ”cadre moyen”, ”ouvrier”,...). Ils’agit de la valeur affichee dans le groupe d’options. On vous demande ensuite une eventuellevaleur par defaut, puis la valeur correspondante a chacune des etiquettes. Il s’agira de lavaleur contenue reellement dans le champ. On vous demande ensuite le champ correspondantau groupe d’options (celui dans lequel l’information sera stockee) et le style (bouton ou case).La derniere question concerne la legende de votre groupe d’options.

• liste deroulante : permettent le choix d’une valeur dans une liste.

Pour la creer, utilisez l’assistant, selectionnez le bouton correspondant et cliquez sur le for-mulaire a l’endroit ou vous voulez placer votre liste deroulante. De la, trois choix vous sontproposes : le premier indique que la liste est remplie a partir des valeurs d’une table ou d’une

29

Page 164: Access Initiation

requete, la deuxieme correspond a des valeurs remplies ”a la main”, et la troisieme offre unefonction de recherche que nous n’aborderons pas ici.

Si on choisit le premier choix, l’assistant commence par demander la source des informations(une table ou une requete). Il demande ensuite le ou les champs concernes. Il est possiblede mettre plusieurs champs : le champ qui contient reellement l’information a stocker et unou plusieurs autres champs plus parlants qui serviront a renseigner l’utilisateur. On souhaiteainsi souvent faire une liste sur un ensemble de cles primaires (IdAuteur par exemple), alorsqu’on prefere afficher d’autres informations (nom et prenom de l’auteur). Si on a choisitplusieurs champs, l’assistant demande s’il faut masquer ou non le premier champ. Il demandeensuite la largeur souhaitee pour la liste et enfin le champ qui contiendra les donnees de laliste.

Avec le second choix, la demarche est similaire. On commence la par remplir la liste desvaleurs.

• bouton de commande : un bouton de commande permet de realiser certaines operationspar le biais d’un bouton. Il est ainsi possible de passer d’un enregistrement a un autre,d’effectuer des recherches, d’ouvrir un autre formulaire ou un autre etat.

Pour le creer, utilisez l’assistant, selectionnez le bouton correspondant et cliquez sur le for-mulaire a l’endroit ou vous voulez placer votre bouton. l’assistant vous demandera ensuitequel operation vous voulez realiser avec votre bouton et la presentation qu’il aura.

• boıte, trait, image : il s’agit d’elements purement graphiques qui peuvent ameliorer lapresentation de votre formulaire.

• Onglet : ce controle offre deux avantages. Il regroupe les informations a une meme place etprend moins d’espace a l’ecran. Il suffit de cliquer sur l’onglet pour voir les informations dela categorie choisie.

• Sous formulaire / Sous etat : cet element permet d’integrer un sous formulaire. Ce pointsera aborde plus loin.

• autre controles : Access contient egalement d’autres controles qui permettent d’autrestypes de saisie, par exemple le controle Calendrier pour les dates

5.5 Sous formulaire

Les sous formulaires sont un peu aux formulaires ce que sont les regroupements aux etats. Ilspermettent d’editer plusieurs tables en meme temps. Supposons par exemple que, dans l’exempledu libraire, on desire avoir un formulaire qui affiche tous les renseignements concernant les auteurs(nom, prenom, ...) ainsi que la liste des livres qu’ils ont ecrits. L’operation peut se faire ”a lamain” ou a l’aide de l’assistant. Nous presentons ici deux methodes, une simple et rapide, une unpeu moins simple (mais tout de meme) qui permet de faire plus de choses.

Methode simple

La creation du formulaire se fait de la maniere suivante.

1. Creez une requete qui contient les informations que devra contenir le formulaire (dansl’exemple, il s’agira d’une requete contenant tous les auteurs et tous les livres de ces au-teurs).

2. Creez un formulaire en se basant sur cette requete a l’aide de l’assistant.

3. Suivez l’assistant. La procedure est la meme que pour un formulaire simple a une nuancepres. On vous demande comment vous souhaitez afficher vos donnees, choisissez le niveau deregroupement voulu (comme pour un etat). Choisissez ”formulaire avec sous formulaire”.

30

Page 165: Access Initiation

Methode un peu moins simple (mais tout de meme)

La methode presentee ici a le meme resultat que ci-dessus mais permet eventuellement plus desouplesse. On peut par exemple en suivant cette methode avoir plusieurs sous-formulaires au seind’un meme formulaire.

Nous reprenons ici le meme exemple : on desire tous les auteurs avec tous les livres de chaqueauteur.

1. creez la requete du sous-formulaire : il s’agira ici d’une requete affichant tous les livres avecleur auteur (IdAuteur). Les donnees qui nous interesse sont effectivement les informations surles livres, et le champ IdAuteur nous permettra de faire le lien avec le formulaire principal.

2. Creez le sous formulaire : il s’agira d’un formulaire classique sur la requete precedente. Cesera ce formulaire qui sera integre dans le formulaire principal.

3. Creez le formulaire principal.

4. Modifiez ce formulaire : a l’aide du bouton ”Sous formulaire” de la barre d’outils, importezle sous formulaire (en ayant active la ”baguette magique”). L’assistant vous demanderacomment lier le sous-formulaire avec le formulaire : dans notre exemple, il s’agit de faire unlien par le champ IdAuteur (on affichera ainsi uniquement les livres dont l’auteur est celuidu formulaire).

5.6 Menus et autres personnalisations

5.6.1 menu general

Une etape importante de la finalisation de la base de donnee est la conception d’un menu. Cemenu permettra a l’utilisateur de retrouver facilement les differents elements dont il a besoin sansavoir a manipuler directement la base de donnee. Idealement, l’utilisateur doit pouvoir realisertoutes les operations dont il a besoin a partir du menu. La methode est la suivante.

1. Commencez par reflechir a ce que vont contenir toutes les differentes pages de votre menu.

2. Creez votre menu principal. Pour cela, aller dans ”Outils/Gestionnaire du menu general”.Acceptez d’avoir un menu general.

3. Vous avez maintenant acces a une fenetre dans laquelle se trouve un element (menu general).Dans cette fenetre se trouveront toutes les pages de votre systeme de navigation. Creez-les(avec Ajouter)

4. Vous pouvez maintenant les modifier. Chaque page de menu contient differents elements.Chaque element sera represente par un bouton qui effectuera une action precise. En partic-ulier, on peut :

• aller sur une autre page du menu,

• ouvrir un etat,

• ouvrir un formulaire en mode creation (s’ouvre sur une page blanche) ou en modemodification (s’ouvre sur le premier enregistrement),

• Quitter l’application...

Attention : Access semble etre tres sensible aux manipulations sur son menu. En theorie, vouspouvez consulter le menu qui est present dans les formulaires. Evitez de trop modifier ce menu,et surtout ne l’effacez pas sous peine de voir Access se ”planter” ou vous empecher de creer unnouveau menu...

31

Page 166: Access Initiation

5.6.2 Demarrage de l’application

On peut ensuite personnaliser d’avantage notre application en indiquant ce que va voir l’utilisateurlorsqu’il va demarrer notre base de donnees. Pour cela, allez dans outilse.marrage. De la on peut(entre autres) :

• indiquer le nom du menu qui est affiche lors du demarrage de l’application,

• l’icone de l’application,

• le nom de l’application

32

Page 167: Access Initiation

Leçon – exercice : exemple d’utilisation d’une base de données Le but de cette leçon est de vous montrer un exemple d’utilisation d’une base de donnée (carnet d’adresse, listes fournisseurs, listes d’articles, etc. les possibilités sont illimitées). Il est recommandé de faire cet exercice en suivant la leçon : cliquez ici pour télécharger l’exercice. L’exemple choisi est le suivant : à partir d’un choix dans une liste déroulante qui contient le nom des contacts d’un carnet d’adresse, l’adresse complète sera affichée automatiquement sur une lettre à l’emplacement du destinataire. Entrez la valeur « 1 » dans A1. Sélectionnez une cellule quelconque, puis insérez-y une fonction RECHERCHEV :

Complétez les paramètres de la fonction (voir image ci-dessous) : Valeur_cherchée = $A$1 = la cellule qui contient le n° du contact à rechercher Table_matrice = sélectionnez ici les colonnes A à F de la feuille « Base de donnée » (en indiquant des colonnes et non pas des cellules, vous pourrez enrichir votre base de données ultérieurement sans avoir à modifier les formules). No_index_col = le n° de colonne indiqué ici correspond à une colonne de « Table_matrice ». En indiquant 2 nous obtiendrons le nom, 3 le prénom, 4 l’adresse, 5 le code postal et 6 le lieu. Le but ici est d’indiquer 2 pour obtenir le nom, vous pouvez soit mettre « 2 » directement puis changer ce chiffre

Page 168: Access Initiation

manuellement après recopie à la prochaine étape, soit mettre « ‘Base de donnée’ !A3 » (=2) et qui vaudra après recopie 3-4-5-6. Valeur_proche = FAUX pour obtenir des valeurs exactes

Validez. Faites une recopie :

Page 169: Access Initiation

Vous obtenez l’adresse complète du contact 1 (choix cellule A1) :

Dans ce cas nous souhaitons que le nom et le prénom ainsi que le code postal et le lieu se suivent. Faites comme ceci : Nom : =Formule1 Prénom : =Formule2 Nom prénom : = Formule1&" "&Formule2 Vous obtenez alors ceci :

Page 170: Access Initiation

Leçon – exercice 9 : suite

Déplacez les cellules comme vous le souhaitez (ici à l’emplacement du destinataire) :

Déplacez la cellule A1 hors de la zone d’impression :

Dans la barre d’outils formulaires, sélectionnez la zone de liste déroulante :

Créez une liste hors de la zone d’impression :

Modifiez le format de l’objet (voir image) : Plage d’entrée = la liste des noms des contacts, sélectionnez soit la liste de noms, soit la liste de noms avec une marge si vous comptez ajouter d’autres

Page 171: Access Initiation

contacts par la suite (il n’y a que ce paramètre à modifier dans le cas où la marge est dépassée). Cellule liée = I10 = la cellule qui contient le « 1 ». Nombre de lignes = au nombre de lignes affichées simultanément lorsque vous cliquez sur la liste déroulante.

Validez. Faites quelques essais, l’adresse entière se modifiera à chaque changement …

Page 172: Access Initiation

Il s’agissait d’un exemple « simple » qui permet de se faire une première idée des possibilités d’une base de données sur Excel. Il est possible d’utiliser INDEX+EQUIV à la place de RECHERCHEV : exemple simple ici … La liste déroulante « classique » peut être remplacée par une liste intégré à la cellule : explication ici … Bref, les possibilités sont illimitées ! Si vous avez des difficultés, le forum est là pour vous aider …