Cet article explique comment calculer la somme des données figurant dans un jeu de résultats de requête au moyen d'une fonction dite d'« agrégation ». Par ailleurs, cet article explique brièvement comment utiliser les autres fonctions d'agrégation, telles que COMPTE et MOYENNE, afin de calculer le total ou la moyenne des valeurs affichées dans un jeu de résultats. Enfin, cet article explique comment utiliser la ligne Total, nouvelle fonctionnalité de Microsoft Office Access 2007, qui permet de calculer des sommes de données sans avoir à modifier la structure de vos requêtes.
Que voulez-vous faire ?
Comprendre les méthodes de calcul des sommes de données
Vous pouvez calculer la somme d'une colonne de données numériques dans une requête en faisant appel à une fonction dite d'agrégation. Les fonctions d'agrégation effectuent un calcul au niveau d'une colonne de données et renvoient une valeur unique. Access propose plusieurs fonctions d'agrégation, dont notamment Somme, Compte, Moyenne (pour calculer les moyennes), Min et Max. Pour calculer une somme de données, vous devez ajouter la fonction Somme à votre requête ; pour compter les données, vous devez utiliser la fonction Compte, et ainsi de suite.
Par ailleurs, Office Access 2007 propose plusieurs façons d'ajouter la fonction Somme et les autres fonctions d'agrégation à une requête. En effet, vous pouvez :
- Ouvrir votre requête en mode Feuille de données et ajouter une ligne Total. La ligne Total, nouvelle fonctionnalité de Office Access 2007, permet d'utiliser une fonction d'agrégation dans une ou plusieurs colonnes d'un jeu de résultats de requête sans avoir à modifier la structure de la requête.
- Créer une requête Totaux. Les requêtes Totaux permettent de calculer des sous-totaux pour des groupes d'enregistrements ; une ligne Total permet, quant à elle, de calculer les totaux généraux d'une ou plusieurs colonnes (champs) de données. Par exemple, si vous voulez calculer le sous-total des ventes par ville ou par quartier, vous devez utiliser une requête Totaux pour regrouper les enregistrements en fonction de la catégorie voulue et ensuite effectuer la somme des chiffres de ventes.
- Créer une requête Analyse croisée. Les requêtes Analyse croisée correspondent à un type de requête particulier qui présentent leurs résultats dans une grille semblable à une feuille de calcul Microsoft Office Excel 2007. Ces requêtes synthétisent les valeurs pour les regrouper ensuite en deux ensembles de données : l'un sur le plan vertical (en-têtes de ligne), et l'autre sur le plan horizontal (en-têtes de colonne). Par exemple, vous pouvez utiliser une requête Analyse croisée pour afficher le total des ventes pour chaque ville au cours des trois dernières années, comme l'illustre le tableau suivant :
| Ville |
2003 |
2004 |
2005 |
| Paris |
254 556 |
372 455 |
467 892 |
| Sydney |
478 021 |
372 987 |
276 399 |
| Jakarta |
572 997 |
684 374 |
792 571 |
| ... |
... |
... |
... |
Remarque Les sections de procédure contenues dans ce document portent essentiellement sur l'utilisation de la fonction Somme, mais gardez à l'esprit que vous pouvez utiliser d'autres fonctions d'agrégation dans vos lignes Total et autres requêtes. Pour plus d'informations sur l'utilisation des autres fonctions d'agrégation, voir la section Référence aux fonctions d'agrégation, plus loin dans cet article.
Pour plus d'informations sur les méthodes d'utilisation des autres fonctions d'agrégation, voir l'article Afficher des totaux de colonnes dans une feuille de données.
Les procédures présentées dans les sections suivantes expliquent comment ajouter une ligne Total, comment utiliser une requête Totaux pour calculer la somme des données de différents groupes, et comment utiliser une requête Analyse croisée pour calculer le sous-total des données de différents groupes sur différentes périodes. Avant d'opérer, n'oubliez pas que bon nombre de fonctions d'agrégation s'appliquent uniquement aux données de champs associés à un certain type de données. Par exemple, la fonction SOMME ne fonctionne qu'avec les champs associés aux types de données Numérique, Décimal ou Monétaire. Pour plus d'informations sur les types de données requis pour chaque fonction, voir la section Référence aux fonctions d'agrégation, plus loin dans cet article.
Pour des informations générales sur les types de données, consultez l'article Modifier le type de données défini pour un champ.
Haut de la page
Préparer des données d'exemple
Les sections de procédures de cet article fournissent des tableaux d'exemples de données. Ces procédures font appel aux exemples de tables afin de mieux comprendre les fonctions d'agrégation. Si vous préférez, vous pouvez éventuellement ajouter les exemples de tables à une base de données nouvelle ou existante.
Dans Access, vous pouvez ajouter ces exemples de tables de différentes manières à une base de données. Vous pouvez entrer les données manuellement, vous pouvez copier chaque table dans un tableur tel que Microsoft Office Excel 2007, puis importer les feuilles de calcul dans Access, ou vous pouvez coller les données dans un éditeur de texte tel que le Bloc-notes pour les importer.
Les étapes de cette section expliquent comment entrer des données manuellement dans une feuille de données vierge, ainsi que comment copier les exemples de tables dans un tableur, puis les importer dans Access 2007. Pour plus d'informations sur la création et l'importation de données texte, voir Importer ou attacher des données d'un fichier texte.
Les procédures décrites dans cet article s'appuient sur les tables ci-dessous, que vous pouvez utiliser pour créer les exemples de données :
Table Catégories :
| Catégorie |
| Poupées |
| Jeux et casses-têtes |
| Art et encadrement |
| Jeux vidéo |
| DVD et films |
| Maquettes et modélisme |
| Sports |
Table Produits :
| Produit |
Prix |
Catégorie |
| Figurine articulée de programmeur |
12,95 € |
Poupées |
| C# en folie (jeu de société pour toute la famille) |
15,85 € |
Jeux et casses-têtes |
| Schéma de base de données relationnelle |
22,50 € |
Art et encadrement |
| La puce informatique magique (500 pièces) |
32,65 € |
Jeux et casses-têtes |
| Access, le jeu ! |
22,95 € |
Jeux et casse-tête |
| Accros de l'informatique et créatures mythiques |
78,50 € |
Jeux vidéo |
| Gym pour les accros de l'informatique, le DVD ! |
14,88 € |
DVD et films |
| La pizza volante |
36,75 € |
Sports |
| Lecteur de disquette externe 5,25 pouces (échelle 1/4) |
65,00 € |
Maquettes et modélisme |
| Figurine non articulée de bureaucrate |
78,88 € |
Poupées |
| Ténèbres |
53,33 € |
Jeux vidéo |
| Fabriquez votre propre clavier |
77,95 € |
Maquettes et modélisme |
Table Commandes :
| Date de commande |
Date d'expédition |
Ville de destination |
Coût de transport |
| 14.11.05 |
15.11.05 |
Jakarta |
55,00 € |
| 14.11.05 |
15.11.05 |
Sydney |
76,00 € |
| 16.11.05 |
17.11.05 |
Sydney |
87,00 € |
| 17.11.05 |
18.11.05 |
Jakarta |
43,00 € |
| 17.11.05 |
18.11.05 |
Paris |
105,00 € |
| 17.11.05 |
18.11.05 |
Stuttgart |
112,00 € |
| 18.11.05 |
19.11.05 |
Vienne |
215,00 € |
| 19.11.05 |
20.11.05 |
Miami |
525,00 € |
| 20.11.05 |
21.11.05 |
Vienne |
198,00 € |
| 20.11.05 |
21.11.05 |
Paris |
187,00 € |
| 21.11.05 |
22.11.05 |
Sydney |
81,00 € |
| 23.11.05 |
24.11.05 |
Jakarta |
92,00 € |
Table Détails commande :
| Réf. commande |
Produit |
Réf. produit |
Prix unitaire |
Quantité |
Remise |
| 1 |
Fabriquez votre propre clavier |
12 |
77,95 € |
9 |
5 % |
| 1 |
Figurine non articulée de bureaucrate |
2 |
78,88 € |
4 |
7,5 % |
| 2 |
Gym pour les accros de l'informatique, le DVD ! |
7 |
14,88 € |
6 |
4 % |
| 2 |
La puce informatique magique |
4 |
32,65 € |
8 |
0 |
| 2 |
Accros de l'informatique et créatures mythiques |
6 |
78,50 € |
4 |
0 |
| 3 |
Access, le jeu ! |
5 |
22,95 € |
5 |
15 % |
| 4 |
Figurine articulée de programmeur |
1 |
12,95 € |
2 |
6 % |
| 4 |
La pizza volante |
8 |
36,75 € |
8 |
4 % |
| 5 |
Lecteur de disquette externe 5,25 pouces (échelle 1/4) |
9 |
65,00 € |
4 |
10 % |
| 6 |
Schéma de base de données relationnelle |
3 |
22,50 € |
12 |
6,5 % |
| 7 |
Ténèbres |
11 |
53,33 € |
6 |
8 % |
| 7 |
Schéma de base de données relationnelle |
3 |
22,50 € |
4 |
9 % |
Remarque Notez que dans une base de données-type, la table regroupant les détails des commandes comportera un champ Réf. produit, mais pas de champ Produit. La table d'exemple intègre un champ Produit pour faciliter la lecture des données.
Entrer les données d'exemple manuellement
- Sous l'onglet Créer, dans le groupe Tables, cliquez sur Table.
Access ajoute une table vide à la base de données.
Remarque Cette étape est facultative si vous ouvrez une nouvelle base de données vides. Vous devez toutefois l'effectuer si vous souhaitez ajouter une table à la base de données.
- Double-cliquez sur la première cellule de la ligne d'en-tête et entrez le nom du champ dans l'exemple de table.
Par défaut, Access affiche Ajouter un nouveau champ pour indiquer un champ vide dans la ligne d'en-tête, comme suit :
- Utilisez les touches de direction pour atteindre la cellule d'en-tête vide qui suit, puis entrez le nom du deuxième champ (vous pouvez également appuyer sur TAB ou double-cliquer sur la nouvelle cellule). Répétez cette étape jusqu'à ce que vous ayez nommé tous les champs.
- Entrez les données dans la table d'exemple.
Lorsque vous entrez les données, Access définit le type de données de chaque champ. Si vous n'avez pas l'habitude d'utiliser des bases de données relationnelles, sachez que vous devez définir un type de données spécifique (Numérique, Texte ou Date/Heure, par exemple) pour chaque champ des tables. En définissant le type de données, vous garantissez la précision des données entrées et vous évitez certaines erreurs (utiliser un numéro de téléphone dans un calcul, par exemple). Pour ces exemples de tables, laissez Access définir le type de données.
- Après avoir entré les données, cliquez sur Enregistrer.
Raccourci clavier Appuyez sur Ctrl+S.
La boîte de dialogue Enregistrer sous s'affiche.
- Dans la zone Nom de la table, entrez le nom de la table d'exemple, puis cliquez sur OK.
Utilisez le nom de chaque table d'exemple car les requêtes des sections de procédures utilisent ces noms.
- Répétez ces étapes afin de créer toutes les tables d'exemple répertoriées au début de cette section.
Si vous ne souhaitez pas entrer les données manuellement, suivez la procédure ci-dessous pour copier les données dans une feuille de calcul, puis les importer dans Access.
Créer les feuilles de calcul d'exemple
- Démarrez votre tableur et créez un fichier vierge. Si vous utilisez Excel, un nouveau classeur vierge est créé par défaut.
- Copiez la première table d'exemple fournie ci-dessus, puis collez-la dans la première feuille en plaçant le curseur dans la première cellule.
- À l'aide de la méthode fournie par votre tableur, renommez la feuille de calcul en lui attribuant le même nom que la table d'exemple. Par exemple, s'il s'agit de la table Catégories, attribuez ce même nom à la feuille de calcul.
- Répétez les étapes 2 et 3 en copiant chaque table d'exemple dans une feuille de calcul vierge, puis en renommant la feuille.
Remarque Il peut s'avérer nécessaire d'ajouter des feuilles au classeur. Pour plus d'informations sur cette opération, consultez l'aide relative au tableur.
- Enregistrez la feuille de calcul à un emplacement approprié sur votre ordinateur ou votre réseau, puis passez aux étapes suivantes.
Créer des tables de base de données à partir des feuilles de calcul
- Sous l'onglet Données externes, dans le groupe Importer, cliquez sur Excel.
- ou -
Cliquez sur Plus, puis sélectionnez un tableur dans la liste.
La boîte de dialogue Données externes - Feuille de calcul Nom du programme s'affiche.
- Cliquez sur Parcourir, ouvrez le fichier de feuilles de calcul que vous avez créé précédemment, puis cliquez sur OK.
L'Assistant Importation de feuille de calcul démarre.
- Par défaut, l'Assistant sélectionne la première feuille de calcul du classeur (la feuille de calcul Clients, si vous avez suivi les étapes de la section précédente), et les données de cette feuille de calcul s'affichent dans la partie inférieure de la page de l'Assistant. Cliquez sur Suivant.
- Dans la page suivante de l'Assistant, cliquez sur Première ligne contient les en-têtes de colonnes, puis sur Suivant.
- Dans la page suivante, utilisez éventuellement les zones de texte et les listes situées sous Options des champs pour modifier le nom et le type de données des champs ou pour omettre certains champs de l'opération d'importation. Sinon, cliquez sur Suivant.
- Laissez l'option Laisser Access ajouter une clé primaire activée, puis cliquez sur Suivant.
- Par défaut, Access applique le nom de la feuille de calcul à la nouvelle table. Acceptez le nom ou entre-en un autre, puis cliquez sur Terminer.
- Répétez les étapes 1 à 7 jusqu'à ce que vous ayez créé une table à partir de chaque feuille de calcul du classeur.
Renommer les champs clé primaire
Remarque Au moment où vous avez importé les feuilles de calcul, une colonne de clé primaire a été automatiquement ajoutée à chaque table et, par défaut, Access a nommé cette colonne « ID » et l'a associée au type de données NuméroAuto. La procédure décrite dans cette section explique comment renommer chaque champ de clé primaire. Cette opération permet d'identifier plus facilement tous les champs d'une requête.
- Dans le volet de navigation, cliquez avec le bouton droit sur chacune des tables que vous avez créées au cours des étapes précédentes, puis cliquez sur Mode Création.
- Pour chaque table, repérez le champ clé primaire. Par défaut, Access nomme chaque champ ID.
- Dans la colonne Nom du champ de chaque champ clé primaire, ajoutez le nom de la table.
Par exemple, il serait opportun de renommer le champ ID de la table Catégories en « Code catégorie » et le champ de la table Commandes en « Réf. commande ». En ce qui concerne la table Détails des commandes, renommez le champ en « Réf. détail ». Pour la table Produits, renommez le champ en « Réf. produit ».
- Enregistrez vos modifications.
Les tables d'exemple présentées dans cet article incluent systématiquement le champ clé primaire, qui a été renommé selon les suggestions des étapes précédentes.
Haut de la page
Calculer une somme de données en utilisant une ligne Total
Vous pouvez ajouter une ligne Total à une requête en ouvrant celle-ci en mode Feuille de données, en ajoutant la ligne, puis en sélectionnant la fonction d'agrégation que vous souhaitez utiliser : Somme, Min, Max, Moyenne, etc. La procédure décrite dans cette section explique comment créer une requête Sélection de base et comment y ajouter une ligne Total. Il n'est pas nécessaire d'utiliser les tables d'exemple décrites dans la section précédente.
Créer une requête Sélection de base
- Sous l'onglet Créer, dans le groupe Autre, cliquez sur Création de requête.
- Dans la boîte de dialogue Afficher la table, double-cliquez sur la ou les tables que vous souhaitez utiliser dans la requête, puis cliquez sur Fermer.
La ou les tables sélectionnées s'affichent sous forme de fenêtres dans la partie supérieure du concepteur de requêtes.
- Double-cliquez sur les champs de table que vous voulez utiliser dans la requête.
Vous pouvez inclure des champs contenant des données descriptives, telles que des noms et des descriptions, mais vous devez inclure un champ qui contient des données numériques ou monétaires.
Chaque champ apparaît dans une cellule de la grille de création.
- Cliquez sur Exécuter
pour exécuter la requête.
Le jeu de résultats de la requête s'affiche en mode Feuille de données.
- Vous pouvez éventuellement basculer en mode Création pour ajuster votre requête. Pour ce faire, cliquez avec le bouton droit sur l'onglet du document correspondant à la requête et cliquez sur Mode Création. Vous pouvez ensuite ajuster la requête selon vos préférences en ajoutant ou supprimant des champs de table. Pour supprimer un champ, sélectionnez la colonne dans la grille de création, puis appuyez sur Suppr.
- Enregistrez votre requête.
Ajouter une ligne Total
- Assurez-vous que votre requête est ouverte en mode Feuille de données. Pour ce faire, cliquez avec le bouton droit sur l'onglet du document correspondant à la requête, puis cliquez sur Mode Feuille de données.
- ou -
Dans le volet de navigation, double-cliquez sur la requête. La requête s'exécute et les résultats se chargent dans une feuille de données.
- Sous l'onglet Accueil, dans le groupe Enregistrements, cliquez sur Totaux.
Une nouvelle ligne Total apparaît dans votre feuille de données.
- Dans la ligne Total, cliquez sur la cellule correspondant au champ dont vous souhaitez calculer la somme, puis sélectionnez Somme dans la liste.
Masquer une ligne Total
- Sous l'onglet Accueil, dans le groupe Enregistrements, cliquez sur Totaux.
Pour plus d'informations sur l'utilisation d'une ligne Total, voir l'article Afficher le total des colonnes dans une feuille de données.
Haut de la page
Calculer des totaux généraux par le biais d'une requête
Un total général consiste en la somme de toutes les valeurs figurant dans une colonne. Vous pouvez calculer plusieurs types de totaux généraux, à savoir :
- un total général simple correspondant à la somme des valeurs d'une colonne unique. Par exemple, vous pouvez calculer le coût total de transport ;
- un total général calculé correspondant à la somme des valeurs de plusieurs colonnes. Par exemple, vous pouvez calculer le total des ventes en multipliant le coût de plusieurs articles par le nombre d'articles commandés, puis en totalisant les valeurs obtenues ;
- un total général excluant certains enregistrements. Par exemple, vous pouvez calculer le total des ventes d'un jour de la semaine écoulée, uniquement.
Les procédures décrites dans les sections suivantes expliquent comment créer chaque type de total général. Ces procédures s'appuient sur les tables Commandes et Détails des commandes.
Table Commandes
| Réf. commande |
Date de commande |
Date d'expédition |
Ville de destination |
Coût de transport |
| 1 |
14.11.05 |
15.11.05 |
Jakarta |
55,00 € |
| 2 |
14.11.05 |
15.11.05 |
Sydney |
76,00 € |
| 3 |
16.11.05 |
17.11.05 |
Sydney |
87,00 € |
| 4 |
17.11.05 |
18.11.05 |
Jakarta |
43,00 € |
| 5 |
17.11.05 |
18.11.05 |
Paris |
105,00 € |
| 6 |
17.11.05 |
18.11.05 |
Stuttgart |
112,00 € |
| 7 |
18.11.05 |
19.11.05 |
Vienne |
215,00 € |
| 8 |
19.11.05 |
20.11.05 |
Miami |
525,00 € |
| 9 |
20.11.05 |
21.11.05 |
Vienne |
198,00 € |
| 10 |
20.11.05 |
21.11.05 |
Paris |
187,00 € |
| 11 |
21.11.05 |
22.11.05 |
Sydney |
81,00 € |
| 12 |
23.11.05 |
24.11.05 |
Jakarta |
92,00 € |
Table Détails des commandes
| Réf. détail |
Réf. commande |
Produit |
Réf. produit |
Prix unitaire |
Quantité |
Remise |
| 1 |
1 |
Fabriquez votre propre clavier |
12 |
77,95 € |
9 |
0,05 |
| 2 |
1 |
Figurine non articulée de bureaucrate |
2 |
78,88 € |
4 |
0,075 |
| 3 |
2 |
Gym pour les accros de l'informatique, le DVD ! |
7 |
14,88 € |
6 |
0,04 |
| 4 |
2 |
La puce informatique magique |
4 |
32,65 € |
8 |
0,00 |
| 5 |
2 |
Accros de l'informatique et créatures mythiques |
6 |
78,50 € |
4 |
0,00 |
| 6 |
3 |
Access, le jeu ! |
5 |
22,95 € |
5 |
0,15 |
| 7 |
4 |
Figurine articulée de programmeur |
1 |
12,95 € |
2 |
0,06 |
| 8 |
4 |
La pizza volante |
8 |
36,75 € |
8 |
0,04 |
| 9 |
5 |
Lecteur de disquette externe 5,25 pouces (échelle 1/4) |
9 |
65,00 € |
4 |
0,10 |
| 10 |
6 |
Schéma de base de données relationnelle |
3 |
22,50 € |
12 |
0,065 |
| 11 |
7 |
Ténèbres |
11 |
53,33 € |
6 |
0,08 |
| 12 |
7 |
Schéma de base de données relationnelle |
3 |
22,50 € |
4 |
0,09 |
Calculer un total général simple
- Sous l'onglet Créer, dans le groupe Autre, cliquez sur Création de requête.
- Dans la boîte de dialogue Afficher la table, double-cliquez sur la table que vous souhaitez utiliser dans la requête, puis cliquez sur Fermer.
Si vous utilisez les données d'exemple, double-cliquez sur la table Commandes.
La table s'affiche dans une fenêtre dans la partie supérieure du concepteur de requêtes.
- Double-cliquez sur le champ dont vous souhaitez calculer la somme. Assurez-vous que ce champ est associé au type de données Numérique ou Monétaire. Si vous essayez de calculer la somme des valeurs d'un champ qui n'est pas de type Numérique (p.ex., un champ de type Texte), Access affiche le message d'erreur Type de données incompatible dans l'expression du critère au moment où vous tentez d'exécuter la requête.
Si vous utilisez les données d'exemple, double-cliquez sur la colonne Coût de transport.
Remarque Vous pouvez ajouter d'autres champs de type Numérique à la grille si vous souhaitez calculer le total général de ces champs. Une requête Totaux permet de calculer le total général de plusieurs colonnes.
- Sous l'onglet Créer, dans le groupe Afficher/Masquer, cliquez sur Totaux.
La ligne Total s'affiche dans la grille de création, tandis que Regroupement apparaît dans la cellule de la colonne Coût de transport.
- Attribuez à la cellule de la ligne Total la valeur Somme.
- Cliquez sur Exécuter
pour exécuter la requête et afficher les résultats en mode Feuille de données.
Conseil Notez qu'Access ajoute systématiquement « SommeDe » au début du nom du champ dont vous calculez la somme. Pour remplacer l'en-tête de colonne par un nom plus explicite, tel que Coût total de transport, repassez en mode Création, puis cliquez dans la ligne Champ de la colonne Coût de transport de la grille de création. Placez le curseur en regard de Coût de transport et tapez les mots Coût total de transport en les faisant suivre de deux points, comme suit : Coût total de transport: Coût de transport.
- Enregistrez éventuellement la requête et fermez-la.
Calculer un total général qui exclue certains enregistrements
- Sous l'onglet Créer, dans le groupe Autre, cliquez sur Création de requête.
- Dans la boîte de dialogue Afficher la table, double-cliquez sur la table Commandes et sur la table Détails des commandes, puis cliquez sur Fermer pour fermer la boîte de dialogue.
- Ajoutez le champ Date de commande de la table Commandes à la première colonne de la grille de création de requête.
- Dans la ligne Critères de la première colonne, tapez Date() -1. Cette expression exclut total calculé les enregistrements correspondant à la date du jour.
- Créez ensuite la colonne de calcul du montant des ventes pour chaque transaction. Tapez l'expression suivante dans la ligne Champ de la deuxième colonne de la grille :
Total ventes : (1-[Détails des commandes].[Remise]/100)*([Détails des commandes].[Prix unitaire]*[Détails des commandes].[Quantité])
Assurez-vous que votre expression fait référence à des champs associés au type de données Numérique ou Monétaire. Si les champs auxquels elle fait référence sont associés à un autre type de données, Access affiche le message Type de données incompatible dans l'expression du critère au moment où vous essayez d'exécuter la requête.
- Sous l'onglet Créer, dans le groupe Afficher/Masquer, cliquez sur Totaux.
La ligne Total s'affiche dans la grille de création, tandis que Regroupement apparaît dans les première et deuxième colonnes.
- Dans la deuxième colonne, attribuez à la cellule de la ligne Total la valeur Somme. La fonction Somme ajoute les différents chiffres de ventes.
- Cliquez sur Exécuter
pour exécuter la requête et afficher les résultats en mode Feuille de données.
- Enregistrez la requête sous le nom Ventes journalières.
Remarque La prochaine fois que vous ouvrirez la requête en mode Création, peut-être remarquerez-vous que les valeurs spécifiées dans les lignes Champ et Total de la colonne Total ventes ont légèrement changé. L'expression est intégrée à la fonction Somme, tandis que la ligne Total indique Expression au lieu de Somme.
Par exemple, si vous utilisez les données d'exemple et que vous créez la requête (comme indiqué dans les étapes précédentes), l'expression se présente ainsi :
Total ventes: Somme((1-[Détails des commandes].Remise/100)*([Détails des commandes].Prix unitaire*[Détails des commandes].Quantité))
Haut de la page
Calculer les totaux de groupes à l'aide d'une requête Totaux
La procédure décrite dans cette section explique comment créer une requête Totaux en vue de calculer les sous-totaux de groupes de données. Au cours de cette étape, gardez à l'esprit que, par défaut, une requête Totaux ne peut inclure que le ou les champs qui contiennent vos données de groupe (p.ex., un champ « Catégories ») et le champ qui contient les données dont vous souhaitez calculer la somme (p.ex., le champ « Ventes ». Les requêtes Totaux ne peuvent pas inclure d'autres champs décrivant les éléments d'une catégorie. Si vous voulez afficher des données descriptives, vous pouvez créer une deuxième requête Sélection qui combine les champs de votre requête Totaux et les champs de données supplémentaires.
Les étapes décrites dans cette section expliquent comment créer des requêtes Totaux et Sélection nécessaires à l'identification du total des ventes de chaque produit. Cette procédure s'appuie sur l'utilisation des tables d'exemple suivantes :
Table Produits
| Réf. produit |
Produit |
Prix |
Catégorie |
| 1 |
Figurine articulée de programmeur |
12,95 € |
Poupées |
| 2 |
C# en folie (jeu de société pour toute la famille) |
15,85 € |
Jeux et casses-têtes |
| 3 |
Schéma de base de données relationnelle |
22,50 € |
Art et encadrement |
| 4 |
La puce informatique magique (500 pièces) |
32,65 € |
Art et encadrement |
| 5 |
Access, le jeu ! |
22,95 € |
Jeux et casses-têtes |
| 6 |
Accros de l'informatique et créatures mythiques |
78,50 € |
Jeux vidéo |
| 7 |
Gym pour les accros de l'informatique, le DVD ! |
14,88 € |
DVD et films |
| 8 |
La pizza volante |
36,75 € |
Sports |
| 9 |
Lecteur de disquette externe 5,25 pouces (échelle 1/4) |
65,00 € |
Maquettes et modélisme |
| 10 |
Figurine non articulée de bureaucrate |
78,88 € |
Poupées |
| 11 |
Ténèbres |
53,33 € |
Jeux vidéo |
| 12 |
Fabriquez votre propre clavier |
77,95 € |
Maquettes et modélisme |
Table Détails des commmandes
| Réf. détail |
Réf. commande |
Produit |
Réf. produit |
Prix unitaire |
Quantité |
Remise |
| 1 |
1 |
Fabriquez votre propre clavier |
12 |
77,95 € |
9 |
5 % |
| 2 |
1 |
Figurine non articulée de bureaucrate |
2 |
78,88 € |
4 |
7,5 % |
| 3 |
2 |
Gym pour les accros de l'informatique, le DVD ! |
7 |
14,88 € |
6 |
4 % |
| 4 |
2 |
La puce informatique magique |
4 |
32,65 € |
8 |
0 |
| 5 |
2 |
Accros de l'informatique et créatures mythiques |
6 |
78,50 € |
4 |
0 |
| 6 |
3 |
Access, le jeu ! |
5 |
22,95 € |
5 |
15 % |
| 7 |
4 |
Figurine articulée de programmeur |
1 |
12,95 € |
2 |
6 % |
| 8 |
4 |
La pizza volante |
8 |
36,75 € |
8 |
4 % |
| 9 |
5 |
Lecteur de disquette externe 5,25 pouces (échelle 1/4) |
9 |
65,00 € |
4 |
10 % |
| 10 |
6 |
Schéma de base de données relationnelle |
3 |
22,50 € |
12 |
6,5 % |
| 11 |
7 |
Ténèbres |
11 |
53,33 € |
6 |
8 % |
| 12 |
7 |
Schéma de base de données relationnelle |
3 |
22,50 € |
4 |
9 % |
La procédure suivante suppose l'existence d'une relation un-à-plusieurs entre les champs Réf. produit des tables Commandes et Détails des commandes, la table Commandes se trouvant du côté « un » de la relation.
Créer la requête Totaux
- Sous l'onglet Créer, dans le groupe Autre, cliquez sur Création de requête.
- Dans la boîte de dialogue Afficher la table, sélectionnez les tables que vous souhaitez utiliser, cliquez sur Ajouter, puis sur Fermer une fois les tables ajoutées.
- ou -
Double-cliquez sur les tables que vous souhaitez utiliser, puis cliquez sur Fermer. Chaque table s'affiche sous forme de fenêtre dans la partie supérieure du concepteur de requêtes.
Si vous utilisez les tables d'exemple présentées précédemment, ajoutez les tables Produits et Détails des commandes.
- Double-cliquez sur les champs de table que vous voulez utiliser dans la requête.
En principe, seuls le champ de groupe et le champ de valeur sont ajoutés à la requête. Cependant, vous pouvez utiliser un calcul à la place d'un champ de valeur. Pour ce faire, suivez les indications fournies dans la procédure suivante.
- Ajoutez le champ Catégorie de la table Produits à la grille de création.
- Créez la colonne de calcul du montant des ventes en tapant l'expression suivante dans la deuxième colonne de la grille :
Total ventes: (1-[Détails des commandes].[Remise]/100)*([Détails des commandes].[Prix unitaire]*[Détails des commandes].[Quantité])
Vérifiez que les champs auxquels vous faites référence dans l'expression sont de type Numérique ou Monétaire. Si vous faites référence à des champs associés à d'autres types de données, Access affiche le message d'erreur Type de données incompatible dans l'expression du critère lorsque vous essayez de passer en mode Feuille de données.
- Sous l'onglet Créer, dans le groupe Afficher/Masquer, cliquez sur Totaux.
La ligne Total s'affiche dans la grille de création tandis que, dans cette ligne, Regroupement apparaît dans les première et deuxième colonnes.
- Dans la deuxième colonne, attribuez à la ligne Total la valeur Somme. La fonction Somme ajoute les différents chiffres de ventes.
- Cliquez sur Exécuter
pour exécuter la requête et afficher les résultats en mode Feuille de données.
- Laissez la requête ouverte en vue de son utilisation à la section suivante.
Utiliser des critères avec une requête Totaux
La requête que vous avez créée à la section précédente comprend tous les enregistrements des tables sous-jacentes. Lors du calcul des totaux, aucune commande n'est exclue et les totaux affichés englobent toutes les catégories.
Si vous avez besoin d'exclure certains enregistrements, vous pouvez ajouter des critères à la requête. Par exemple, vous pouvez ignorer les transactions dont le montant est inférieur à 100 € ou calculer les totaux de certaines catégories de produits uniquement. La procédure décrite dans cette section explique comment utiliser trois types de critères différents :
- Critères qui ignorent certains groupes lors du calcul de totaux. Par exemple, les totaux calculés pourront ne porter que sur les catégories Jeux vidéo, Art et encadrement et Sports.
- Critères qui masquent certains totaux à l'issue du calcul. Par exemple, vous pouvez décider de n'afficher que les totaux supérieurs à 150 000 €.
- Critères qui excluent certains enregistrements du total. Par exemple, vous pouvez exclure certaines transactions commerciales lorsque leur valeur (Prix unitaire * Quantité) est inférieure à 100 €.
La procédure suivante explique comment ajouter les critères l'un après l'autre et constater leur impact sur les résultats de la requête
Ajouter des critères à la requête
- Ouvrez la requête de la section précédente en mode Création. Pour ce faire, cliquez avec le bouton droit sur l'onglet du document correspondant à la requête et cliquez sur Mode Création.
- ou -
Dans le volet de navigation, cliquez avec le bouton droit sur la requête, puis cliquez sur Mode Création.
- Dans la ligne Critères de la colonne Code catégorie, tapez =Poupées Ou Sports Ou Art et encadrement.
- Cliquez sur Exécuter
pour exécuter la requête et afficher les résultats en mode Feuille de données.
- Repassez en mode Création puis, dans la ligne Critères de la colonne Total ventes, tapez >100.
- Exécutez la requête pour visualiser les résultats, puis repassez en mode Création.
- Ajoutez à présent les critères destinés à exclure les transactions de vente individuelles dont le montant est inférieur à 100 €. Pour ce faire, vous devez ajouter une autre colonne.
Remarque Vous ne pouvez pas spécifier le troisième critère dans la colonne Total ventes. Les critères que vous spécifiez dans cette colonne s'appliquent à la valeur totale et non aux valeurs individuelles.
- Copiez l'expression de la deuxième colonne dans la troisième colonne.
- Dans la ligne Total de la nouvelle colonne, sélectionnez Où puis, dans la ligne Critères, tapez >20.
- Exécutez la requête pour afficher les résultats, puis enregistrez la requête.
Remarque La prochaine fois que vous ouvrirez la requête en mode Création, peut-être remarquerez-vous de légers changements dans la grille de création. Dans la deuxième colonne, l'expression figurant dans la ligne Champ est intégrée à la fonction Somme, tandis que la valeur de la ligne Total indique Expression au lieu de Somme.
Total ventes: Somme((1-[Détails des commandes].Remise/100)*([Détails des commandes].Prix unitaire*[Détails des commandes].Quantité))
Vous remarquerez également la présence d'une quatrième colonne. Cette colonne est une copie de la deuxième colonne, mais les critères que vous avez spécifiés dans la deuxième colonne sont en fait intégrés à la nouvelle colonne.
Haut de la page
Calculer la somme des données de plusieurs groupes à l'aide d'une requête Analyse croisée
Les requêtes Analyse croisée correspondent à un type de requête particulier qui affiche ses résultats dans une grille semblable à une feuille de calcul Excel. Ces requêtes synthétisent vos valeurs pour ensuite les regrouper en deux ensembles de données : l'un sur le plan vertical (ensemble d'en-têtes de ligne), et l'autre sur le plan horizontal (ensemble d'en-têtes de colonne). Cette figure illustre une partie du jeu de résultats de la requête Analyse croisée d'exemple :
À ce stade, souvenez-vous qu'une requête Analyse croisée ne remplit pas toujours l'ensemble des champs figurant dans le jeu de résultats, dans la mesure où les tables que vous utilisez dans la requête ne contiennent pas toujours de valeurs pour chaque point de données possible.
Lorsque vous créez une requête Analyse croisée, les données que vous incluez sont généralement issues de plusieurs tables et il s'agit toujours de trois types de données : les données utilisées en tant qu'en-têtes de ligne, les données utilisées en tant qu'en-têtes de colonne, et les valeurs que vous souhaitez additionner ou calculer.
La procédure de cette section s'appuie sur les tables suivantes :
Table Commandes
| Date de commande |
Date d'expédition |
Ville de destination |
Coût de transport |
| 14.11.05 |
15.11.05 |
Jakarta |
55,00 € |
| 14.11.05 |
15.11.05 |
Sydney |
76,00 € |
| 16.11.05 |
17.11.05 |
Sydney |
87,00 € |
| 17.11.05 |
18.11.05 |
Jakarta |
43,00 € |
| 17.11.05 |
18.11.05 |
Paris |
105,00 € |
| 17.11.05 |
18.11.05 |
Stuttgart |
112,00 € |
| 18.11.05 |
19.11.05 |
Vienne |
215,00 € |
| 19.11.05 |
20.11.05 |
Miami |
525,00 € |
| 20.11.05 |
21.11.05 |
Vienne |
198,00 € |
| 20.11.05 |
21.11.05 |
Paris |
187,00 € |
| 21.11.05 |
22.11.05 |
Sydney |
81,00 € |
| 23.11.05 |
24.11.05 |
Jakarta |
92,00 € |
Table Détails des commandes
| Réf. commande |
Produit |
Réf. produit |
Prix unitaire |
Quantité |
Remise |
| 1 |
Fabriquez votre propre clavier |
12 |
77,95 € |
9 |
5 % |
| 1 |
Figurine non articulée de bureaucrate |
2 |
78,88 € |
4 |
7,5 % |
| 2 |
Gym pour les accros de l'informatique, le DVD ! |
7 |
14,88 € |
6 |
4 % |
| 2 |
La puce informatique magique |
4 |
32,65 € |
8 |
0 |
| 2 |
Accros de l'informatique et créatures mythiques |
6 |
78,50 € |
4 |
0 |
| 3 |
Access, le jeu ! |
5 |
22,95 € |
5 |
15 % |
| 4 |
Figurine articulée de programmeur |
1 |
12,95 € |
2 |
6 % |
| 4 |
La pizza volante |
8 |
36,75 € |
8 |
4 % |
| 5 |
Lecteur de disquette externe 5,25 pouces (échelle 1/4) |
9 |
65,00 € |
4 |
10 % |
| 6 |
Schéma de base de données relationnelle |
3 |
22,50 € |
12 |
6,5 % |
| 7 |
Ténèbres |
11 |
53,33 € |
6 |
8 % |
| 7 |
Schéma de base de données relationnelle |
3 |
22,50 € |
4 |
9 % |
La procédure suivante explique comment créer une requête Analyse croisée qui regroupe le total des ventes par ville. La requête fait appel à deux expressions pour renvoyer une date mise en forme, ainsi que le total des ventes.
Créer une requête Analyse croisée
- Sous l'onglet Créer, dans le groupe Autre, cliquez sur Création de requête.
- Dans la boîte de dialogue Afficher la table, double-cliquez sur les tables que vous souhaitez utiliser dans la requête, puis cliquez sur Fermer.
Chaque table s'affiche sous forme de fenêtre dans la partie supérieure du concepteur de requêtes.
Si vous utilisez les tables d'exemple, double-cliquez sur la table Commandes et sur la table Détails des commandes.
- Double-cliquez sur les champs que vous voulez utiliser dans la requête.
Le nom de chaque champ apparaît dans une cellule vide de la ligne Champ de la grille de création.
Si vous utilisez les tables d'exemple, ajoutez les champs Ville de destination et Date d'expédition de la table Commandes.
- Dans la cellule vide suivante de la ligne Champ, copiez-collez ou tapez l'expression suivante : Total ventes: Somme(CMonnaie([Détails des commandes].[Prix unitaire]*[Quantité]*(1-[Remise])/100)*100)
- Sous l'onglet Créer, dans le groupe Type de requête, cliquez sur Analyse croisée.
Les lignes TotalAnalyse croisée s'affichent dans la grille de création.
- Dans la ligne Total du champ Ville, cliquez sur la cellule et sélectionnez Regroupement. Faites de même pour le champ Date d'expédition. Attribuez à la cellule Total du champ Total ventes la valeur Expression.
- Dans la ligne Analyse croisée, définissez la valeur de la cellule du champ Ville à En-tête de ligne, attribuez au champ Date d'expédition la valeur En-tête de colonne et au champ Total ventes la valeur Valeur.
- 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.
Haut de la page
Référence aux fonctions d'agrégation
Ce tableau répertorie et décrit les fonctions d'agrégation offertes par Access au niveau de la ligne Total et des requêtes. Ne perdez pas de vue que d'autres fonctions d'agrégation sont disponibles dans Access pour les requêtes, en plus de celles accessibles depuis la ligne Total. De même, si vous travaillez avec un projet Access (application frontale Access connectée à une base de données Microsoft SQL Server), vous pouvez utiliser le jeu de fonctions d'agrégation plus étoffé que propose SQL Server. Pour plus d'informations sur ce jeu de fonctions, reportez-vous à la documentation en ligne de Microsoft SQL Server.
| Fonction |
Description |
Type(s) de données compatible(s) |
| Moyenne |
Calcule la valeur moyenne d'une colonne. La colonne doit contenir des données de type Numérique, Monétaire ou Date/Heure. Cette fonction ignore les valeurs Null. |
Numérique, Monétaire, Date/Heure |
| Compte |
Calcule le nombre d'éléments se trouvant dans une colonne. |
Tous les types de données à l'exception des données scalaires répétitives et complexes, telles que les colonnes de listes à valeurs multiples.
Pour plus d'informations sur les listes à valeurs multiples, voir les articles Guide pour les champs à valeurs multiples et Ajouter ou modifier un champ Liste de choix permettant le stockage de valeurs multiples.
|
| Valeur maximale |
Renvoie l'élément dont la valeur est la plus élevée. S'agissant des données de type Texte, la valeur la plus élevée est la dernière valeur alphabétique — Access ne tient pas compte de la casse. La fonction ignore les valeurs Null. |
Numérique, Monétaire, Date/Heure |
| Valeur minimale |
Renvoie l'élément dont la valeur est la plus basse. S'agissant des données de type Texte, la valeur la plus basse est la première valeur alphabétique — Access ne tient pas compte de la casse. La fonction ignore les valeurs Null. |
Numérique, Monétaire, Date/Heure |
| Écart-type |
Mesure l'écart des valeurs par rapport à une valeur moyenne.
Pour plus d'informations sur l'utilisation de cette fonction, voir l'article Afficher le total des colonnes dans une feuille de données.
|
Numérique, Monétaire |
| Somme |
Ajoute les éléments d'une colonne. S'applique uniquement aux données de type Numérique et Monétaire. |
Numérique, Monétaire |
| Variance |
Mesure la variance statistique de toutes les valeurs d'une colonne donnée. Cette fonction ne s'applique qu'aux données de type Numérique et Monétaire. Si la table contient moins de deux lignes, Access renvoie une valeur Null.
Pour plus d'informations sur les fonctions de variance, voir l'article Afficher le total des colonnes dans une feuille de données.
|
Numérique, Monétaire |
Haut de la page