Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :
Sujets que vous pourriez aussi aimer :Regrouper les données dans les rapports
Dans l'
exercice Access précédent, nous avons pris contact avec les
états. Nous avons appris à les construire dans leur version la plus simple. Nous avons compris et constaté l'intérêt des
niveaux de regroupement. Ceux-ci permettent de réunir les données communes pour offrir une présentation organisée de l'information. Mais comme nous le disions, pour réunir des données, encore faut-t-il qu'un champ de la table, présente des redondances à croiser. Et lorsque ce n'est pas le cas, ce sont encore les
requêtes que nous exploitons comme outil intermédiaire de construction.
Source et présentation de la problématique
A chaque exercice, nous prenons soin de réceptionner l'application développée depuis la toute première mise en pratique. C'est ainsi que nous livrerons un outil parfaitement fonctionnel et professionnel.
- Télécharger le fichier clients-et-commandes-grouper-etats.rar en cliquant sur ce lien,
- Puis, le décompresser dans le dossier de votre choix,
- Ensuite, double cliquer sur le fichier résultant pour l'ouvrir dans Access,
- Dans la boîte de dialogue qui s'impose, taper le mot de passe d'accès : abc,
- Valider ce dernier et cliquer sur le bouton Activer le contenu du bandeau de sécurité,
- Du fait de la régénération, valider de nouveau le même mot de passe,
Comme vous le savez, c'est le
formulaire de navigation qui se propose par défaut. Il réunit tous les outils de l'application, accessibles par onglets respectifs.
Dans le
volet de navigation, sur la gauche de l'écran, vous notez que les rubriques
Requêtes et Formulaires sont repliées. En effet, les objets construits sont nombreux désormais. Cette technique permet d'y voir plus clair. Et justement, vous remarquez la présence de l'
état E_Clients, créé lors de l'exercice précédent.
- Double cliquer sur son nom pour l'afficher en mode Etat,
Nous avions produit une organisation sommaire qui offre néanmoins une présentation claire.
Grâce à l'
assistant Etat, nous avions entrepris un
niveau de regroupement sur la civilité. Ce champ ne propose que deux possibilités :
Madame ou
Monsieur. La proportion de redondances est donc très forte. Et c'est ainsi que nous obtenons une vue où les femmes sont d'abord listées, puis les hommes réunis interviennent seulement après.
Cette organisation est intéressante pour catégoriser l'information et fournir des données faciles à exploiter et interpréter. Typiquement ici, nous nous rendrions vite compte de la disproportion entre les deux sexes, si elle existait. Nous souhaitons désormais affiner cette organisation. Nous voulons regrouper les clients par départements. Or comme vous le constatez, le champ dédié énumère les codes postaux complets. En l'état, il ne permet donc pas de réaliser un tel regroupement.
Requête de synthèse
L'astuce consiste à bâtir une
requête intermédiaire avec un
champ calculé. Ce
champ calculé doit prélever les deux premiers caractères de chaque code postal. Il en résultera les départements. En bâtissant l'
état sur la
requête, ce champ sera disponible pour entreprendre le
regroupement escompté.
- Fermer l'état ainsi que le formulaire,
- En haut de la fenêtre Access, cliquer sur l'onglet Créer pour activer son ruban,
- Dans la section Requêtes du ruban, cliquer sur le bouton Création de requête,
- Dans la boîte de dialogue qui suit, sélectionner la table Clients,
- Puis, cliquer sur le bouton Ajouter et sur le bouton Fermer,
Nous basculons ainsi dans la vue de l'
éditeur de requête.
- Dans la représentation schématique de la table, cliquer sur le champ Client_civilite,
- Tout en maintenant la touche MAJ (Shift) enfoncée, cliquer sur le champ Client_ville,
Cette technique permet d'inclure dans la sélection, tous les champs compris entre le premier et le dernier.
- Glisser alors la sélection vers le bas, sur la grille de requête,
De cette façon, nous indiquons quels sont les champs que nous souhaitons voir dans la restitution.
- Après le champ Client_ville, cliquer droit dans la zone Champ,
- Puis, dans le menu contextuel, choisir Créer pour afficher le générateur d'expression,
Nous connaissons la fonction permettant de prélever les premiers caractères d'une chaîne. Nous l'avons déjà exploitée en
langage Sql. Elle se nomme
Left. Sa transcription française est donc
Gauche. En l'occurrence,
Excel propose exactement la même fonction pour prélever les caractères en partant du début de la chaîne (Gauche).
- Dans le générateur, saisir l'expression suivante :
Client_dpt:Gauche([Client_dep];2)
Tout d'abord et comme vous le savez, un
champ calculé doit être nommé et suivi du symbole deux points (Client_dpt:) pour annoncer le calcul. Ensuite, nous exploitons la
fonction Access Gauche qui requiert deux arguments. Le premier est le nom du champ sur lequel le prélèvement doit être fait. Et un nom de champ se désigne toujours entre crochets ([Client_dep]). Comme dans les fonctions Excel, le point-virgule sert à délimiter ces paramètres. En deuxième argument, nous indiquons sur quelle longueur les caractères doivent être prélevés, soit les deux premiers.
- Cliquer sur le bouton Ok du générateur pour valider l'expression,
De retour dans l'éditeur de requête, vous notez la présence du champ calculé avec sa syntaxe, en sixième colonne.
- Enregistrer la requête sous le nom : R_Clients_Dpt,
- Une fois l'enregistrement validé, cliquer sur le bouton Exécuter dans le ruban Créer,
Nous affichons ainsi les résultats de l'extraction de la requête en mode feuille de données. Et comme vous pouvez le voir, le
champ calculé Client_dpt s'ajoute dans l'énumération.
Il synthétise bien les codes postaux respectifs sur les deux premiers chiffres. De fait, il livre les départements. Désormais, ce champ présente de nombreuses répétitions. Il devient donc propice pour réaliser ces précieux
regroupements avant de rendre la vue de l'
état. Enfin et comme vous le savez, il n'est pas nécessaire d'organiser des
tris. L'assistant état offre ces réglages.
Etat et regroupement
Deux niveaux de regroupements sont susceptibles de proposer une organisation intéressante des données. Nous souhaitons conserver la réunion sur la civilité puis décomposer l'information sur le département. Ainsi, en un clin d'oeil, nous connaîtrons la répartition des clients.
- Fermer la requête en cliquant sur la croix de son onglet,
- En haut de la fenêtre Access, cliquer sur l'onglet Créer pour activer son ruban,
- Dans la section Etats du ruban, cliquer sur le bouton Assistant état,
- Dans la boîte de dialogue, choisir la requête R_Clients_Dpt avec la liste déroulante,
- Puis, cliquer sur la double flèche orientée à droite pour inclure tous ses champs,
Notre champ calculé (Client_dpt) est donc naturellement intégré dans la construction de l'état.
- Cliquer sur le bouton Suivant en bas de la boîte de dialogue pour suivre le guide,
Cette nouvelle étape concerne les
niveaux de regroupements. Deux sont souhaités.
- Sélectionner le champ Client_civilite et cliquer sur la flèche à droite,
- Sélectionner le champ Client_dpt et cliquer sur la flèche à droite,
L'aperçu rend instantanément compte de la construction. Les données seront prioritairement réunies sur la civilité. Et à l'intérieur de ce premier niveau, elles seront regroupées sur le département.
- Cliquer de nouveau sur le bouton Suivant pour poursuivre la construction de l'état,
- Avec la première liste déroulante, choisir le champ Client_nom,
Nous organisons ainsi un
tri croissant sur le nom du client. Ce réglage est destiné à simplifier la lecture lorsque plusieurs clients du même sexe sont recensés dans le même département.
- Cliquer sur le bouton Suivant pour accéder aux options de disposition,
- Cocher la case Paysage et conserver la disposition Echelonné,
Cette disposition rend particulièrement compte des hiérarchies ordonnées par les niveaux de regroupement.
- Cliquer sur le bouton Suivant pour atteindre la dernière étape de l'assistant état,
- Nommer l'état E_Clients_Dpt et cliquer sur le bouton Terminer,
Le rendu est aussitôt livré en
mode Aperçu avant impression. Bien sûr, des réglages sont à entreprendre car certains champs sont démesurément grands par rapport au contenu qu'ils accueillent.
Néanmoins cette première livrée est intéressante. Tout d'abord, les clients Femmes et Hommes sont explicitement séparés. Et à l'intérieur de chaque groupe, d'autres sont créés pour réunir les résidents d'un même département.
Et grâce à cela, dès la première lecture, nous pouvons remarquer que les clients des Bouches-du-Rhône (13) et du Var (83), sont plus nombreuses que les autres. Pour des opérations commerciales ciblées, il semblerait que ces départements soient plus lucratifs.
Ensuite et nous ne revenons pas en détail sur ces notions, il s'agit de travailler la disposition et l'organisation des contrôles ainsi que la mise en page générale. En effet, nous avons largement manipulé ces mêmes outils au travers des
exercices Access sur les formulaires. Il s'agit notamment d'exploiter les fonctionnalités des rubans contextuels
Création,
Organiser et
Format. Il est bien entendu nécessaire de fermer l'
aperçu avant impression pour basculer en
mode création.
Il convient de :
- Réduire les contrôles Client_civilite et Client_dpt avec leurs étiquettes,
- Les formater en Gras,
- Agrandir légèrement le contrôle Client_nom avec son étiquette,
- Répartir l'ensemble des contrôles sur la largeur disponible,
- Adapter les intitulés pour les étiquettes de colonnes,
Nous pourrions même prévoir un saut de page avant section sur le premier niveau de regroupement,
En-tête de groupe Client_civilite. Nous l'avons mis en place dans l'exercice précédent. Il permet de dissocier les éditions des femmes et des hommes.
Désormais, à titre de mise en pratique et à toutes fins utiles, il apparaît intéressant de bâtir un état des articles sur la
table Produits. Une vue claire et synthétique est essentielle. Les quatre premiers caractères des références articles désignent une catégorie de produits. Nous pouvons donc les réunir dans un rapport en prenant soin de construire la
requête intermédiaire avec son
champ calculé :
cat:Gauche([produit_ref];4).
Dès lors, l'
assistant état peut être enclenché pour notamment ordonner un niveau de regroupement sur le
champ calculé cat.
Dans le prochain exercice, toujours grâce aux requêtes, nous verrons comment il est possible de créer des états paramétrés.