Vous êtes actuellement hors ligne, en attente de reconnexion à Internet.

Comment faire pour créer une requête Analyse croisée comportant plusieurs champs de valeur

Le support d'Office 2003 a pris fin

Microsoft a mis fin au support d'Office 2003 le 8 avril 2014. Cette modification a affecté vos mises à jour logicielles et options de sécurité. Découvrez les implications de ce changement à votre niveau et la marche à suivre pour rester protégé.

Utilisateurs avertis : cet article requiert des connaissances de base en matière de macros, de programmation et d'interopérabilité.

Cet article s'applique uniquement aux bases de données Microsoft Access (.mdb).

Pour vous procurer une version Microsoft Access 2000 de cet article, reportez-vous à l'article 209143.
Pour vous procurer une version Microsoft Access 97 de cet article, reportez-vous à l'article 109939.
Résumé
Dans une requête Analyse croisée de Microsoft Access, vous ne pouvez spécifier qu'un seul champ ou calcul comme valeur. Vous souhaiterez peut-être afficher plus d'une valeur dans la requête.

L'exemple ci-dessous présente deux colonnes d'informations par société : le nombre et le total des commandes par année.
   Nom de la société  Commandes 1998  Total 1998  Commandes 1999  Total 1999   -------------------------------------------------------------------------   Société ABC        12              $855.00     15              $1010.25   Société XYZ        1017            $22045,57   1050            $25345,29				
Ce type de requête est parfois appelé requête avec plusieurs champs de valeur.
Plus d'informations
Pour créer une requête Analyse croisée comportant plusieurs champs de valeur, vous devez créer une requête Analyse croisée distincte pour chaque valeur à calculer. Ces requêtes peuvent alors être jointes à l'aide d'une requête Sélection pour afficher les résultats souhaités.

L'exemple ci-dessous utilise la base de données exemple Comptoir.mdb pour créer une requête qui affiche des résultats similaires à l'exemple présenté dans la section "Résumé" du présent article. Il indique le nombre de ventes et le total annuels pour chaque société.
  1. Ouvrez la base de données exemple Comptoir.mdb et créez la requête Analyse croisée suivante basée sur les tables Commandes, Détails commandes et Clients :
       Requête : Total commandes   -------------------------   Type : Requête Analyse croisée   Joindre : Clients.[Code client] <-> Commandes.[Code client]   Joindre : Commandes.[N° commande] <-> Détails commande.[N° commande]   Champ : Société      Nom de la table : Clients      Total : Grouper par      Analyse croisée : En-tête de ligne   Champ : Expr1 : Année([Date commande]) & " " & "Total commandes"      Nom de la table :      Total : Grouper par      Analyse croisée : En-tête de colonne  Champ : Expr2 : Sum(CCur([Prix unitaire]*[Quantité]*(1-[Remise])))      Nom de la table :      Total : Expression      Analyse croisée : Valeur					
  2. Enregistrez cette requête sous Total commandes.
  3. Créez la requête Analyse croisée suivante basée sur les tables Commandes et Clients :
       Requête : Nombre commandes   --------------------------   Type : Requête Analyse croisée   Joindre : Clients.[Code client] <-> Commandes.[Code client]   Champ : Société      Nom de la table : Clients      Total :           Grouper par      Analyse croisée : En-tête de ligne   Champ : Expr1 : Année([Date commande]) & " " & "Nombre commandes"      Nom de la table :      Total : Grouper par      Analyse croisée : En-tête de colonne   Champ : N° commande      Nom de la table : Commandes      Total :           Nombre      Analyse croisée : Valeur					
  4. Enregistrez cette requête sous Nombre commandes.
  5. Créez une requête basée sur les requêtes Analyse croisée Total commandes et Nombre commandes. Utilisez les champs Société, Total commandes et Nombre commandes pour les années dont vous voulez connaître les résultats. L'exemple suivant utilise les deux dernières années de Total commandes et Nombre commandes dans Microsoft Access.
       Requête : Valeurs multiples   ---------------------------   Joindre : Total commandes.[Société] <-> Nombre commandes.[Société]   Champ : Société      Nom de la table : Nombre commandes   Champ : Nombre commandes 1997      Nom de la table : Nombre commandes   Champ : Total commandes 1997      Nom de la table : Total commandes   Champ : Nombre commandes 1998      Nom de la table : Nombre commandes   Champ : Total commandes 1998      Nom de la table : Total commandes					
  6. Lorsque vous exécutez une requête à plusieurs valeurs, une table semblable à la suivante s'affiche :
                                 Nombre          Total           Nombre          Total   Nom société           commandes 1997  commandes 1997  commandes 1998  commandes 1998   ----------------------------------------------------------------------------------------------------   Alfred's Futterkiste           3           $2,022.50           3           $2,022.50   Ana Trujillo                   2             $799.75           1             $514.10   Antonio Moreno                 5           $5,960.78           1             $660.00					
    REMARQUE : vous devez ajouter le nom de la table à l'expression si le champ spécifié pour la concaténation figure dans plusieurs des tables jointes de la requête. Par exemple, à l'étape 1, vous devez remplacer :
       Année([Date commande]) & " " & "Total commandes"					
    par :
       Année([Commandes].[Date commande]) & " " & "Total commandes"					
    Si vous ajoutez le nom de la table sur la ligne Table, vous générez une erreur de syntaxe. Si vous omettez complètement le nom de la table, vous générez une erreur de référence ambiguë.
Références
Pour plus d'informations sur les requêtes Analyse croisée, cliquez sur Aide sur Microsoft Access dans le menu ? (Aide), tapez Requêtes Analyse croisée dans le Compagnon Office ou l'Aide intuitive, puis cliquez sur Rechercher pour afficher les rubriques correspondantes.
ACC2002 reviewdocid
Propriétés

ID d'article : 304458 - Dernière mise à jour : 02/23/2007 01:32:36 - Révision : 5.1

Microsoft Office Access 2003, Microsoft Access 2002

  • kbquery kbhowto KB304458
Commentaires
/html>d")[0].appendChild(m); amp;t=">