Microsoft Office Online
Se connecter à Mon site Office Online (Qu'est-ce que c'est ?) | Se connecter

 
 
Microsoft Office Access
Rechercher
Rechercher
 
Acheter Office
Acheter et activer Office 2007
Rechercher des mises à jour : (c) Microsoft
Tester Office 2010 beta
 
 
 
Avertissement : vous affichez cette page avec un navigateur Web non pris en charge. Ce site Web fonctionne de manière optimale avec Microsoft Internet Explorer 6.0 ou version ultérieure, Firefox 1.5 ou Netscape Navigator 8.0 ou version ultérieure. En savoir plus sur les navigateurs pris en charge.

Trouver les enregistrements avec les dates les plus récentes ou les plus anciennes
 

Cet article explique comment utiliser une requête de première valeur pour trouver les dates les plus récentes ou les plus anciennes dans un ensemble d'enregistrements. Vous pouvez utiliser les informations que ce type de requête renvoie pour répondre à diverses questions utiles pour votre activité, par exemple la date de la dernière commande d'un client.

Que souhaitez-vous ?


Comprendre comment les requêtes de première valeur utilisent les dates

Utilisez une requête de première valeur pour trouver des enregistrements qui contiennent les dernières ou les premières dates d'une table ou d'un groupe d'enregistrements. Vous pouvez ensuite utiliser les données pour répondre à plusieurs types de questions d'ordre professionnel, telles que :

  • Quand un employé a-t-il fait sa dernière vente ? La réponse peut vous aider à déterminer qui sont les plus productifs ou les moins productifs.
  • Quelle est la date de la dernière commande d'un client ? S'il n'en a pas passé pendant un certain temps, vous pouvez le transférer dans une liste inactive.
  • Qui aura le prochain anniversaire ou les n anniversaires suivants ?

Règles de création et d'utilisation de requêtes de première valeur

Pour créer une requête de première valeur, commencez par créer une requête Sélection. Selon les résultats souhaités, appliquez un ordre de tri à la requête ou convertissez la requête en une requête de totaux. Si vous décidez de convertir la requête, utilisez ensuite une fonction d'agrégation, telle que Max ou Min pour renvoyer la valeur la plus élevée ou la plus faible, ou First ou Last pour renvoyer la date la plus ancienne ou la plus récente. N'utilisez les requêtes de totaux et les fonctions d'agrégation que lorsque vous devez trouver des données qui tombent dans un ensemble de groupes ou de catégories. Supposons par exemple que vous deviez trouver les nombres de ventes pour une date donnée pour toutes les villes où travaille votre entreprise. Dans ce cas, les villes deviennent des catégories (vous devez trouver les données par ville), aussi vous utilisez une requête de totaux.

Au cours de votre travail, n'oubliez pas que, quel que soit le type de la requête, celle-ci doit utiliser des champs qui contiennent des données descriptives, par exemple le nom des clients, et aussi un champ qui contient les valeurs de date à rechercher. De plus, ces valeurs de date doivent résider dans un champ défini pour le type de données Date/Heure. Les requêtes décrites dans cet article échouent si vous les exécutez sur des valeurs de date figurant dans un champ Texte. En outre, si vous souhaitez utiliser une requête de totaux, vos champs de données doivent inclure des informations de catégorie, par exemple un champ de ville ou de pays/région.

Choisir entre une requête de premières valeurs et un filtre

Pour déterminer si vous devez créer une requête de premières valeurs ou appliquer un filtre, choisissez une des solutions suivantes :

  • Si vous souhaitez renvoyer les enregistrements avec les plus récentes ou les plus anciennes dates d'un champ, et que vous ne connaissez pas les valeurs de date exactes, ou si elles n'ont pas d'importance, créez une requête de premières valeurs.
  • Si vous souhaitez renvoyer tous les enregistrements où la date est identique, antérieure ou postérieure à une date spécifique, utilisez un filtre. Par exemple, pour voir les dates des ventes situées entre avril et juillet, appliquez un filtre. Les filtres ne sont pas décrits dans cette rubrique.

    Pour plus d'informations sur leur création et leur utilisation, voir l'article Filtre : limiter le nombre d'enregistrements dans une vue.

