Nous allons commencer par créer un état auquel on ajoute un niveau de regroupement, mais vous verrez ensuite que l'on peut créer ce regroupement sur un état existant.
Vous retrouverez la base de données utilisée dans ce tutoriel dans l' Espace membres.
Créer un nouvel état avec un niveau de regroupement :
Ouvrez votre base de données contenant au moins une table ou une requête ou utilisez la base de données que je mets à votre disposition. Allez dans l'onglet Créer > Assistant État
de la rubrique
État.
Dans la boîte de dialogue, je choisis la table
Clients, car c'est cette dernière qui contient les données qui m'intéressent et, pour cet état, je souhaite conserver tous les champs, je clique donc sur la double flèche
, puis sur
Suivant.
Si vous avez l'habitude de créer des états " simples ", à cet affichage, vous avez dû cliquer sur
Suivant, mais c'est ici que nous allons choisir le champ qui permettra de créer le regroupement.
Dans mon exemple, je souhaite trier les données par code postal (par exemple pour donner la liste des clients à mes commerciaux selon leurs zones). Je sélectionne donc le champ CP par double-clic ou en le sélectionnant et en cliquant sur la flèche
. Si j'avais plusieurs clients dans une même ville, il serait pertinent d'ajouter également le champ
Ville, mais ce n'est pas le cas ici. Vous pourriez ensuite utiliser les flèches de
Priorité pour inverser l'ordre de regroupement. Cliquez sur le bouton
Options de regroupement....
Si je laisse l'
Intervalle de regroupement sur
Normal, ce regroupement ne me sera d'aucune utilité, car je n'ai aucun code postal identique. Ce qui est donc plus approprié ici, c'est de sélectionner
2 lettres initiales (ce ne sont pas des lettres, mais ce seront les 2 premiers chiffres, donc le numéro de département). Si j'avais sélectionné plusieurs champs, j'aurais eu les autres champs les uns en dessous des autres pour choisir leurs intervalles. Cliquez sur
Ok.
La précédente boîte de dialogue s'est mise à jour. Cliquez sur
Suivant.
Ici, je vous suggère de ne rien faire si vous ne souhaitez pas que vos champs soient intervertis, même si l'agencement peut être modifié par la suite. Par exemple, si je choisis un tri croissant par
Nom, mes premiers champs seront
Nom -
Numéro client -
Prénom au lieu de
Numéro client -
Prénom -
Nom. Toutefois, ce tri peut se faire par la suite sans inversement dans l'ordre d'affichage. Je clique sur
Suivant.
Je conserve la
Disposition Échelonné, je choisis l'
Orientation Paysage étant donné qu'il y a beaucoup de données, je laisse cochée la case
Ajuster la taille des champs afin qu'ils tiennent tous sur une page et je clique sur
Suivant.
Je saisis un nom pour mon état (
E_listing_client) et clique sur
Terminer.
Mon niveau de regroupement a bien été créé, mais la mise en page n'est pas très esthétique.
Pour améliorer cela rapidement, en Mode création
, je modifie l'étiquette
CP par 2 lettres initiales par
Dép (pour département). Je retire la bordure de la
Civilité et je peux même, par un clic droit, remplacer par une
Zone de texte (la liste déroulante étant inutile sur un état puisque destiné à l'impression), je rogne sur les espaces laissés en haut et en bas des étiquettes et contrôles.
Je vous conseille surtout de modifier la Couleur de fond de l' En-tête de groupe CP par du blanc (#FFFFFF) par exemple (onglet Format de la Feuille de propriétés) et de mettre la ligne Autre couleur de fond sur Aucune couleur (en cliquant sur les 3 points) et faites-en de même pour le contrôle CP par 2 lettres initiales où, pour ce dernier, à la place du blanc, vous pouvez choisir le Style de fond Transparent, ce qui vous évitera d'avoir des lignes grises qui se suivent sans réel intérêt si ce n'est d'empêcher une bonne compréhension de l'état du premier coup d'œil.
Vous pouvez également ajouter une ligne horizontale ( Trait
dans les
Contrôles de l'onglet
Création) au-dessus du contrôle du code postal regroupé pour mieux séparer les départements. Nous avons donc bien nos clients triés par département.
Créer un niveau de regroupement sur un état existant :
Notre état est donc déjà créé, toutefois, il peut être utile de trier, dans chaque département, les clients par nom comme nous voulions le faire pendant la création.
Toujours en Mode création , dans l'onglet Création, cliquez sur le bouton Regrouper et trier
: un panneau supplémentaire s'affiche au bas de l'écran avec notre niveau de regroupement (regroupé par
CP et trié par
CP).
Le code postal est bien trié de A à Z ou plutôt de 0 à 9 dans notre cas et on peut toujours modifier le nombre de caractères à prendre en compte, si un calcul était nécessaire et un titre qui se trouverait juste avant le département (mais comme nous l'avons mis dans l'en-tête de page, ce n'est pas nécessaire). On peut ensuite choisir les sections et choisir de faire tenir les groupes sur une même page.
Volontairement, je vais ajouter un tri en cliquant sur Ajouter un tri
à la suite et sélectionner le champ
Nom, mais si vous retournez dans le visuel de l'état (
Mode état ,
Mode page ou
Aperçu avant impression ) vous verrez que rien n'a changé, tout simplement parce qu'avant le tri par
Nom, nous avons le tri par
CP qui a été ajouté automatiquement lors de la création du niveau de regroupement : il faut donc le supprimer.
En Mode création , cliquez sur la ligne Trier par CP et cliquez sur la croix
à droite (vous constaterez que vous pouvez inverser l'ordre des tris et regroupements grâce aux flèches
). Désormais, votre état est regroupé par
Département et trié par
Nom dans chaque groupe.
Vous pouvez supprimer les tris et regroupements à tout moment.
Dans le cas où votre état serait déjà créé sans aucun regroupement, toujours dans le même volet vous pouvez ajouter un groupe en cliquant sur Ajouter un groupe
et en sélectionnant par exemple le champ
Civilité, mais n'oubliez pas d'ajouter un contrôle
Zone de texte dans la partie
En-tête de groupe Civilité pour savoir à quoi cela correspond et de pointer la
Source de ce contrôle (onglet
Données de la
Feuille de propriétés) sur le champ
Civilité (le champ du regroupement).
Cet état est désormais divisé en 3 parties ( Monsieur, Mademoiselle et Madame) dans lesquels les noms peuvent être également triés par ordre alphabétique.
Téléchargez " Pourquoi et comment créer un niveau de regroupement sur un état Access ? " au format PDF
Je vous propose un fichier annexe dans l'Espace Membres contenant la base de données utilisée dans ce tutoriel.