Aperçu des sections

  • Généralités

  • A. La structure d'une base Access

    Ces requêtes permettent de visualiser dans l'ordre désiré les données issues d'une ou plusieurs tables en mode "feuille de données".

    ELLES PERMETTENT DE

    *       visualiser ou modifier des parties de tables pour des champs spécifiques

    *       sélectionner les enregistrements sur lesquels on veut agir

    *       trier des enregistrements

    *       interroger plusieurs tables et regrouper les données sur une seule feuille

    *       effectuer des calculs sur des données

    *       utiliser d'autres requêtes si les calculs sont complexes

    *       générer des graphiques

    Les requêtes de sélection permettent d'extraire d'une ou plusieurs tables les enregistrements correspondant aux critères définis dans la requête.

     

     

    infos

    La requête de sélection est préalable à tout autre type de requête et  permet de s'assurer que les enregistrements qui vont être ajoutés, modifiés ou supprimés sont bien ceux que l'on souhaite

    1   MODES D'AFFICHAGE DES REQUÊTES

    La requête est créée en mode "création" ; son résultat est affiché en mode "feuille de données".

    *       Feuille de données : les informations de la table sont affichées sous forme d'une feuille très semblable à une feuille de travail Excel. Dans ce mode, les données peuvent être affichées et manipulées

    *       Tableau croisé dynamique : les informations sont affichées sous forme d'un tableau dans lequel les critères de lignes ou de colonnes peuvent être choisis

    *       Graphique croisé dynamique : les informations sont affichées sous forme d'un graphique dans lequel les critères d'axes peuvent être choisis (voir page 93)

    *       Sql : Le code Sql correspondant à la requête est affiché et peut être modifié directement si l'on connaît ce langage

    *       Création : c'est le mode de création et/ou de modification de la structure de la requête.

    OUVRIR UNE REQUÊTE

    ACTION

    Description : souris gauche.gifbouton gauche

    dérouler les objets "requêtes" du volet de navigation
    <double clic>
    sur le nom de la requête
    la requête s'affiche en "feuille de données"

     Description : souris droite.gifbouton droit

    dérouler les objets " requêtes " du volet de navigation
    <clic d>
     sur la requête

    la requête s'affiche en "feuille de données

    2   ASSISTANT

    C'est un moyen pratique et simple de construire une requête étape par étape, surtout lorsque l'on débute.

    ACTION

     onglet "créer"
    groupe "requêtes"
    (3ème bloc)

    <clic g> sur
    les assistants pour les différents types de requête s'affichent
    <clic g> sur

    PARAMÉTRAGE

    ACTION

    1 - sélectionner la table
    si une table est déjà ouverte, c'est celle-ci qui est proposée par défaut
    2- sélectionner le champ
    3 - <clic g> sur
    le champ passe dans la liste des champs sélectionnés
    répéter  l'opération pour chaque champ désiré
    <clic g>
    sur
    choisissez l'une des options
    <clic g> sur 

     

    exercice

    À partir de la table "employés" de la base "Northwind 2012"
    Sélectionner les champs "nom, "prénom", "société" et "ville"
    Afficher la requête en choisissant
    Afficher les données extraites en mode "feuille de données" puis en mode "création"

    3   MODE CREATION

    La création de la requête sans assistant est à peine plus compliquée.

    ACTION

     onglet "créer"
    groupe "requêtes"
    (3ème bloc)

    <clic g> sur
    une boite de dialogue permettant de choisir les tables ou les requêtes à ajouter s'affiche
    <clic g> sur la table à ajouter puis
    répéter l'opération autant de fois que nécessaire puis

    La liste des tables peut être affichée à tout moment.

    ACTION

     onglet "créer" (le dernier)
    groupe "paramétrage de requêtes"
    (3ème bloc)

    <clic g> sur     

    4   EXÉCUTION

    Exécuter une requête, c'est afficher son résultat en mode "feuille de données".

    Trois possibilités

    *       <clic g> sur  en bas et à droite de la fenêtre

    *       <clic g> sur  onglet "accueil" groupe "affichage" (1er  bloc) du ruban pour passer alternativement du mode "création" au mode "feuille de données" (ou dérouler avec  puis choisir)

    *       <clic g> sur  onglet "créer"(dernier onglet groupe "résultats" (1er  blocdu ruban en mode "création"

    5   ENREGISTREMENTS

    Access demande à la fermeture de l'onglet ou de la base d'enregistrer la requête, ce à quoi  il faut répondre "oui" et la nommer. Néanmoins, il est plus prudent de le faire dès que la requête est un peu avancée, puis régulièrement si elle est complexe.

    ACTION

    Description : souris droite.gifbouton droit

    <clic d> sur l'onglet de la requête
    <clic g>
    sur 

     BARRE ACCÈS RAPIDE


    onglet
    de la requête activé
    <clic g>
    sur

     

    infos

    La première fois qu'on l'enregistre, il faut donner un nom à la requête; une fois fermée, un <clic droit> sur son nom affiche un menu contextuel permettant de la renommer.

     

    Description : attention copie.gifATTENTION

    Les données n'ont pas besoin d'être enregistrées et sont mises à jour en temps réel alors que les éléments de structure doivent être enregistrés pour que les modifications apportées soient conservées

    6   CHAMPS

    Une fois la requête affichée en mode création, il faut indiquer quels champs de la ou des tables sélectionnées font l'objet de la requête.

    AJOUT DE CHAMPS

    ACTION

    Description : souris gauche.gifbouton gauche

    Dans le volet supérieur figure une boîte contenant la liste des champs de la table source
    <double clic>
    sur le champ à ajouter dans la requête
    ou
    <clic g>
    sur le champ puis glisser le champ jusqu'à la grille d'interrogation
    ou
    <clic g>
    sur la zone champ de la grille d'interrogation (
    volet inférieur)
    <clic g>
    dans un champs vide puis sur  de la zone champ  pour déroulez la liste
    <clic g>
    sur le champ à ajouter

    exercice

    Dans la base en cours "Northwind 2012", créer une nouvelle requête à partir de la table "employés"
    Prendre les champs "société", "nom", "prénom" "ville" et "fonction"
    Enregistrer la requête en cours sous le nom "Employés requete1"

    Il est aussi possible de prendre tous les champs en une seule fois globalement.

    AJOUT DE TOUS LES CHAMPS GLOBALEMENT

    ACTION

    Description : souris gauche.gifbouton gauche

     <double clic> sur l'étoile "" 1er élément de la liste des champs
    ou
    dans la grille d'interrogation (
    volet inférieur)
    <clic g>
    sur "nomdelatable.*" 1er élément de la liste des champs (ex :)

    Il peut être utile de prendre tous les champs en une seule fois mais en les faisant figurer individuellement  dans la requête.

    AJOUT DE TOUS LES CHAMPS INDIVIDUELLEMENT

    ACTION

    Description : souris gauche.gifbouton gauche

     <double clic> sur l'entête de la table
    tous les champs sont alors sélectionnés
    <faire glisser>
    les champs dans la grille d'interrogation

     

    infos

    Plusieurs champs de la liste déroulante peuvent être ajoutés simultanément, en maintenant la touche <ctrl> enfoncée pendant la sélection.
    La touche <maj> permet de sélectionner un bloc de champs consécutifs dans la liste

    Pour rendre la requête plus lisible, l'ordre d'affichage des champs gagne à être déterminé dès la création de la requête.

    SÉLECTIONNER DES CHAMPS

    ACTION

    Description : souris gauche.gifbouton gauche

    <clic g> au-dessus du nom du champ (forme du pointeur)
    faire éventuellement glisser sur les colonnes adjacentes
    ne pas relâcher la souris entre les 2 actions

    DÉPLACER DES CHAMPS

    ACTION

    Description : souris gauche.gifbouton gauche

    sélectionner puis pointer en haut des champs sélectionnés (forme du pointeurDescription : pointeur.gif ou  )
    faire glisser horizontalement les champs à leur nouvelle position    

     

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012
    Classer les champs comme suit :

    Les champs insérés par erreur dans la requête sont aisés à enlever.

    SUPPRIMER DES CHAMPS

     

    ACTION

     clavier

    sélectionner le ou les champs
    (
    dans la grille d'interrogation - volet bas)  
    Appuyer sur la touche <suppr> du clavier

     onglet "créer" (le dernier)
    groupe "paramétrage de requêtes"
    (3ème)

    sélectionner le ou les champs (ou simplement <clic g> dans le champ)
    <clic g>
    sur

     

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Supprimer le champ "fonction" puis enregistrer

    Afin d'améliorer la lecture de la feuille de données, il est possible de modifier les noms affichés (Les noms d'origine demeurent intacts dans leurs tables respectives).

    CHANGER UN NOM DANS LA REQUÊTE

    ACTION

    Description : souris gauche.gifbouton gauche

     <clic g> à gauche du champ à modifier (dans la grille d'interrogation - volet bas)  
    Saisir le nouveau nom (
    étiquette) suivi d'un double-point ":"
    Laisser le nom de champ de la table à la suite du double-point (ex :
    )

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Renommer le champ "nom" en "patronyme"
    Afficher en mode "feuille de données" pour vérifier puis enregistrer

    Description : attention copie.gifATTENTION

    Si un champ utilisé dans la requête possède une légende définie dans la table (propriété de champ), la légende s'affiche au lieu de l'étiquette et malgré la requête Penser alors si nécessaire à aller mettre une légende directement dans les propriétés du champ de la requête

     

    Description : ancre ios.gifCONSEIL

    Pour afficher une colonne vide avec un titre pour remplissage manuel ultérieur, il suffit de créer une nouvelle colonne avec le nom souhaité suivi de ": Null"
        

    7   CHAMPS CONCATÉNÉS

    Un nouveau nom peut être calculé à partir de plusieurs champs ; il faut alors utiliser l'opérateur de concaténation symbolisé par le signe "&" (chiffre 1 du pavé alphabétique) ou le symbole "+" (touche +) et encadrer chaque nom de champ de crochets [ ].
    Pour que les 2 champs ne soient pas collés, il est souvent nécessaire de les séparer par un espace qui doit, dans la formule, être entre guillemets " ".

    Description : barre copie.gif
    exemple

    Pour afficher le nom complet de l'employé, la formule à utiliser est la suivante :

     

    Description : ancre ios.gifCONSEIL

    Un <double clic> avec la forme  sur le bord droit en haut d'un champ sélectionné ajuste la largeur de la colonne de champ aux données contenues

     

    infos

    Les noms de champ peuvent être difficiles à orthographier ou peuvent ne pas être ce qu'ils paraissent (espace avant ou après inclus - par erreur ? - dans le nom : voir champ "nom") ; Ne pas hésiter à faire des copier/coller des noms de champ si un problème se pose.

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Créer un nom "nom complet" regroupant les champs "nom" et "prénom" (séparés par un espace) puis enregistrer

    Description : attention copie.gifATTENTION

    Il faut éviter d'utiliser les noms réservés par Access (champs nommés "Nom", "Note", …)

    On peut désirer ne pas afficher dans la feuille de données un champ inclus dans la requête.

    AFFICHER / NE PAS AFFICHER UN CHAMP

    ACTION

    Description : souris gauche.gifbouton gauche

     <clic g>  sur la case à cocher à l'intersection de la ligne "afficher" et de la colonne du champ (dans la grille d'interrogation - volet bas)
     Répéter l'opération pour chacun des champs devant être affichés ou non
    seuls les champs cochés sont affichés

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Ne plus afficher les champs "nom" et "prénom"
    Afficher en mode "feuille de données" pour vérifier puis enregistrer

    8   TRI

    Pour visualiser des informations dans un ordre précis, il faut indiquer en mode création l'ordre d'affichage des données.

    TRI SUR UN CHAMP

    ACTION

    Description : souris gauche.gifbouton gauche

    <clic g> sur  à l'intersection de la ligne de tri et de la colonne du champ de tri
    sélectionner l'ordre de tri

    La liste apparaît triée en mode feuille de données pour le champ spécifié

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Trier les données à partir du champ "nom complet"
    Afficher en mode "feuille de données" pour vérifier puis enregistrer

    Le tri sur plusieurs champs obéit à la même logique ; seule contrainte, mettre les champs de tri dans l'ordre.

    TRI SUR PLUSIEURS CHAMPS

    ACTION

    Description : souris gauche.gifbouton gauche

    mettre les champs dans l'ordre de tri (en déplaçant  les colonnes)
    <clic g> sur  à l'intersection de la ligne de tri et de la colonne du 1er champ de tri
    sélectionner l'ordre de tri

    répéter l'opération pour chaque champ
    En mode "feuille de données", la liste s'affiche triée pour les champs spécifiés

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Afficher les champs "nom" et "prénom"
    Rajouter le champ " fonction"
    Ne plus afficher le champ "nom complet"
    Afficher les champs dans l'ordre suivant : "Fonction", "Nom", "Prénom", "Société" et "Ville"
    Trier les données par "fonction" croissante puis par "Nom" et "Prénom" décroissants
    Afficher en mode "feuille de données" pour vérifier puis enregistrer

    Description : attention copie.gifATTENTION

    Il est impossible d'effectuer un tri sur certains types de champ (mémo, Ole, …)

     

    Description : ancre ios.gifCONSEIL

    Pour afficher des données dans un ordre différent du critère de tri, il faut d'abord mettre les champs du critère de tri avec leur type de tri mais non affichés puis les champs dans l'ordre d'affichage (ce qui amène à mettre 2 fois les champs servant au tri à 2 endroits différents)


    affiche


    9   CRITÈRES DE SÉLECTION

    Pour obtenir les données que l'on souhaite, il faut définir des critères de sélection ; ils sont élaborés avec des opérateurs de comparaison  (=, Comme, Entre, …) et combinés à l'aide d'opérateurs logiques (Et, Ou, Pas, …).

    a)    LES OPERATEURS DE COMPARAISON

    Les principaux opérateurs de comparaison des données sont : = (égal), Comme, Entre, < (inférieur), > (supérieur), <> (différent), …

    = (ÉGAL)

    ACTION

    Description : souris gauche.gifbouton gauche  CLAVIER

    <clic g>  à l'intersection de la ligne de critères et de la colonne du 1er champ de critère
    saisir le critère
    Bien respecter espacement et accentuation pour les champs de type "texte"
    répéter éventuellement l'opération pour chaque champ concerné
    En mode "feuille de données", seuls les enregistrements satisfaisant les critères sont affichés  

     

    infos

    si le critère est de type "texte", Access l'encadre d'apostrophes ; s'il est de type "date", il est encadré de dièses et s'il est de type "numérique", il est affiché tel quel

     

    Description : barre copie.gif
    exemple

    Pour sélectionner uniquement les enregistrements correspondant au critère Ville=Cherbourg,  la saisie peut s'effectuer de plusieurs manières (casse indifférente) :

    Cherbourg

    = Cherbourg

    ="Cherbourg"

    "Cherbourg"

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Supprimer les champs "nom" et "prénom"
    N'afficher que les employés habitant "Cherbourg"
    Afficher en mode "feuille de données" pour vérifier puis enregistrer

    Description : ancre ios.gifCONSEIL

    Pour rechercher une valeur précise existante, faire un copier/coller à partir de la feuille de données  

    COMME "…"

    ACTION

    Description : souris gauche.gifbouton gauche  CLAVIER

    <clic g>  à l'intersection de la ligne de critères et de la colonne du 1er champ de critère
    saisir le critère en utilisant les caractères génériques adaptés
    Bien respecter espacement et accentuation pour les champs de type "texte"
    répéter éventuellement l'opération pour chaque champ concerné
    En mode "feuille de données", seuls les enregistrements satisfaisant les critères sont affichés

    CARACTÈRES GÉNÉRIQUES

    ?            Remplace un caractère unique à son emplacement

    *             Remplace un ou plusieurs caractères

    #            Remplace un chiffre unique à son emplacement

    [  ]          Remplace une liste de caractères

    [! ]          Remplace  une liste de caractères à exclure

    Description : barre copie.gif
    exemple

    ch?r   Cherbourg
    c*r*   Colmar, Cherbourg, Chambéry
    CH*  Cherbourg, Chambéry

    #ème 3ème  ou  4ème …
    ch*r[!y]         Cherbourg  mais pas Chambéry

     

    exercice

    Tester les cas de figure cités dans l'exemple ci-dessus

    ENTRE VAL1 ET VAL2

    ACTION

    Description : souris gauche.gifbouton gauche  CLAVIER

    <clic g>  à l'intersection de la ligne de critères et de la colonne du 1er champ de critère
    saisir le critère en précisant les 2 bornes de l'intervalle
    répéter éventuellement l'opération pour chaque champ concerné
    En mode "feuille de données", seuls les enregistrements satisfaisant les critères sont affichés

     

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés habitant une ville dont le code postal est compris entre 73000 et 74000 (limites comprises)

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus

    EST NULL - EST PAS NULL

    ACTION

    Description : souris gauche.gifbouton gauche  CLAVIER

    <clic g>  à l'intersection de la ligne de critères et de la colonne du 1er champ de critère
    saisir le critère "est null" ou "est pas null"
    Permet de sélectionner les enregistrements dont le champ concerné contient ou non des valeurs

     

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés dont le champ "Notes" ne contient aucune information

     

    exercice

    Dans la base en cours "Northwind 2012", créer une nouvelle requête telle que ci-dessus (sans fermer la précédente)
    Afficher les employés dont le champ "notes" est vide
    Fermer la requête sans l'enregistrer

    infos

    Ce critère peut être utilisé pour tous les types de champs

    b)    la COMBINAISON de CRITÈRES

    Les principaux opérateurs logiques sont : Et, Ou, Pas, … Ils peuvent être combinés entre eux de manière explicite (au sein d'une même colonne) ou implicite (sur des colonnes ou des lignes différentes)

    "ET"

    Lorsque deux critères sont sur une même ligne, les enregistrements doivent satisfaire à la fois chacun des critères.

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés habitant Cherbourg ayant pour fonction "représentant commercial"

    Description : barre copie.gif
    exemple

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus

    "et" peut aussi être utilisé au sein d'une même colonne.

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés habitant une ville dont le code postal est compris entre 60000 et 74000 (bornes non comprises)

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus

    "OU"

    Lorsque deux critères sont sur des lignes différentes, il est créé un premier groupe d'enregistrements correspondant au premier critère auquel on ajoute un deuxième groupe d'enregistrements satisfaisant au deuxième critère.

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés habitant Cherbourg ainsi que les employés ayant pour fonction "représentant commercial" (quelle que soit leur ville)

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus

    "ou" peut aussi être utilisé au sein d'une même colonne.

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés habitant Cherbourg ou Colmar ainsi que les employés ayant pour fonction "représentant commercial"

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus

     

    "ET" et "OU"

    Lorsqu'il y a des critères à la fois sur une même ligne et sur des lignes différentes, il est formé autant de groupes d'enregistrements que de lignes de critères.

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés habitant Cherbourg quelle que soit leur fonction et ceux habitant Colmar ayant pour fonction "représentant commercial"

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus

    "ET" et " OU " DANS PLUSIEURS CHAMP DE CRITÈRE

    Tous ces critères peuvent être combinés pour obtenir le résultat voulu.

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés habitant une ville dont le code postal est strictement supérieur à 60000 et inférieur ou égal à 74000, exerçant la profession de "représentant commercial" ou de "Vice-président des ventes" quelle que soit leur ville ainsi que les employés exerçant la profession de "représentant commercial" habitant Cherbourg

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus, l'enregistrer et la fermer

    10 CALCULS ET REGROUPEMENTS

    Les requêtes permettent d'effectuer des calculs à partir de tous les enregistrements ou de regroupements spécifiques de ces mêmes enregistrements.

    a)    calculs

    Les requêtes permettent de créer des "champs calculés" (qui n'ont d'existence qu'au sein de la requête) pour effectuer des calculs.
    Pour ces calculs peuvent être utilisés les opérateurs arithmétiques classiques + (addition), - (soustraction), * (multiplication), / (division réelle), \ (division entière), … et les fonctions intégrées d'Access Année(), Mois(), Jour(), Maintenant(), …

    Description : barre copie.gif
    exemple

    À partir de la table "Commandes", il est possible de calculer les délais de livraison en soustrayant la date d'expédition à la date de commande

    exercice

    Dans la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus à partir de la table "commandes"
    L'enregistrer sous le nom "Commandes Délais de livraison"



    infos

    Une valeur peut être complétée d'une unité (ou de n'importe quel texte) en utilisant l'opérateur de concaténation de chaînes de caractères : "&"

    exercice

    Dans la requête en cours "Commandes Délais de livraison" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus (idem que précédemment mais avec  l'unité "jour")
    L'enregistrer puis la fermer



     

    Description : attention copie.gifATTENTION

    Le résultat est aligné à gauche car ce n'est plus une valeur numérique mais le résultat d'une concaténation, donc une chaine de caractères

    b)    OPERATIONS

    Cette fonctionnalité permet de faire des calculs sur un champ. Selon la nature du champ, ce peut être une somme, une moyenne ou le nombre des enregistrements.


    ACTION

    onglet "créer" (le dernier)
    groupe "afficher/masquer"
    (dernier bloc)

    <clic g> sur  (idem pour l'enlever - le menu contextuel propose le même outil)
    une ligne s'affiche en dessous de la ligne "table"
    <clic g> sur cette ligne dans la colonne du champ souhaité
    <clic g>
    sur   de
    choisir
    l'opération (fonction) parmi celles proposées
    les opérations dépendent du type de champ

    Pour effectuer un calcul sur la totalité des enregistrements, ne pas laisser de regroupement et préciser l'opération pour chaque champ concerné.

    exercice

    Créer une nouvelle requête à partir de la table "commandes" dans la base en cours "Northwind 2012"
    Insérer les champs "Réf commande", "Date de commande", "Date de commande" une 2ème fois et "frais d'expédition"
    L'enregistrer sous le nom "Commandes Frais expédition regroupements"
    Faire le calcul du nombre de commandes, de la date de la première et de la dernière commande et de la moyenne des frais d'expédition
    Enregistrer et fermer la requête

    infos

    Pour faire plusieurs calculs sur un même champ, il faut le répéter pour chaque calcul
    Bien nommer les champs en fonction de leur résultat soit par leur étiquette suivi de double-point,  soit en utilisant la propriété "légende" du champ dans la requête

    c)    REGROUPEMENTS

    Pour effectuer une opération sur un groupe d'enregistrements, il faut laisser "regroupement" dans le(s) champ(s) identifiant le groupe d'enregistrements.

    REGROUPEMENTS

    ACTION

    Description : souris gauche.gifbouton gauche  CLAVIER

    sur la ligne "opérations"
    indiquer
    regroupement dans la colonne du ou des champs
    servant de base aux calculs (pour lequel un calcul sera effectué à chaque changement de valeur)

    indiquer le type d'opération pour les autres champs (compte, somme…)
    afficher en mode "feuille de données"
       

     

    Description : barre copie.gif
    exemple

    Pour calculer le total des frais d'expédition par client et par ville, il faut laisser "regroupement" dans les champs "Ville d'expédition", "Réf client" et "Nom d'expédition" et préciser la fonction "Somme" en tant qu'opération dans le champ "Frais d'expédition"

    exercice

    Dans la base en cours "Northwind 2012",
    Créer une nouvelle requête et réaliser l'exemple ci-dessus
    L'Enregistrer sous le nom "Commandes  Frais expédition"



    infos

    Des en-têtes reprenant les types d'opérations apparaissent par défaut dans la feuille de données. Il est préférable de les renommer ou de mettre une légende au niveau des propriétés du champ

    Des critères peuvent être appliqués au regroupement.

    REGROUPEMENTS AVEC CRITÈRES

    ACTION

    Description : souris gauche.gifbouton gauche  CLAVIER

    sur la ligne "critères", rajouter les critères voulus de la manière classique
    afficher
    en mode "feuille de données"

    exercice

    Dans la requête en cours "Commandes  Frais expédition" de la base "Northwind 2012"
    Calculer le total des frais d'expédition par client pour Chicago et Saumur lorsque ce total est différent de "0", enregistrer la requête sous le nom "Commandes Frais expédition chicagosaumur" puis la fermer

    Il est également possible de réaliser des calculs sur des groupes construits à partir d'expressions, et éventuellement d'y associer des critères de sélection.

     

    avancé

    La fonction "Mois" détermine le mois d'une date (la fonction "Année" détermine l'année) et s'exprime sous la forme :

     

    exercice

    Dans la base en cours "Northwind 2012",
    Créer une nouvelle requête à partir de la table "Commandes"
    Ajouter 2 fois le champ "Date d'expédition" puis calculer pour chaque mois de chaque année le total des frais d'expédition lorsque ce total est différent de 0 en utilisant les fonctions "Année()" et "Mois()"
    L'enregistrer sous le nom " Commandes Frais expédition par an" puis la fermer

    Description : attention copie.gifATTENTION

    Bien évaluer la pertinence des résultats : les requêtes sous Access fournissent quasiment toujours un résultat mais, si la requête est mal formulée, ce résultat peut être incohérent (notamment la fonction "compte" qui compte simplement le nombre d'enregistrements du groupe)

    d)    CRITÈRES MULTITABLES

    Pour obtenir les informations désirées, il est souvent nécessaire d'utiliser plusieurs tables. Les principes restent les mêmes et les liaisons d'origine entre les tables sont automatiquement reprises dans la requête.

    Description : barre copie.gif
    exemple

    Pour obtenir la liste des commandes clients pour la période du 10 Avril 2006 au 25 Avril 2006, il faut afficher les tables "Clients "et "Commandes" (la relation entre les 2 s'affiche sous forme d'un lien : )

    exercice

    Dans la base en cours "Northwind 2012",
    Créer une nouvelle requête à partir des tables "Clients" et "Commandes" comme ci-dessus
    L'enregistrer sous le nom "Clients Commandes" et la fermer

    Description : attention copie.gifATTENTION

    Bien vérifier que les liens entre les tables soient présents pour que le résultat généré soit cohérent.

    11 GÉNÉRATEUR D'EXPRESSION

    Le générateur d'expression affiche dans une fenêtre spécifique les critères avec les opérateurs, fonctions et opérandes (opérateurs arithmétiques, opérateurs logiques, objets de la base, champ des tables et requêtes, fonctions par type, …).

    ACTION

    onglet "créer" (le dernier)
    groupe "paramétrage de requêtes"
    (3ème bloc)

    <clic g> à l'intersection de la ligne de critères et du champ concerné
    <clic g>
    sur    dans le ruban (le générateur d'expression s'affiche)

    EXEMPLE DE FONCTIONS D'AGRÉGATION (regroupement Sql)

    Somme

    Calcule la somme des valeurs d'un champ (numérique)

    Moyenne

    Calcule la moyenne des valeurs d'un champ (numérique)

    Min

    Détermine la plus petite valeur d'un champ (sauf mémo, Ole…)

    Max

    Détermine la plus grande valeur d'un champ (sauf mémo, Ole…)

    Compte

    Calcule le nombre de valeurs non nulles (null) d'un champ (sauf mémo, Ole…)

    Ecartype

    Calcule l'écart type des valeurs d'un champ (numérique)

    Var

    Calcule la variance des valeurs d'un champ (numérique)

    Premier

    Donne la 1ère valeur d'un champ pour les critères demandés (sauf mémo, Ole…)

    Dernier

    Donne la dernière valeur d'un champ pour les critères demandés (sauf mémo, Ole…)

    Description : barre copie.gif
    exemple

    Pour calculer par produit les prévisions de ventes en €, il faut créer une nouvelle requête à partir de la table "produits".
    En utilisant le générateur d'expression, créer un champ "désignation" correspondant au "Code du produit" suivi de "Nom du produit" (comme ci-dessous)


    Créer un champ nommé "valeur ciblée" correspondant au champ "Niveau ciblé" multiplié par le prix unitaire (champ "Prix unitaire") (comme ci-dessous)

    puis afficher la feuille de données correspondante

                                     …

     

    exercice

    Dans la base en cours "Northwind 2012",
    Créer la requête de l'exemple ci-dessus puis avec le générateur d'expression
    Créer un champ nommé "coût ciblé" correspondant au "niveau ciblé" valorisé par le "coût standard" unitaire puis afficher la feuille de données correspondante
    Créer un champ nommé "marge ciblée" correspondant à la différence entre la "valeur ciblée" et le  "coût ciblé
    Enregistrer la requête sous le nom "Produits valeur cible"

     





    Description : attention copie.gifATTENTION

    L'utilisation de champs calculés pour un autre calcul dans une même requête est déconseillée pour des calculs complexes –  Réutiliser le calcul même au lieu de sa désignation

    12 PROPRIÉTÉS

    Les propriétés de la requête affichent diverses informations utiles la concernant.

    ACTION

    Description : souris gauche.gifbouton gauche

    afficher la requête en mode "création"
    pointer dans une zone vide du volet d'interrogation (
    volet inférieur)
    <clic d> propriétés
    cocher la case d'affichage du champ
     pour afficher toutes les propriétés

     onglet "créer" (le dernier)
    groupe "afficher/masquer"

    afficher la requête en mode "création"
    <clic g>
    sur
    cocher la case d'affichage du champ
    Les propriétés de la requête s'affichent dans un volet à droite de la fenêtre

    PROPRIÉTÉS LES PLUS UTILES

    Description

    Décrit la requête

    Tous les champs

    Affiche tous les champs de la ou des tables sélectionnée(s)

    Premières valeurs

    Nombre de premiers enregistrements sélectionnés ou pourcentage

    Valeurs distinctes

    Oui : Élimine les doublons

    Enr unique

    Oui : Conserve les doublons

    Filtre

    N'affiche que les enregistrements correspondant aux critères

    Tri par

    Trie les enregistrements dans l'ordre croissant ou décroissant du ou des champs

    Type Recordset

    Feuille de réponse dynamique : données modifiables
    Instantané : données non modifiables

     

    infos

    Si la feuille de propriétés n'affiche plus qu'une ou deux informations, faire un <clic g> dans une zone vide du volet d'interrogation (volet inférieur)

     

    Description : attention copie.gifATTENTION

    Si le "Type Recordset" est laissé sur "feuille de réponse dynamique" (option par défaut), les données résultantes de la requête sont modifiables (modification sur les tables d'origine)

     

    exercice

    Dans la requête en cours "Produits valeur cible" de la base en cours "Northwind 2012"
    Faire une description et
    n'afficher que les 5 premières valeurs de la requête puis exécuter
    Enregistrer la requête sous le nom " Produits valeur cible 5 premiers"
    Annuler la sélection des 5 premières valeurs  et ajouter le champ "catégorie"
    Enregistrer sous le nom "Produits valeur cible catégorie" puis fermer les requêtes ouvertes

  • C. Les requêtes sélection

    Ces requêtes permettent de visualiser dans l'ordre désiré les données issues d'une ou plusieurs tables en mode "feuille de données".

    ELLES PERMETTENT DE

    *       visualiser ou modifier des parties de tables pour des champs spécifiques

    *       sélectionner les enregistrements sur lesquels on veut agir

    *       trier des enregistrements

    *       interroger plusieurs tables et regrouper les données sur une seule feuille

    *       effectuer des calculs sur des données

    *       utiliser d'autres requêtes si les calculs sont complexes

    *       générer des graphiques

    Les requêtes de sélection permettent d'extraire d'une ou plusieurs tables les enregistrements correspondant aux critères définis dans la requête.

     

     

    infos

    La requête de sélection est préalable à tout autre type de requête et  permet de s'assurer que les enregistrements qui vont être ajoutés, modifiés ou supprimés sont bien ceux que l'on souhaite

    1   MODES D'AFFICHAGE DES REQUÊTES

    La requête est créée en mode "création" ; son résultat est affiché en mode "feuille de données".

    *       Feuille de données : les informations de la table sont affichées sous forme d'une feuille très semblable à une feuille de travail Excel. Dans ce mode, les données peuvent être affichées et manipulées

    *       Tableau croisé dynamique : les informations sont affichées sous forme d'un tableau dans lequel les critères de lignes ou de colonnes peuvent être choisis

    *       Graphique croisé dynamique : les informations sont affichées sous forme d'un graphique dans lequel les critères d'axes peuvent être choisis (voir page 93)

    *       Sql : Le code Sql correspondant à la requête est affiché et peut être modifié directement si l'on connaît ce langage

    *       Création : c'est le mode de création et/ou de modification de la structure de la requête.

    OUVRIR UNE REQUÊTE

    ACTION

    Description : souris gauche.gifbouton gauche

    dérouler les objets "requêtes" du volet de navigation
    <double clic>
    sur le nom de la requête
    la requête s'affiche en "feuille de données"

     Description : souris droite.gifbouton droit

    dérouler les objets " requêtes " du volet de navigation
    <clic d>
     sur la requête

    la requête s'affiche en "feuille de données

    2   ASSISTANT

    C'est un moyen pratique et simple de construire une requête étape par étape, surtout lorsque l'on débute.

    ACTION

     onglet "créer"
    groupe "requêtes"
    (3ème bloc)

    <clic g> sur
    les assistants pour les différents types de requête s'affichent
    <clic g> sur

    PARAMÉTRAGE

    ACTION

    1 - sélectionner la table
    si une table est déjà ouverte, c'est celle-ci qui est proposée par défaut
    2- sélectionner le champ
    3 - <clic g> sur
    le champ passe dans la liste des champs sélectionnés
    répéter  l'opération pour chaque champ désiré
    <clic g>
    sur
    choisissez l'une des options
    <clic g> sur 

     

    exercice

    À partir de la table "employés" de la base "Northwind 2012"
    Sélectionner les champs "nom, "prénom", "société" et "ville"
    Afficher la requête en choisissant
    Afficher les données extraites en mode "feuille de données" puis en mode "création"

    3   MODE CREATION

    La création de la requête sans assistant est à peine plus compliquée.

    ACTION

     onglet "créer"
    groupe "requêtes"
    (3ème bloc)

    <clic g> sur
    une boite de dialogue permettant de choisir les tables ou les requêtes à ajouter s'affiche
    <clic g> sur la table à ajouter puis
    répéter l'opération autant de fois que nécessaire puis

    La liste des tables peut être affichée à tout moment.

    ACTION

     onglet "créer" (le dernier)
    groupe "paramétrage de requêtes"
    (3ème bloc)

    <clic g> sur     

    4   EXÉCUTION

    Exécuter une requête, c'est afficher son résultat en mode "feuille de données".

    Trois possibilités

    *       <clic g> sur  en bas et à droite de la fenêtre

    *       <clic g> sur  onglet "accueil" groupe "affichage" (1er  bloc) du ruban pour passer alternativement du mode "création" au mode "feuille de données" (ou dérouler avec  puis choisir)

    *       <clic g> sur  onglet "créer"(dernier onglet groupe "résultats" (1er  blocdu ruban en mode "création"

    5   ENREGISTREMENTS

    Access demande à la fermeture de l'onglet ou de la base d'enregistrer la requête, ce à quoi  il faut répondre "oui" et la nommer. Néanmoins, il est plus prudent de le faire dès que la requête est un peu avancée, puis régulièrement si elle est complexe.

    ACTION

    Description : souris droite.gifbouton droit

    <clic d> sur l'onglet de la requête
    <clic g>
    sur 

     BARRE ACCÈS RAPIDE


    onglet
    de la requête activé
    <clic g>
    sur

     

    infos

    La première fois qu'on l'enregistre, il faut donner un nom à la requête; une fois fermée, un <clic droit> sur son nom affiche un menu contextuel permettant de la renommer.

     

    Description : attention copie.gifATTENTION

    Les données n'ont pas besoin d'être enregistrées et sont mises à jour en temps réel alors que les éléments de structure doivent être enregistrés pour que les modifications apportées soient conservées

    6   CHAMPS

    Une fois la requête affichée en mode création, il faut indiquer quels champs de la ou des tables sélectionnées font l'objet de la requête.

    AJOUT DE CHAMPS

    ACTION

    Description : souris gauche.gifbouton gauche

    Dans le volet supérieur figure une boîte contenant la liste des champs de la table source
    <double clic>
    sur le champ à ajouter dans la requête
    ou
    <clic g>
    sur le champ puis glisser le champ jusqu'à la grille d'interrogation
    ou
    <clic g>
    sur la zone champ de la grille d'interrogation (
    volet inférieur)
    <clic g>
    dans un champs vide puis sur  de la zone champ  pour déroulez la liste
    <clic g>
    sur le champ à ajouter

    exercice

    Dans la base en cours "Northwind 2012", créer une nouvelle requête à partir de la table "employés"
    Prendre les champs "société", "nom", "prénom" "ville" et "fonction"
    Enregistrer la requête en cours sous le nom "Employés requete1"

    Il est aussi possible de prendre tous les champs en une seule fois globalement.

    AJOUT DE TOUS LES CHAMPS GLOBALEMENT

    ACTION

    Description : souris gauche.gifbouton gauche

     <double clic> sur l'étoile "" 1er élément de la liste des champs
    ou
    dans la grille d'interrogation (
    volet inférieur)
    <clic g>
    sur "nomdelatable.*" 1er élément de la liste des champs (ex :)

    Il peut être utile de prendre tous les champs en une seule fois mais en les faisant figurer individuellement  dans la requête.

    AJOUT DE TOUS LES CHAMPS INDIVIDUELLEMENT

    ACTION

    Description : souris gauche.gifbouton gauche

     <double clic> sur l'entête de la table
    tous les champs sont alors sélectionnés
    <faire glisser>
    les champs dans la grille d'interrogation

     

    infos

    Plusieurs champs de la liste déroulante peuvent être ajoutés simultanément, en maintenant la touche <ctrl> enfoncée pendant la sélection.
    La touche <maj> permet de sélectionner un bloc de champs consécutifs dans la liste

    Pour rendre la requête plus lisible, l'ordre d'affichage des champs gagne à être déterminé dès la création de la requête.

    SÉLECTIONNER DES CHAMPS

    ACTION

    Description : souris gauche.gifbouton gauche

    <clic g> au-dessus du nom du champ (forme du pointeur)
    faire éventuellement glisser sur les colonnes adjacentes
    ne pas relâcher la souris entre les 2 actions

    DÉPLACER DES CHAMPS

    ACTION

    Description : souris gauche.gifbouton gauche

    sélectionner puis pointer en haut des champs sélectionnés (forme du pointeurDescription : pointeur.gif ou  )
    faire glisser horizontalement les champs à leur nouvelle position    

     

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012
    Classer les champs comme suit :

    Les champs insérés par erreur dans la requête sont aisés à enlever.

    SUPPRIMER DES CHAMPS

     

    ACTION

     clavier

    sélectionner le ou les champs
    (
    dans la grille d'interrogation - volet bas)  
    Appuyer sur la touche <suppr> du clavier

     onglet "créer" (le dernier)
    groupe "paramétrage de requêtes"
    (3ème)

    sélectionner le ou les champs (ou simplement <clic g> dans le champ)
    <clic g>
    sur

     

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Supprimer le champ "fonction" puis enregistrer

    Afin d'améliorer la lecture de la feuille de données, il est possible de modifier les noms affichés (Les noms d'origine demeurent intacts dans leurs tables respectives).

    CHANGER UN NOM DANS LA REQUÊTE

    ACTION

    Description : souris gauche.gifbouton gauche

     <clic g> à gauche du champ à modifier (dans la grille d'interrogation - volet bas)  
    Saisir le nouveau nom (
    étiquette) suivi d'un double-point ":"
    Laisser le nom de champ de la table à la suite du double-point (ex :
    )

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Renommer le champ "nom" en "patronyme"
    Afficher en mode "feuille de données" pour vérifier puis enregistrer

    Description : attention copie.gifATTENTION

    Si un champ utilisé dans la requête possède une légende définie dans la table (propriété de champ), la légende s'affiche au lieu de l'étiquette et malgré la requête Penser alors si nécessaire à aller mettre une légende directement dans les propriétés du champ de la requête

     

    Description : ancre ios.gifCONSEIL

    Pour afficher une colonne vide avec un titre pour remplissage manuel ultérieur, il suffit de créer une nouvelle colonne avec le nom souhaité suivi de ": Null"
        

    7   CHAMPS CONCATÉNÉS

    Un nouveau nom peut être calculé à partir de plusieurs champs ; il faut alors utiliser l'opérateur de concaténation symbolisé par le signe "&" (chiffre 1 du pavé alphabétique) ou le symbole "+" (touche +) et encadrer chaque nom de champ de crochets [ ].
    Pour que les 2 champs ne soient pas collés, il est souvent nécessaire de les séparer par un espace qui doit, dans la formule, être entre guillemets " ".

    Description : barre copie.gif
    exemple

    Pour afficher le nom complet de l'employé, la formule à utiliser est la suivante :

     

    Description : ancre ios.gifCONSEIL

    Un <double clic> avec la forme  sur le bord droit en haut d'un champ sélectionné ajuste la largeur de la colonne de champ aux données contenues

     

    infos

    Les noms de champ peuvent être difficiles à orthographier ou peuvent ne pas être ce qu'ils paraissent (espace avant ou après inclus - par erreur ? - dans le nom : voir champ "nom") ; Ne pas hésiter à faire des copier/coller des noms de champ si un problème se pose.

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Créer un nom "nom complet" regroupant les champs "nom" et "prénom" (séparés par un espace) puis enregistrer

    Description : attention copie.gifATTENTION

    Il faut éviter d'utiliser les noms réservés par Access (champs nommés "Nom", "Note", …)

    On peut désirer ne pas afficher dans la feuille de données un champ inclus dans la requête.

    AFFICHER / NE PAS AFFICHER UN CHAMP

    ACTION

    Description : souris gauche.gifbouton gauche

     <clic g>  sur la case à cocher à l'intersection de la ligne "afficher" et de la colonne du champ (dans la grille d'interrogation - volet bas)
     Répéter l'opération pour chacun des champs devant être affichés ou non
    seuls les champs cochés sont affichés

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Ne plus afficher les champs "nom" et "prénom"
    Afficher en mode "feuille de données" pour vérifier puis enregistrer

    8   TRI

    Pour visualiser des informations dans un ordre précis, il faut indiquer en mode création l'ordre d'affichage des données.

    TRI SUR UN CHAMP

    ACTION

    Description : souris gauche.gifbouton gauche

    <clic g> sur  à l'intersection de la ligne de tri et de la colonne du champ de tri
    sélectionner l'ordre de tri

    La liste apparaît triée en mode feuille de données pour le champ spécifié

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Trier les données à partir du champ "nom complet"
    Afficher en mode "feuille de données" pour vérifier puis enregistrer

    Le tri sur plusieurs champs obéit à la même logique ; seule contrainte, mettre les champs de tri dans l'ordre.

    TRI SUR PLUSIEURS CHAMPS

    ACTION

    Description : souris gauche.gifbouton gauche

    mettre les champs dans l'ordre de tri (en déplaçant  les colonnes)
    <clic g> sur  à l'intersection de la ligne de tri et de la colonne du 1er champ de tri
    sélectionner l'ordre de tri

    répéter l'opération pour chaque champ
    En mode "feuille de données", la liste s'affiche triée pour les champs spécifiés

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Afficher les champs "nom" et "prénom"
    Rajouter le champ " fonction"
    Ne plus afficher le champ "nom complet"
    Afficher les champs dans l'ordre suivant : "Fonction", "Nom", "Prénom", "Société" et "Ville"
    Trier les données par "fonction" croissante puis par "Nom" et "Prénom" décroissants
    Afficher en mode "feuille de données" pour vérifier puis enregistrer

    Description : attention copie.gifATTENTION

    Il est impossible d'effectuer un tri sur certains types de champ (mémo, Ole, …)

     

    Description : ancre ios.gifCONSEIL

    Pour afficher des données dans un ordre différent du critère de tri, il faut d'abord mettre les champs du critère de tri avec leur type de tri mais non affichés puis les champs dans l'ordre d'affichage (ce qui amène à mettre 2 fois les champs servant au tri à 2 endroits différents)


    affiche


    9   CRITÈRES DE SÉLECTION

    Pour obtenir les données que l'on souhaite, il faut définir des critères de sélection ; ils sont élaborés avec des opérateurs de comparaison  (=, Comme, Entre, …) et combinés à l'aide d'opérateurs logiques (Et, Ou, Pas, …).

    a)    LES OPERATEURS DE COMPARAISON

    Les principaux opérateurs de comparaison des données sont : = (égal), Comme, Entre, < (inférieur), > (supérieur), <> (différent), …

    = (ÉGAL)

    ACTION

    Description : souris gauche.gifbouton gauche  CLAVIER

    <clic g>  à l'intersection de la ligne de critères et de la colonne du 1er champ de critère
    saisir le critère
    Bien respecter espacement et accentuation pour les champs de type "texte"
    répéter éventuellement l'opération pour chaque champ concerné
    En mode "feuille de données", seuls les enregistrements satisfaisant les critères sont affichés  

     

    infos

    si le critère est de type "texte", Access l'encadre d'apostrophes ; s'il est de type "date", il est encadré de dièses et s'il est de type "numérique", il est affiché tel quel

     

    Description : barre copie.gif
    exemple

    Pour sélectionner uniquement les enregistrements correspondant au critère Ville=Cherbourg,  la saisie peut s'effectuer de plusieurs manières (casse indifférente) :

    Cherbourg

    = Cherbourg

    ="Cherbourg"

    "Cherbourg"

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Supprimer les champs "nom" et "prénom"
    N'afficher que les employés habitant "Cherbourg"
    Afficher en mode "feuille de données" pour vérifier puis enregistrer

    Description : ancre ios.gifCONSEIL

    Pour rechercher une valeur précise existante, faire un copier/coller à partir de la feuille de données  

    COMME "…"

    ACTION

    Description : souris gauche.gifbouton gauche  CLAVIER

    <clic g>  à l'intersection de la ligne de critères et de la colonne du 1er champ de critère
    saisir le critère en utilisant les caractères génériques adaptés
    Bien respecter espacement et accentuation pour les champs de type "texte"
    répéter éventuellement l'opération pour chaque champ concerné
    En mode "feuille de données", seuls les enregistrements satisfaisant les critères sont affichés

    CARACTÈRES GÉNÉRIQUES

    ?            Remplace un caractère unique à son emplacement

    *             Remplace un ou plusieurs caractères

    #            Remplace un chiffre unique à son emplacement

    [  ]          Remplace une liste de caractères

    [! ]          Remplace  une liste de caractères à exclure

    Description : barre copie.gif
    exemple

    ch?r   Cherbourg
    c*r*   Colmar, Cherbourg, Chambéry
    CH*  Cherbourg, Chambéry

    #ème 3ème  ou  4ème …
    ch*r[!y]         Cherbourg  mais pas Chambéry

     

    exercice

    Tester les cas de figure cités dans l'exemple ci-dessus

    ENTRE VAL1 ET VAL2

    ACTION

    Description : souris gauche.gifbouton gauche  CLAVIER

    <clic g>  à l'intersection de la ligne de critères et de la colonne du 1er champ de critère
    saisir le critère en précisant les 2 bornes de l'intervalle
    répéter éventuellement l'opération pour chaque champ concerné
    En mode "feuille de données", seuls les enregistrements satisfaisant les critères sont affichés

     

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés habitant une ville dont le code postal est compris entre 73000 et 74000 (limites comprises)

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus

    EST NULL - EST PAS NULL

    ACTION

    Description : souris gauche.gifbouton gauche  CLAVIER

    <clic g>  à l'intersection de la ligne de critères et de la colonne du 1er champ de critère
    saisir le critère "est null" ou "est pas null"
    Permet de sélectionner les enregistrements dont le champ concerné contient ou non des valeurs

     

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés dont le champ "Notes" ne contient aucune information

     

    exercice

    Dans la base en cours "Northwind 2012", créer une nouvelle requête telle que ci-dessus (sans fermer la précédente)
    Afficher les employés dont le champ "notes" est vide
    Fermer la requête sans l'enregistrer

    infos

    Ce critère peut être utilisé pour tous les types de champs

    b)    la COMBINAISON de CRITÈRES

    Les principaux opérateurs logiques sont : Et, Ou, Pas, … Ils peuvent être combinés entre eux de manière explicite (au sein d'une même colonne) ou implicite (sur des colonnes ou des lignes différentes)

    "ET"

    Lorsque deux critères sont sur une même ligne, les enregistrements doivent satisfaire à la fois chacun des critères.

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés habitant Cherbourg ayant pour fonction "représentant commercial"

    Description : barre copie.gif
    exemple

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus

    "et" peut aussi être utilisé au sein d'une même colonne.

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés habitant une ville dont le code postal est compris entre 60000 et 74000 (bornes non comprises)

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus

    "OU"

    Lorsque deux critères sont sur des lignes différentes, il est créé un premier groupe d'enregistrements correspondant au premier critère auquel on ajoute un deuxième groupe d'enregistrements satisfaisant au deuxième critère.

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés habitant Cherbourg ainsi que les employés ayant pour fonction "représentant commercial" (quelle que soit leur ville)

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus

    "ou" peut aussi être utilisé au sein d'une même colonne.

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés habitant Cherbourg ou Colmar ainsi que les employés ayant pour fonction "représentant commercial"

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus

     

    "ET" et "OU"

    Lorsqu'il y a des critères à la fois sur une même ligne et sur des lignes différentes, il est formé autant de groupes d'enregistrements que de lignes de critères.

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés habitant Cherbourg quelle que soit leur fonction et ceux habitant Colmar ayant pour fonction "représentant commercial"

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus

    "ET" et " OU " DANS PLUSIEURS CHAMP DE CRITÈRE

    Tous ces critères peuvent être combinés pour obtenir le résultat voulu.

    Description : barre copie.gif
    exemple

    La requête ci-dessous affiche les employés habitant une ville dont le code postal est strictement supérieur à 60000 et inférieur ou égal à 74000, exerçant la profession de "représentant commercial" ou de "Vice-président des ventes" quelle que soit leur ville ainsi que les employés exerçant la profession de "représentant commercial" habitant Cherbourg

    exercice

    Dans la requête en cours "Employés requete1" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus, l'enregistrer et la fermer

    10 CALCULS ET REGROUPEMENTS

    Les requêtes permettent d'effectuer des calculs à partir de tous les enregistrements ou de regroupements spécifiques de ces mêmes enregistrements.

    a)    calculs

    Les requêtes permettent de créer des "champs calculés" (qui n'ont d'existence qu'au sein de la requête) pour effectuer des calculs.
    Pour ces calculs peuvent être utilisés les opérateurs arithmétiques classiques + (addition), - (soustraction), * (multiplication), / (division réelle), \ (division entière), … et les fonctions intégrées d'Access Année(), Mois(), Jour(), Maintenant(), …

    Description : barre copie.gif
    exemple

    À partir de la table "Commandes", il est possible de calculer les délais de livraison en soustrayant la date d'expédition à la date de commande

    exercice

    Dans la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus à partir de la table "commandes"
    L'enregistrer sous le nom "Commandes Délais de livraison"



    infos

    Une valeur peut être complétée d'une unité (ou de n'importe quel texte) en utilisant l'opérateur de concaténation de chaînes de caractères : "&"

    exercice

    Dans la requête en cours "Commandes Délais de livraison" de la base en cours "Northwind 2012"
    Réaliser la requête ci-dessus (idem que précédemment mais avec  l'unité "jour")
    L'enregistrer puis la fermer



     

    Description : attention copie.gifATTENTION

    Le résultat est aligné à gauche car ce n'est plus une valeur numérique mais le résultat d'une concaténation, donc une chaine de caractères

    b)    OPERATIONS

    Cette fonctionnalité permet de faire des calculs sur un champ. Selon la nature du champ, ce peut être une somme, une moyenne ou le nombre des enregistrements.


    ACTION

    onglet "créer" (le dernier)
    groupe "afficher/masquer"
    (dernier bloc)

    <clic g> sur  (idem pour l'enlever - le menu contextuel propose le même outil)
    une ligne s'affiche en dessous de la ligne "table"
    <clic g> sur cette ligne dans la colonne du champ souhaité
    <clic g>
    sur   de
    choisir
    l'opération (fonction) parmi celles proposées
    les opérations dépendent du type de champ

    Pour effectuer un calcul sur la totalité des enregistrements, ne pas laisser de regroupement et préciser l'opération pour chaque champ concerné.

    exercice

    Créer une nouvelle requête à partir de la table "commandes" dans la base en cours "Northwind 2012"
    Insérer les champs "Réf commande", "Date de commande", "Date de commande" une 2ème fois et "frais d'expédition"
    L'enregistrer sous le nom "Commandes Frais expédition regroupements"
    Faire le calcul du nombre de commandes, de la date de la première et de la dernière commande et de la moyenne des frais d'expédition
    Enregistrer et fermer la requête

    infos

    Pour faire plusieurs calculs sur un même champ, il faut le répéter pour chaque calcul
    Bien nommer les champs en fonction de leur résultat soit par leur étiquette suivi de double-point,  soit en utilisant la propriété "légende" du champ dans la requête

    c)    REGROUPEMENTS

    Pour effectuer une opération sur un groupe d'enregistrements, il faut laisser "regroupement" dans le(s) champ(s) identifiant le groupe d'enregistrements.

    REGROUPEMENTS

    ACTION

    Description : souris gauche.gifbouton gauche  CLAVIER

    sur la ligne "opérations"
    indiquer
    regroupement dans la colonne du ou des champs
    servant de base aux calculs (pour lequel un calcul sera effectué à chaque changement de valeur)

    indiquer le type d'opération pour les autres champs (compte, somme…)
    afficher en mode "feuille de données"
       

     

    Description : barre copie.gif
    exemple

    Pour calculer le total des frais d'expédition par client et par ville, il faut laisser "regroupement" dans les champs "Ville d'expédition", "Réf client" et "Nom d'expédition" et préciser la fonction "Somme" en tant qu'opération dans le champ "Frais d'expédition"

    exercice

    Dans la base en cours "Northwind 2012",
    Créer une nouvelle requête et réaliser l'exemple ci-dessus
    L'Enregistrer sous le nom "Commandes  Frais expédition"



    infos

    Des en-têtes reprenant les types d'opérations apparaissent par défaut dans la feuille de données. Il est préférable de les renommer ou de mettre une légende au niveau des propriétés du champ

    Des critères peuvent être appliqués au regroupement.

    REGROUPEMENTS AVEC CRITÈRES

    ACTION

    Description : souris gauche.gifbouton gauche  CLAVIER

    sur la ligne "critères", rajouter les critères voulus de la manière classique
    afficher
    en mode "feuille de données"

    exercice

    Dans la requête en cours "Commandes  Frais expédition" de la base "Northwind 2012"
    Calculer le total des frais d'expédition par client pour Chicago et Saumur lorsque ce total est différent de "0", enregistrer la requête sous le nom "Commandes Frais expédition chicagosaumur" puis la fermer

    Il est également possible de réaliser des calculs sur des groupes construits à partir d'expressions, et éventuellement d'y associer des critères de sélection.

     

    avancé

    La fonction "Mois" détermine le mois d'une date (la fonction "Année" détermine l'année) et s'exprime sous la forme :

     

    exercice

    Dans la base en cours "Northwind 2012",
    Créer une nouvelle requête à partir de la table "Commandes"
    Ajouter 2 fois le champ "Date d'expédition" puis calculer pour chaque mois de chaque année le total des frais d'expédition lorsque ce total est différent de 0 en utilisant les fonctions "Année()" et "Mois()"
    L'enregistrer sous le nom " Commandes Frais expédition par an" puis la fermer

    Description : attention copie.gifATTENTION

    Bien évaluer la pertinence des résultats : les requêtes sous Access fournissent quasiment toujours un résultat mais, si la requête est mal formulée, ce résultat peut être incohérent (notamment la fonction "compte" qui compte simplement le nombre d'enregistrements du groupe)

    d)    CRITÈRES MULTITABLES

    Pour obtenir les informations désirées, il est souvent nécessaire d'utiliser plusieurs tables. Les principes restent les mêmes et les liaisons d'origine entre les tables sont automatiquement reprises dans la requête.

    Description : barre copie.gif
    exemple

    Pour obtenir la liste des commandes clients pour la période du 10 Avril 2006 au 25 Avril 2006, il faut afficher les tables "Clients "et "Commandes" (la relation entre les 2 s'affiche sous forme d'un lien : )

    exercice

    Dans la base en cours "Northwind 2012",
    Créer une nouvelle requête à partir des tables "Clients" et "Commandes" comme ci-dessus
    L'enregistrer sous le nom "Clients Commandes" et la fermer

    Description : attention copie.gifATTENTION

    Bien vérifier que les liens entre les tables soient présents pour que le résultat généré soit cohérent.

    11 GÉNÉRATEUR D'EXPRESSION

    Le générateur d'expression affiche dans une fenêtre spécifique les critères avec les opérateurs, fonctions et opérandes (opérateurs arithmétiques, opérateurs logiques, objets de la base, champ des tables et requêtes, fonctions par type, …).

    ACTION

    onglet "créer" (le dernier)
    groupe "paramétrage de requêtes"
    (3ème bloc)

    <clic g> à l'intersection de la ligne de critères et du champ concerné
    <clic g>
    sur    dans le ruban (le générateur d'expression s'affiche)

    EXEMPLE DE FONCTIONS D'AGRÉGATION (regroupement Sql)

    Somme

    Calcule la somme des valeurs d'un champ (numérique)

    Moyenne

    Calcule la moyenne des valeurs d'un champ (numérique)

    Min

    Détermine la plus petite valeur d'un champ (sauf mémo, Ole…)

    Max

    Détermine la plus grande valeur d'un champ (sauf mémo, Ole…)

    Compte

    Calcule le nombre de valeurs non nulles (null) d'un champ (sauf mémo, Ole…)

    Ecartype

    Calcule l'écart type des valeurs d'un champ (numérique)

    Var

    Calcule la variance des valeurs d'un champ (numérique)

    Premier

    Donne la 1ère valeur d'un champ pour les critères demandés (sauf mémo, Ole…)

    Dernier

    Donne la dernière valeur d'un champ pour les critères demandés (sauf mémo, Ole…)

    Description : barre copie.gif
    exemple

    Pour calculer par produit les prévisions de ventes en €, il faut créer une nouvelle requête à partir de la table "produits".
    En utilisant le générateur d'expression, créer un champ "désignation" correspondant au "Code du produit" suivi de "Nom du produit" (comme ci-dessous)


    Créer un champ nommé "valeur ciblée" correspondant au champ "Niveau ciblé" multiplié par le prix unitaire (champ "Prix unitaire") (comme ci-dessous)

    puis afficher la feuille de données correspondante

                                     …

     

    exercice

    Dans la base en cours "Northwind 2012",
    Créer la requête de l'exemple ci-dessus puis avec le générateur d'expression
    Créer un champ nommé "coût ciblé" correspondant au "niveau ciblé" valorisé par le "coût standard" unitaire puis afficher la feuille de données correspondante
    Créer un champ nommé "marge ciblée" correspondant à la différence entre la "valeur ciblée" et le  "coût ciblé
    Enregistrer la requête sous le nom "Produits valeur cible"

     





    Description : attention copie.gifATTENTION

    L'utilisation de champs calculés pour un autre calcul dans une même requête est déconseillée pour des calculs complexes –  Réutiliser le calcul même au lieu de sa désignation

    12 PROPRIÉTÉS

    Les propriétés de la requête affichent diverses informations utiles la concernant.

    ACTION

    Description : souris gauche.gifbouton gauche

    afficher la requête en mode "création"
    pointer dans une zone vide du volet d'interrogation (
    volet inférieur)
    <clic d> propriétés
    cocher la case d'affichage du champ
     pour afficher toutes les propriétés

     onglet "créer" (le dernier)
    groupe "afficher/masquer"

    afficher la requête en mode "création"
    <clic g>
    sur
    cocher la case d'affichage du champ
    Les propriétés de la requête s'affichent dans un volet à droite de la fenêtre

    PROPRIÉTÉS LES PLUS UTILES

    Description

    Décrit la requête

    Tous les champs

    Affiche tous les champs de la ou des tables sélectionnée(s)

    Premières valeurs

    Nombre de premiers enregistrements sélectionnés ou pourcentage

    Valeurs distinctes

    Oui : Élimine les doublons

    Enr unique

    Oui : Conserve les doublons

    Filtre

    N'affiche que les enregistrements correspondant aux critères

    Tri par

    Trie les enregistrements dans l'ordre croissant ou décroissant du ou des champs

    Type Recordset

    Feuille de réponse dynamique : données modifiables
    Instantané : données non modifiables

     

    infos

    Si la feuille de propriétés n'affiche plus qu'une ou deux informations, faire un <clic g> dans une zone vide du volet d'interrogation (volet inférieur)

     

    Description : attention copie.gifATTENTION

    Si le "Type Recordset" est laissé sur "feuille de réponse dynamique" (option par défaut), les données résultantes de la requête sont modifiables (modification sur les tables d'origine)

     

    exercice

    Dans la requête en cours "Produits valeur cible" de la base en cours "Northwind 2012"
    Faire une description et
    n'afficher que les 5 premières valeurs de la requête puis exécuter
    Enregistrer la requête sous le nom " Produits valeur cible 5 premiers"
    Annuler la sélection des 5 premières valeurs  et ajouter le champ "catégorie"
    Enregistrer sous le nom "Produits valeur cible catégorie" puis fermer les requêtes ouvertes