Haut de la page Haut de la page

Trouver la date la plus récente ou la plus ancienne

Cette section explique en détail comment créer une simple requête de premières valeurs qui utilise un ordre de tri, ainsi qu'une requête plus complexe qui utilise des expressions et d'autres critères. La première section décrit les étapes de base pour créer une requête de premières valeurs, alors que la deuxième section explique comment trouver les prochains anniversaires des employés en ajoutant des critères. Cette procédure utilise les données de la table exemple suivant.

Nom de famille Prénom Adresse Ville Pays/région Date de naissance Date d'embauche
Bouraima Hervé 28, av. du Burkina Faso Saint-Denis France 05.02.68 10.06.94
Dupont-Roc Patrice 52, av. de Chypre Valenciennes France 22.05.57 22.11.96
Antoine Faisandier 3122, av. de Corée Toulouse France 11.11.60 11.03.00
Narp Sylvie 1, av. de Hongrie Londres RU 22.03.64 22.06.98
Berthier Ariane 2, av. de Slovaquie Mexico Mexique 05.06.72 05.01.02
Colon Jean-Charles 3122, avenue de Corée Toulouse France 23.01.70 23.04.99
Cordani Michel 67, av. du Mali Nice France 14.04.64 14.10.04
Dubois Marie 2, av. de Lituanie Brest France 29.10.59 29.03.97

Si vous le souhaitez, vous pouvez entrer ces données exemple dans une nouvelle table manuellement, ou les copier dans un tableur, tel que Microsoft Office Excel 2007, puis utiliser Access pour importer la feuille de calcul ainsi créée dans une table.

AfficherProcédure explicative

Entrer les exemples de données manuellement

  1. Sous l'onglet Créer, dans le groupe Tables, cliquez sur Table.

    Access ajoute une nouvelle table vide à la base de données.

     Remarque   Vous n'êtes pas obligé de suivre cette procédure si vous ouvrez une nouvelle base de données vide. En revanche, vous devez la suivre lorsque vous ajoutez une table à la base de données.

  2. Double-cliquez sur la première cellule dans la ligne d'en-tête et tapez le nom du champ dans la table exemple.

    Par défaut, Access désigne des champs vides dans la ligne d'en-tête avec le texte Ajouter un nouveau champ, comme suit :

    Nouveau champ dans une feuille de données

  3. Utilisez les flèches de direction pour vous déplacer sur la prochaine cellule d'en-tête vide, puis tapez le nom du deuxième champ (vous pouvez également appuyer sur la touche de tabulation ou double-cliquer sur la nouvelle cellule). Répétez cette étape jusqu'à la saisie de tous les noms de champ.
  4. Entrez les données dans la table exemple.

    Lorsque vous entrez des données, Access détermine un type de données pour chaque champ. Si vous n'êtes pas familiarisé avec les bases de données relationnelles, vous devez définir un type de données spécifique, tel que Nombre, Texte ou Date/Heure, pour chaque champ des tables. La définition des types de données garantit une saisie exacte de données et empêche des erreurs, telles que l'utilisation d'un numéro de téléphone dans un calcul. Pour ces tables exemple, il est recommandé qu'Access détermine le type de données.

  5. Une fois la saisie de données terminée, cliquez sur Enregistrer

    Raccourci clavier  Appuyez sur Ctrl+S.

    La boîte de dialogue Enregistrer sous s'affiche.

  6. Dans la zone Nom de la table, tapez le nom de la table exemple, puis cliquez sur OK.

    Vous utilisez le nom de chaque table exemple car les requêtes dans les sections pratiques utilisent ces noms.

  7. Répétez ces étapes autant de fois que nécessaire pour créer chaque table exemple répertoriée au début de cette section.

Copier la table dans le tableur

  1. Démarrez votre tableur et créez un fichier vide. Si vous utilisez Excel, un nouveau classeur vide est créé par défaut.
  2. Copiez la table exemple fournie dans la section précédente et collez-la dans la première feuille de calcul, en commençant à la première cellule.
  3. Cliquez avec le bouton droit sur l'onglet de la feuille, cliquez sur Renommer et tapez le nom Employés.
  4. Enregistrez le fichier de feuille de calcul à un emplacement pratique et passez aux étapes suivantes.

