ACC2000 : Procédure pour créer une requête Analyse croisée comportant plusieurs champs de valeurs

Traductions disponibles Traductions disponibles
Numéro d'article: 209143 - Voir les produits auxquels s'applique cet article
Pour une version Microsoft Access 2002 de cet article, consultez le document 304458.
Agrandir tout | Réduire tout

Résumé

Niveau débutant : exige une connaissance de l'interface utilisateur sur des ordinateurs mono-utilisateur.

Dans une requête Analyse croisée Microsoft Access, vous ne pouvez spécifier qu'un seul champ ou calcul comme valeur. Il vous sera souvent nécessaire d'afficher plus d'une valeur dans la requête.

Ainsi, l'exemple suivant présente deux colonnes d'informations par société, le comptage du nombre des commandes et le total des commandes par année :
   Company Name  1998 Orders  1998 Total  1999 Orders  1999 Total
   --------------------------------------------------------------
   ABC Company   12           $855.00     15           $1010.25
   XYZ Company   1017         $22045.57   1050         $25345.29
				
Ce type de requête est parfois appelée requête avec plusieurs champs de valeurs.

REMARQUE : Vous pouvez visualiser une démonstration de la technique utilisée dans cet article dans le fichier exemple Qrysmp00.exe. Pour plus d'informations sur la procédure à suivre pour obtenir ce fichier exemple, consultez l'article suivant de la Base de connaissances Microsoft :
207626 ACC2000 : Exemples de requêtes Access 2000 disponibles auprès du Centre de téléchargement

Plus d'informations

Afin de créer une requête Analyse croisée comportant plusieurs champs de valeurs, vous devez créer une requête Analyse croisée distincte pour chaque valeur que vous voulez 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 suivant utilise la base de données exemple Northwind.mdb pour créer une requête qui affiche des résultats similaires à l'exemple de la section « Résumé » du présent article. Il indique le nombre de ventes et le total annuel pour chaque société.
  1. Ouvrez la base de données exemple Northwind.mdb et créez la requête Analyse croisée suivante basée sur les tables Orders, Order Details et Customers :
       Query: Order Total
       ------------------
       Type: Crosstab Query
       Join: Customers.[CustomerID] <-> Orders.[CustomerID]
       Join: Orders.[OrderID] <-> Order Details.[OrderID]
    
       Field: CompanyName
          Table Name: Customers
          Total: Group By
          Crosstab: Row Heading
    
       Field: Expr1: Year([OrderDate]) & " " & "Order Total"
          Table Name:
          Total: Group By
          Crosstab: Column Heading
    
      Field: Expr2: Sum(CCur([UnitPrice]*[Quantity]*(1-[Discount])))
          Table Name:
          Total: Expression
          Crosstab: Value
    					
  2. Créez la requête Analyse croisée suivante basée sur les tables Orders et Customers :
       Query: Order Count
       ------------------
       Type: Crosstab Query
       Join: Customers.[CustomerID] <-> Orders.[CustomerID]
    
       Field: CompanyName
          Table Name: Customers
          Total:      Group By
          Crosstab:   Row Heading
    
       Field: Expr1: Year([OrderDate]) & " " & "Order Count"
          Table Name:
          Total: Group By
          Crosstab: Column Heading
    
       Field: OrderID
          Table Name: Orders
          Total:      Count
          Crosstab:   Value
    					
  3. Créez une requête basée sur les requêtes Analyse croisée Order Total et Order Count. Vous utiliserez CompanyName ainsi que les champs Order Total et Order Count pour les années dont vous voulez connaître les résultats. L'exemple suivant utilise les deux dernières années de Order Total et Order Count dans Microsoft Access.
       Query: Multiple Values
       ----------------------
       Join: Order Total.[CompanyName] <-> Order Count.[CompanyName]
    
       Field: CompanyName
          Table Name: Order Count
    
       Field: 1997 Order Count
          Table Name: Order Count
    
       Field: 1997 Order Total
          Table Name: Order Total
    
       Field: 1998 Order Count
          Table Name: Order Count
    
       Field: 1998 Order Total
          Table Name: Order Total
    					
Exécution des résultats des requêtes à valeurs multiples dans une table semblable à la suivante :
                         1997 Order  1997 Order  1998 Order  1998 Order
   Company Name            Count       Total       Count       Total
   --------------------------------------------------------------------
   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 dans la requête. Par exemple, dans l'étape 1, vous remplaceriez :
   Year([OrderDate]) & " " & "Order Total"
				
par :
   Year([Orders].[OrderDate]) & " " & "Order Total"
				
Si vous ajoutez le nom de la table dans 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 ambigüe.

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.

Propriétés

Numéro d'article: 209143 - Dernière mise à jour: vendredi 4 avril 2003 - Version: 1.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Access 2000 Standard Edition
Mots-clés : 
kbhowto KB209143
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com