Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :
Sujets que vous pourriez aussi aimer :Trier un tableau au cours de la frappe
Excel est doué d'audace et à ce titre, il autorise de nombreuses prouesses. C'est une fois encore ce que nous allons démontrer à l'occasion de cette nouvelle
astuce. Il est question de
trier automatiquement un tableau dans lequel sont insérées régulièrement de nouvelles entrées. Ces nouvelles entrées peuvent être ajoutées par un utilisateur dédié à la saisie ou encore par le biais d'une
connexion automatique à une base de données externe, en constante évolution. Bref et vous l'avez compris, il est question de réorganiser les données du tableau en temps réel.
Classeur Excel à télécharger
Pour la découverte de cette nouvelle pépite, nous proposons d'appuyer l'étude sur un
classeur offrant d'assez nombreuses données à réorganiser.
Nous débouchons sur un
classeur constitué de
deux feuilles nommées respectivement
Saisie et
Exploitation. La première (Saisie) est active par défaut.
Il s'agit d'articles représentés par gammes (Colonne Réf.) avec les ventes réalisées au coup par coup et repérées par les dates des transactions en troisième colonne. Si vous activez la seconde feuille (Exploitation), vous notez la présence d'un tableau similaire, à la même structure mais vide pour l'instant. C'est dans ses cellules que les informations du tableau de la première feuille doivent être réorganisées automatiquement.
Les Noms du tableau et des colonnes
Pour réaliser le tour de force de
trier automatiquement un tableau au fil de la saisie, il est important de pouvoir s'appuyer sur des
plages dynamiques capables de considérer naturellement les nouvelles entrées. Ces plages existent déjà . Elles sont nommées et exploitent la
fonction NbVal pour pouvoir s'étendre en ligne jusqu'à la nouvelle donnée insérée.
- En haut de la fenêtre Excel, cliquer sur l'onglet Formules pour activer son ruban,
- Dans la section Noms définis du ruban, cliquer sur le bouton Gestionnaire de noms,
Les plages nommées sont les suivantes :
- Tabs : =DECALER(Saisie!$B$4:$D$4;;; NBVAL(Saisie!$D:$D)-1),
Il s'agit du tableau de saisie. Il considère la première ligne des valeurs inscrites sous les entêtes et étend la plage jusqu'à la dernière donnée saisie grâce à la
fonction NbVal. L'unité retranchée tient compte de l'entête du tableau (NBVAL(Saisie!$D:$D)-1) qui ne doit pas être considéré dans le décompte.
- Dates : =DECALER(Saisie!$D$4;;; NBVAL(Saisie!$D:$D)-1),
Le retranchement est identique et pour la même raison. Ce nom désigne la plage évolutive des dates qui sera à utiliser comme seconde clé de tri. En effet, nous souhaitons trier le tableau d'origine en priorité sur la référence et en seconde clé sur la date. Donc les références seront regroupées et triées dans l'ordre croissant sur la date.
- Ref : =DECALER(Saisie!$B$4;;; NBVAL(Saisie!$D:$D)-1),
Il s'agit de la colonne évolutive des références grâce à la
fonction NbVal et pour les mêmes explications que précédemment. Elle doit être utilisée en première clé de tri du tableau.
Trier un tableau avec ordres de tri
Excel propose
deux fonctions magnifiques pour
organiser des tris. Elles se nomment respectivement
Trier et
TrierPar. La première est intuitive pour réaliser des
tris rapides. C'est la seconde que nous allons utiliser sur nos
plages dynamiques car elle permet de définir la hiérarchie des colonnes de tri. Ces fonctions existent seulement depuis la
version 2019 d'Excel. Il est important de le souligner pour la réalisation de ce cas.
- En bas de la fenêtre Excel, cliquer sur l'onglet Exploitation pour activer sa feuille,
- Puis, cliquer sur la cellule B4 pour désigner le point de départ du tableau à trier,
- Taper le symbole égal (=) pour initier la syntaxe de la formule du tri,
- Inscrire le nom de la fonction de tri suivi d'une parenthèse, soit : TrierPar(,
- Désigner le tableau dynamique par son nom, soit : tabs,
- Taper un point-virgule (;) pour passer dans l'argument de la première colonne de tri,
- Désigner la première colonne de tri par son nom, soit : Ref,
- Taper un point-virgule (;) pour passer dans l'argument de l'ordre de tri sur cette clé,
- Inscrire le chiffre 1 pour ordonner un tri croissant,
- Taper un point-virgule (;) pour passer dans l'argument de la seconde colonne de tri,
- Inscrire la colonne des dates par son nom, soit : Dates,
- Puis, taper un point-virgule (;) pour passer dans l'argument de l'ordre pour cette seconde clé,
- Comme précédemment, inscrire le chiffre 1 pour un tri croissant,
- Fermer la parenthèse de la fonction TrierPar,
- Enfin, valider la formule à l'aide de la touche Entrée du clavier,
Comme il s'agit d'une fonction qui raisonne naturellement de façon
matricielle, sa logique est répandue sur la largeur et la hauteur du tableau d'origine Ã
trier.
Et comme vous pouvez l'apprécier, les informations du tableau d'origine sont rapatriées sur la même hauteur et la même largeur. Aucune donnée ne manque. Et dans le même temps, vous voyez qu'elles ont été réorganisées automatiquement. Le tableau est trié en priorité sur la référence et pour chaque référence sur la date.
Trier les données au fil de la saisie
Voyons maintenant comment réagit ce tableau dynamique trié automatiquement, à l'insertion de nouvelles entrées dans la table d'origine.
- En bas de la fenêtre Excel, cliquer sur l'onglet Saisie pour activer sa feuille,
- Atteindre la première ligne vide et cliquer sur la cellule B53,
- Inscrire une nouvelle référence avec les informations suivantes :
Art1, 1854 € et 22/11/2022
Puis, revenir sur la
feuille Exploitation.
Comme vous pouvez le constater avec plaisir, la nouvelle ligne est automatiquement intégrée dans le tableau et rangée selon l'
ordre du tri ordonné par la
formule Excel.