Importer la table dans Access

  1. Dans une base de données nouvelle ou existante :

    Sous l'onglet Données externes, dans le groupe Importer, cliquez sur Excel.

    - ou -

    Cliquez sur Autres, puis sélectionnez un tableur dans la liste.

    La boîte de dialogue Données externes - Feuille de calcul Nom du programme s'affiche.

  2. Cliquez sur Parcourir, ouvrez le fichier de feuille de calcul que vous avez créé aux étapes précédentes, puis cliquez sur OK.

    L'Assistant Importation de feuille de calcul démarre.

  3. Par défaut, l'Assistant sélectionne la première feuille de calcul du classeur (Employés si vous avez suivi les étapes de la section précédente) et les données de cette feuille s'affichent dans la partie inférieure de l'écran. Cliquez sur Suivant.
  4. Cliquez sur Première ligne contient les en-têtes de colonnes, puis cliquez sur Suivant.
  5. Au besoin, utilisez les zones de texte et les listes sous Options de champ pour modifier les noms et les types de données des champs, ou exclure des champs au cours de l'importation. Sinon, cliquez sur Suivant.

    Si vous utilisez la table exemple ci-dessus, vous n'avez pas besoin d'effectuer des changements à ce stade.

  6. Gardez l'option Laisser Access ajouter une clé primaire sélectionnée et cliquez sur Suivant.
  7. Par défaut, Access applique le nom de la feuille de calcul à votre nouvelle table. Acceptez ce nom ou entrez-en un autre, puis cliquez sur Terminer.

 Remarque   Si vous n'avez pas de tableur, vous pouvez copier les exemples de données vers un éditeur de texte, tel que Bloc-notes. Pour plus d'informations sur l'importation de données de type Texte, voir l'article Importer ou attacher des données d'un fichier texte.


Créer une simple requête de premières valeurs

  1. Sous l'onglet Créer, dans le groupe Autre, cliquez sur Création requête.

    La boîte de dialogue Afficher la table s'affiche.

  2. Dans cette boîte de dialogue, cliquez sur la table à utiliser dans la requête, cliquez sur Ajouter pour la placer dans la partie supérieure du concepteur, puis cliquez sur Fermer.

    - ou -

    Double-cliquez sur la table, puis cliquez sur Fermer.

    Si vous utilisez les données exemple, ajoutez la table Employés à la requête.

  3. Ajoutez à la requête, dans la grille de création, les champs que vous voulez utiliser. Vous pouvez double-cliquer sur chaque champ ou les faire glisser et les déposer dans une cellule vide de la ligne Champ.

    Si vous utilisez la table exemple, ajoutez les champs Prénom, Nom et Date de naissance.

  4. Dans le champ qui contient les premières ou les dernières valeurs (le champ Date de naissance si vous utilisez la table exemple), cliquez sur la ligne Tri et sélectionnez Croissant ou Décroissant.

    L'ordre de tri Décroissant renvoie la date la plus récente et l'ordre de tri Croissant renvoie la date la plus ancienne.

     Important   Vous devez définir une valeur dans la ligne Tri uniquement pour les champs qui contiennent vos dates. Si vous spécifiez un ordre de tri pour un autre champ, la requête ne renvoie pas les résultats que vous attendez.

  5. Sous l'onglet Créer, dans le groupe Outils, cliquez sur la flèche vers le bas en regard de Tout (liste Première valeurs), puis entrez le nombre d'enregistrements à afficher ou sélectionnez une option dans la liste.
  6. Cliquez sur Exécuter Image du bouton pour exécuter la requête et afficher les résultats en mode Feuille de données.
  7. Enregistrez la requête et gardez-la ouverte pour les étapes suivantes.

Vous pouvez voir que ce type de requête de premières valeurs peut répondre à des questions de base, par exemple pour savoir qui est le plus ancien ou le plus jeune employé de l'entreprise. Les étapes suivantes expliquent comment utiliser des expressions et d'autres critères pour enrichir et diversifier la requête. Les critères affichés dans l'étape suivante renvoient les trois anniversaires suivants.

