Un niveau de regroupement ou état groupé sur Access est un état dont un ou plusieurs champs permettent de grouper les données. Il vous sera ainsi possible de grouper votre listing client (état) par type de client, genre, ville, commercial... (ces informations doivent évidemment être renseignées dans la table ou requête à partir de laquelle l'état est créé).
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.