Ajouter des critères à la requête

 Remarque   Cette procédure suppose que vous utiliserez la requête décrite dans la section précédente.

  1. Faites basculer en mode Création la requête que vous venez de créer.
  2. Dans la grille de création de la requête, dans la colonne à droite de celle intitulée Date de naissance, copiez et collez cette expression : Expr1: DatePart("m",[Date de naissance]). Ensuite, cliquez sur Exécuter.

    La fonction DatePart extrait la partie du mois du champ Date de naissance.

  3. Basculez en mode Création.
  4. À droite de votre première expression, collez ou tapez cette expression : Expr2: DatePart("d",[Date de naissance]), puis cliquez sur Exécuter.

    Dans ce cas, la fonction DatePart extrait la partie de la date du champ Date de naissance.

  5. Basculez en mode Création.
  6. Désactivez les cases à cocher de la ligne Afficher pour les deux expressions que vous venez d'entrer, cliquez sur la ligne Tri pour chacune d'elles, puis sélectionnez Croissant.
  7. Cliquez sur Exécuter.
  8. Vous pouvez éventuellement spécifier des critères pour limiter la portée de la requête. Dans ce cas, la requête ne trie que les enregistrements qui répondent aux critères et elle identifie les premières et les dernières valeurs dans la liste triée.

    Pour continuer avec les données exemple, basculez en mode Création. Ensuite, dans la ligne Critères de la colonne Date de naissance, tapez cette expression :

    Month([Date de naissance]) > Month(Date()) Or Month([Date de naissance])= Month(Date()) And Day([Date de naissance])>Day(Date())

    Voici ce que fait cette expression : la portion Month([Date de naissance]) > Month(Date()) vérifie la date de naissance de chaque employé pour voir si elle correspond à un mois à venir et, dans l'affirmative, elle inclut ces enregistrements dans la requête. La portion Month([Date de naissance])= Month(Date()) And Day([Date de naissance])>Day(Date()) de l'expression vérifie les dates de naissance qui tombent dans le mois en cours pour voir si l'anniversaire se situe avant ou après la date du jour. Si cette condition est vraie, la fonction inclut ces enregistrements dans la requête. Pour résumer : cette expression ignore tous les enregistrements où l'anniversaire tombe entre le 1 janvier et la date à laquelle vous exécutez la requête.

    Vous trouverez d'autres exemples d'expressions pour les critères de requête dans l'article Exemples de critères de requête.

  9. Sous l'onglet Créer, dans le groupe Outils, cliquez sur la flèche vers le bas en regard de Tout (liste Première valeurs), puis entrez le nombre d'enregistrements à afficher ou sélectionnez une option dans la liste.

    Pour voir les trois anniversaires suivants, tapez 3.

  10. Cliquez sur Exécuter Image du bouton pour exécuter la requête et afficher les résultats en mode Feuille de données.

Si vous voyez plus d'enregistrements que spécifiés

Si vos données contiennent plusieurs enregistrements qui ont une même valeur de date en commun, votre requête de premières valeurs risque de renvoyer plus de données que ce que vous spécifiez. Par exemple, vous pouvez concevoir une requête de premières valeurs pour récupérer trois enregistrements d'employés, mais la requête en renvoie quatre, parce que « Martin» et « Roux » sont nés le même jour, comme vous le voyez dans la table suivante.

NomFamille DateNaissance
Berka 26.09.68
Jackson 02.10.70
Roux 15.10.65
Martin 15.10.69

Si vous voyez moins d'enregistrements que spécifiés

Supposons que vous conceviez une requête pour renvoyer les cinq premiers ou derniers enregistrements d'un champ, mais que la requête n'en renvoie que trois. En règle générale, vous résolvez ce type de problème en ouvrant la requête en mode Création et en vérifiant la ligne Critères des colonnes de la grille de création.

Pour plus d'informations sur les critères, voir l'article Exemples de critères de requête.

Si vous voyez des enregistrements en double

Si une requête de premières valeurs renvoie des doublons, les tables sous-jacentes contiennent des enregistrements en double, ou bien des enregistrements ressemblent à des doublons parce que la requête n'inclut pas les champs qui permettent de les distinguer. Par exemple, le tableau suivant présente les résultats d'une requête qui renvoie les cinq dernières commandes à avoir été livrées, ainsi que le nom du commercial responsable de la transaction.

DateExpédition Vendeur
12.11.04 Freitag
12.11.04 Cajhen
12.10.04 Delgado
12.10.04 Delgado
12.10.04 Freitag

Les troisième et quatrième enregistrements semblent être des doublons, mais il se peut que le vendeur nommé Delgado ait géré deux commandes différentes qui ont été livrées le même jour.

Selon les cas, vous avez deux solutions possibles pour éviter de renvoyer des enregistrements en double. Vous pouvez modifier la structure de la requête pour ajouter des champs qui permettront de différencier les enregistrements, par exemple les champs N° commande et Réf client. Vous pouvez aussi, si vous avez juste besoin de voir un des doublons, afficher uniquement des enregistrements distincts en définissant la propriété Valeurs distinctes de la requête sur la valeur Oui. Pour définir cette propriété, dans le mode Création de la requête, cliquez avec le bouton droit n'importe où dans la zone vide dans la moitié supérieure du concepteur de requêtes, puis cliquez sur Propriétés dans le menu contextuel. Dans la feuille de propriétés de la requête, localisez la propriété Valeurs distinctes et choisissez la valeur Oui.

Pour plus d'informations sur la gestion des enregistrements en double, voir l'article Trouver, masquer ou éliminer des données en double.

Haut de la page Haut de la page

Trouver les plus récentes ou les plus anciennes dates pour les enregistrements de catégories ou de groupes

Utilisez une requête de totaux pour trouver les dates les plus anciennes ou les plus récentes pour les enregistrements qui tombent dans des groupes ou des catégories. Il s'agit d'une requête Sélection qui utilise des fonctions d'agrégation telles que Min, Max, Sum, First et Last pour calculer des valeurs pour un champ donné.

Cette section suppose que votre activité concerne la préparation d'événements : vous vous occupez de l'organisation, des éclairages, de la restauration et des autres aspects utiles. De plus, les événements dont vous vous occupez se classent dans plusieurs catégories, par exemple les lancements de produits, les spectacles de rue et les concerts. Cette section explique comment répondre à une question récurrente : quelle est la date du prochain événement, par catégorie ? Autrement dit, quand aura lieu le prochain lancement de produit, le prochain concert, etc.

Souvenez-vous de ceci : par défaut, le type de requête de totaux que vous créez ne peut inclure que le champ qui contient les données du groupe ou de la catégorie et le champ qui contient les dates. Vous ne pouvez pas inclure d'autres champs qui décrivent les éléments d'une catégorie, tels que le nom du client ou du fournisseur. Toutefois, vous pouvez créer une deuxième requête qui combine votre requête de totaux avec les champs qui contiennent des données descriptives. Les étapes suivantes expliquent comment procéder.

Cette section suppose que vous utilisez ces trois tables :

Table Type d'événement  

N° type Type d'événement
1 Lancement de produit
2 Fonction d'entreprise
3 Fonction privée
4 Collecte de fonds
5 Salon
6 Séminaire
7 Concert
8 Exposition
9 Spectacle de rue

Table Clients  

Réf client Société Coordonnées
1 Contoso, Ltd., image Jonathan Haas
2 Tailspin Toys Ellen Adams
3 Fabrikam Carol Philips
4 Wingtip Toys Lucio Iallo
5 A. Datum Mandar Samant
6 Adventure Works Duerr, Bernard
7 Design Institute Jaka Stele
8 École des Beaux-arts Milena Duomanova

Table Événements  

RéfÉvénement Type d'événement Client Date de l’événement Prix
1 Lancement de produit Contoso, Ltd. 14.04.03 $10 000
2 Fonction d'entreprise Tailspin Toys 21.04.03 $8 000
3 Salon Tailspin Toys 01.05.03 $25 000
4 Exposition Graphic Design Institute 13.05.03 $4 500
5 Salon Contoso, Ltd. 14.05.03 $55 000
6 Concert École des Beaux-arts 23.05.03 $12 000
7 Lancement de produit A. Datum 01.06.03 $15 000
8 Lancement de produit Wingtip Toys 18.06.03 $21 000
9 Collecte de fonds Adventure Works 22.06.03 $1 300
10 Séminaire Graphic Design Institute 25.06.03 $2 450
11 Séminaire Contoso, Ltd. 04.07.03 $3 800
12 Spectacle de rue Graphic Design Institute 04.07.03 $5 500

 Remarque   Cette section suppose que les tables Clients et Type d'événement se trouvent du côté « un » de relations de un-à-plusieurs avec la table Événements. Dans ce cas, la table Événements a en commun les champs Réf client et N° type. Les requêtes de totaux décrites dans les sections suivantes ne fonctionneront pas sans ces relations.

AfficherComment ajouter ces données à une base de données ?

Pour ajouter ces tables exemple à une base de données, vous pouvez suivre les étapes de la section intitulée Trouver des enregistrements avec les premières ou les dernières valeurs, à quelques exceptions près :

  • Lorsque vous copiez les tables Types d'événement et Clients dans Excel, n'incluez pas les colonnes N° type et Réf client. Access ajoutera pour vous des valeurs de clé primaire lors de l'importation des feuilles de calcul, ce qui vous fera gagner du temps.
  • Une fois les tables importées, vous devez ouvrir la table Événements en mode Création et convertir les colonnes Type d'événement et Client en champs Liste de choix. Pour cela, cliquez sur la colonne Type de données de ces champs, puis cliquez sur Assistant Liste de choix.

    Dans le cadre de la création des champs Liste de choix, Access remplace les valeurs de texte des colonnes Type d'événement et Client par des valeurs numériques issues des tables source.

    Pour plus d'informations sur la création et l'utilisation des champs Liste de choix, voir les articles Utiliser une liste qui stocke plusieurs valeurs et Guide pour les champs à plusieurs valeurs. Ces deux articles expliquent comment créer un type de champ Liste de choix qui vous permet de sélectionner plusieurs valeurs pour un champ donné et comment créer des listes de recherche.

Créer la requête de totaux

  1. Sous l'onglet Créer, dans le groupe Autre, cliquez sur Création requête.

    La boîte de dialogue Afficher la table s'affiche.

  2. Dans cette boîte de dialogue, sélectionnez les tables qui vous intéressent et cliquez sur Ajouter, puis sur Fermer lorsque vous avez fini d'ajouter les tables.

    - ou -

    Double-cliquez sur les tables qui vous intéressent, puis cliquez sur Fermer. Chaque table s'affiche dans la partie supérieure du concepteur de requêtes.

    Si vous utilisez les tables exemple précédentes, ajoutez les tables Événements et Types d'événement.

  3. Double-cliquez sur les champs de table à utiliser dans la requête. À ce stade, prenez soin d'ajouter uniquement les champs du groupe ou de la catégorie et le champ de la valeur à la requête.

    Si vous utilisez les données exemple fournies dans les trois tables précédentes, ajoutez soit le champ Type d'événement de la table Type d'événement, soit le champ Date de l'événement de la table Événements.

  4. Vous pouvez éventuellement spécifier des critères pour limiter la portée de la requête. Seuls les enregistrements qui répondent à ces critères sont triés et les premières et dernières valeurs sont identifiées dans cette liste.

    Par exemple, si vous souhaitez renvoyer des événements de la catégorie Fonction privée, tapez cette expression dans la ligne Critères de la colonne Type d'événement : <>"Fonction privée".

    Vous trouverez d'autres exemples d'expressions pour les critères de requête dans l'article Exemples de critères de requête.

  5. Convertissez la requête en une requête de totaux en procédant ainsi :

    Sous l'onglet Créer, dans le groupe Afficher/Masquer, cliquez sur Totaux.

    La ligne Totaux s'affiche dans la grille de création.
  6. Vérifiez que la ligne Totaux de chaque champ de groupe ou de catégorie a la valeur Grouper par, puis définissez la ligne Totaux du champ de la valeur (celui avec les premières ou les dernières valeurs) sur Max ou Min.

    Max renvoie la valeur la plus élevée d'un champ numérique et la date la plus récente d'un champ Date/Heure. Min renvoie la plus petite valeur d'un champ numérique et la date ou l'heure la plus ancienne d'un champ Date/Heure.

  7. Sous l'onglet Créer, dans le groupe Outils, cliquez sur la flèche vers le bas en regard de Tout (liste Première valeurs), puis entrez le nombre d'enregistrements à afficher ou sélectionnez une option dans la liste.

    Dans ce cas, sélectionnez Tout, puis cliquez sur Exécuter pour afficher les résultats en mode Feuille de données.

     Remarque   Selon la fonction que vous avez choisie à l'étape 6, Access remplace le nom du champ de la valeur dans la requête par MaxOfNomChamp ou MinOfNomChamp. Si vous utilisez les tables exemple, Access change le nom du champ en MaxOfEvent Date ou MinOfEvent Date.

  8. Enregistrez la requête et passez aux étapes suivantes.

Les résultats de la requête n'indiquent pas le nom des produits ni d'autres informations les concernant. Pour voir des données supplémentaires, vous devez créer une deuxième requête qui incorpore celle que vous venez de créer. Les étapes suivantes expliquent comment procéder.

Créer une deuxième requête pour ajouter d'autres données

  1. Sous l'onglet Créer, dans le groupe Autre, cliquez sur Création requête.
  2. Dans la boîte de dialogue Afficher la table, cliquez sur l'onglet Requêtes, puis double-cliquez sur la requête de totaux que vous avez créée dans la section précédente.
  3. Cliquez sur l'onglet Tables et ajoutez les tables que vous avez utilisées dans la requête de totaux, ainsi que les tables qui contiennent d'autres données apparentées. Si vous utilisez les trois tables exemple précédentes, ajoutez les tables Type d'événement, Événement et Clients à votre nouvelle requête.
  4. Dans la requête de totaux, associez les champs aux champs correspondants dans les tables parentes. Pour cela, faites glisser les champs de la requête de totaux vers les champs correspondants dans la table.

    Si vous utilisez les données exemple de ces trois tables, faites glisser la colonne Type d'événement de la requête de totaux vers le champ Type d'événement de la table Type d'événement. Ensuite, faites glisser la colonne MaxOfEvent Date de la requête de totaux vers le champ Date de l'événement de la table Événements. Grâce à ces jointures, votre nouvelle requête Sélection peut rassembler les données de la requête de totaux et les données des autres tables.

  5. Ajoutez dans la requête les autres champs descriptifs à partir des autres tables.

    Si vous utilisez les données exemple des trois tables, vous pouvez ajouter les champs Société et Coordonnées de la table Clients.

  6. Au besoin, spécifiez un ordre de tri pour une ou plusieurs colonnes. Par exemple, pour classer les catégories par ordre alphabétique, choisissez Croissant dans la ligne Tri de la colonne Type d'événement.
  7. Sous l'onglet Créer, dans le groupe Résultats, cliquez sur Exécuter.

    Les résultats de la requête s'affichent en mode Feuille de données.

Conseil  Si vous ne souhaitez pas que le titre de la colonne Prix soit affiché sous la forme MaxOfPrice ou MinOfPrice, ouvrez la requête en mode Création et, dans la colonne Prix de la grille, tapez Prix: MaxOfPrice ou Prix: MinOfPrice. Prix sera affiché comme titre de la colonne en mode Feuille de données.

Haut de la page Haut de la page

Trouver les dates les plus récentes et les plus anciennes

Les requêtes que vous avez créées plus haut dans cet article peuvent renvoyer les premières ou les dernières valeurs, mais pas les deux. Si vous souhaitez voir ces deux types de valeurs ensemble dans le même écran, vous devez créer deux requêtes, une qui extrait les premières valeurs et l'autre qui extrait les dernières, puis fusionner et stocker les résultats dans la même table.

La procédure permettant de trouver les premières et les dernières valeurs et de les afficher dans une table se déroule globalement ainsi :

  • Créez une requête de premières et de dernières valeurs ou, si vous avez besoin de regrouper les données, créez des requêtes de totaux qui utilisent les fonctions Min et Max.
  • Convertissez votre requête de premières valeurs (ou votre requête de totaux Max) en une requête Création de table, puis créez une nouvelle table.
  • Convertissez votre requête de dernières valeurs (ou votre requête de totaux Min) en une requête Ajout et ajoutez les enregistrements dans votre table des premières valeurs.
  • Les étapes décrites dans ces sections expliquent comment procéder.

    Créer les requêtes

    1. Créez les requêtes de premières valeurs et de dernières valeurs.

      Vous trouverez plus de détails sur les étapes nécessaires à la création d'une requête de premières ou dernières valeurs dans Trouver la date la plus récente ou la plus ancienne plus haut dans cet article. Pour en apprendre davantage sur le groupement de vos enregistrements par catégorie, voir Trouver les plus récentes ou les plus anciennes dates pour les enregistrements de catégories ou de groupes plus haut dans cet article.

      Si vous utilisez les tables exemple de la dernière section, utilisez uniquement les données de la table Événements. Utilisez les champs Type d'événement, Client et Date de l'événement de la table Événements dans les deux requêtes.

    2. Enregistrez les requêtes avec un nom descriptif, tel que Première valeur ou Dernière valeur et laissez-les ouvertes pour les utiliser dans les étapes suivantes.

Créer la requête Création de table

  1. Avec la requête de premières valeurs ouverte en mode Création :

    Sous l'onglet Créer, dans le groupe Type de requête, cliquez sur Création de table.

    La boîte de dialogue Création de table s'affiche.

  2. Dans la zone Nom de la table, tapez un nom pour la table qui stockera les premiers et derniers enregistrements. Par exemple, tapez Premiers et derniers enregistrements, puis cliquez sur OK.

    Chaque fois que vous exécutez la requête, au lieu d'afficher les résultats en mode Feuille de données, la requête crée une table et remplace la première valeur par les données actuelles.

  3. Enregistrez et fermez la requête.

Créer une requête Ajout

  1. Avec la requête de dernière valeur en mode Création :

    Sous l'onglet Créer, dans le groupe Type de requête, cliquez sur Ajout.

  2. La boîte de dialogue Ajout s'affiche.
  3. Tapez le même nom que celui que vous avez tapé dans la boîte de dialogue Création de table.

    Par exemple, tapez Premiers et derniers enregistrements, puis cliquez sur OK. Chaque fois que vous exécutez la requête, au lieu d'afficher les résultats en mode Feuille de données, la requête ajoute les enregistrements dans la table Premiers et derniers enregistrements.

  4. Enregistrez et fermez la requête.

Exécuter les requêtes

  • Vous pouvez maintenant exécuter les deux requêtes. Dans le volet de navigation, double-cliquez sur la requête de première valeur, puis cliquez sur Oui lorsqu'Access vous y invite. Ensuite, double-cliquez sur la requête de dernière valeur et cliquez sur Oui lorsqu'Access vous y invite.
  • Ouvrez la table Premiers et derniers enregistrements en mode Feuille de données.

 Important   Si vous essayez d'exécuter les requêtes Création de table ou Ajout et qu'apparemment rien ne se passe, regardez si la barre d'état d'Access affiche ce message :

L'action ou l'événement a été bloqué par le mode désactivé.

Si vous voyez ce message, suivez cette procédure :

  • Si la barre des messages n'est pas déjà visible, affichez-la. Pour ce faire, sous l'onglet Outils de base de données du groupe Afficher/Masquer, cliquez sur Barre des messages.
  • Dans la barre des messages, cliquez sur Options.

    La boîte de dialogue Options de sécurité dans Microsoft Office s'affiche.

  • Sélectionnez Activer ce contenu, puis cliquez sur OK.
  • Réexécutez la requête.

Pour plus d'informations sur le mode Désactivé et la sécurité dans Access, voir l'article Sécuriser une base de données Access 2007.

Haut de la page Haut de la page

publicité