Comment trier automatiquement une colonne par valeur dans Excel ?
Lorsque vous travaillez avec des listes ou des tableaux dans Excel, il est courant de vouloir que vos données apparaissent toujours triées, surtout lorsque de nouvelles informations sont ajoutées. Par exemple, imaginez que vous gérez un tableau d'achats comme illustré dans la capture d'écran ci-dessous, où les prix des articles sont régulièrement mis à jour ou de nouvelles entrées sont ajoutées. Dans de telles situations, vous remarquerez peut-être qu'Excel ne réorganise pas automatiquement la colonne Prix lorsque vous saisissez de nouvelles valeurs — les données restent à leur position d'origine jusqu'à ce que vous les triiez manuellement à nouveau. Cela peut facilement entraîner de la confusion ou des erreurs, en particulier lorsque vous devez analyser ou présenter rapidement des informations toujours triées. Savoir comment trier automatiquement une colonne selon sa valeur dès qu'il y a des modifications ou des ajouts peut donc faire gagner beaucoup de temps et maintenir la précision de votre flux de travail.
Ce guide fournit des méthodes pratiques pour vous aider à trier automatiquement une colonne spécifique par valeur lorsque vous mettez à jour votre feuille de calcul. Vous trouverez ci-dessous une solution de macro VBA ainsi qu'une solution de formule dynamique pour les versions plus récentes d'Excel. Chaque méthode convient à des scénarios particuliers, et des détails sur la configuration, les conseils d'utilisation, les explications des paramètres et la résolution des problèmes sont fournis pour vous assurer de pouvoir mettre en œuvre l'approche la plus appropriée de manière efficace.
Trier automatiquement une colonne par valeur avec VBA
Trier automatiquement une colonne par valeur avec une formule Excel (Tableaux Dynamiques)
Trier automatiquement une colonne par valeur avec VBA
Cette macro VBA trie automatiquement toutes les données d'une colonne spécifique chaque fois que vous saisissez une nouvelle valeur ou modifiez des données existantes dans cette colonne de votre feuille de calcul. Cette approche est idéale si vous utilisez une version plus ancienne d'Excel, ou si vous souhaitez que les données d'un tableau soient perpétuellement triées sur place sans utiliser de colonnes supplémentaires.
Scénarios typiques où cette méthode est utile :
- Lorsque vous souhaitez que les données de votre tableau ou colonne reflètent immédiatement un ordre mis à jour après tout changement, sans nécessiter de tri manuel.
- Si vous gérez des feuilles de calcul collaboratives où plusieurs utilisateurs mettent fréquemment à jour la même plage de données et ont besoin que l'affichage reste constamment trié.
Points à connaître avant de commencer :
- Les solutions VBA apportent des modifications directes à votre feuille de calcul. Il est recommandé de sauvegarder votre fichier avant de commencer.
- La macro ne fonctionnera que si les macros sont activées dans votre environnement Excel.
- Les macros seront attachées à la feuille de calcul spécifique et peuvent nécessiter des adaptations si la disposition de votre tableau change.
1. Faites un clic droit sur le nom de la feuille actuelle dans la barre d'onglets de la feuille, puis cliquez sur "Afficher le code" dans le menu contextuel.
2. Dans la fenêtre "Microsoft Visual Basic for Applications" qui s'est ouverte, collez le code VBA suivant dans la fenêtre de code pour votre feuille de calcul cible.
VBA : Trier automatiquement une colonne dans Excel
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("B:B")) Is Nothing Then
Range("B1").Sort Key1:=Range("B2"), _
Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, _
Orientation:=xlTopToBottom
End If
End Sub
Remarques :
1) Dans le code VBA ci-dessus, "B:B" fait référence à la colonne B, "B1" est la cellule de la première ligne de la colonne B, et "B2" est la cellule juste en dessous de l'en-tête. Vous pouvez modifier ces références pour correspondre à la colonne que vous souhaitez trier automatiquement dans vos données.
2) Le paramètre Header:=xlYes
à la cinquième ligne spécifie que votre plage de données inclut une ligne d'en-tête, garantissant que l'en-tête n'est pas trié avec les valeurs de la colonne. Si votre plage de données n'a pas d'en-tête, changez-le à Header:=xlNo
et ajustez également Key1:=Range("B2")
à Key1:=Range("B1")
.
3) La macro est déclenchée à chaque fois qu'une valeur de cellule change dans la colonne spécifiée.
3. Revenez à votre feuille de calcul. Maintenant, chaque fois que vous ajoutez un nouveau nombre dans la colonne Prix ou mettez à jour une valeur existante, la colonne sera immédiatement retriée dans l'ordre croissant.
Astuce : Entrez toujours de nouvelles valeurs immédiatement après la dernière cellule utilisée dans la colonne. S'il y a des cellules vides parmi vos données, le tri ne fonctionnera pas comme prévu.
Trier automatiquement une colonne par valeur avec une formule Excel (Tableaux Dynamiques)
Pour les utilisateurs d'Excel 365 ou d'Excel 2021 et versions ultérieures, les fonctions de tableaux dynamiques comme SORT
et SORTBY
offrent un moyen efficace, sans code, de générer une liste triée et de la maintenir automatiquement mise à jour lorsque vos données changent. Cette solution ne nécessite pas de VBA, est nativement prise en charge dans les versions récentes d'Excel, et convient aux scénarios où vous préférez conserver vos données originales inchangées et travailler plutôt avec une copie triée de vos données dans une plage ou une feuille de calcul distincte.
Quand dois-je utiliser cette approche ?
- Si vous avez besoin d'une version triée en temps réel de vos données dans un autre emplacement (par exemple, pour des rapports, tableaux de bord ou impressions), tout en conservant les données brutes d'origine.
- Si vous utilisez Excel 365, Excel 2021 ou des versions ultérieures qui prennent en charge les tableaux dynamiques.
- Cette méthode affiche les données triées dans une nouvelle zone et ne réorganise pas vos données d'origine. Si vous avez besoin d'un réarrangement sur place, envisagez la solution VBA ci-dessus.
- Les tableaux dynamiques ne sont pas disponibles dans Excel 2019 ou les versions antérieures.
1. Décidez où vous souhaitez afficher la liste triée. Par exemple, si votre tableau original est dans A1:C10 (avec des en-têtes dans la ligne 1) et que vous souhaitez afficher la liste triée à partir de la cellule E1, sélectionnez E1.
2. Entrez la formule suivante dans la cellule E1 :
=SORT(A2:C10,2,1)
Dans la formule ci-dessus :
- A2:C10 est votre plage de données originale (hors en-têtes). Ajustez cela pour correspondre à votre plage de données.
- 2 signifie que vous triez par la deuxième colonne — par exemple, si votre Prix se trouve dans la deuxième colonne de la plage sélectionnée.
- 1 spécifie l'ordre croissant. Utilisez -1 si vous souhaitez un ordre décroissant.
3. Appuyez sur Entrée. La formule générera une copie dynamique triée de vos données. Si vous ajoutez, supprimez ou modifiez des éléments dans votre plage originale (par exemple, de nouveaux prix ou produits), la liste triée se met immédiatement à jour — aucune intervention manuelle n'est nécessaire.
Remarques :
- Si de nouvelles données sont saisies sous la zone originale, la référence dans la formule (par exemple,
A2:C10
) doit être étendue en conséquence. - Pour les plages de données qui changent continuellement, envisagez d'utiliser des tables Excel (Insérer > Tableau), et référez-vous au nom de la table dans votre formule SORT pour des mises à jour automatiques de la plage.
- Si vous utilisez une seule colonne (par exemple, B2:B10), la formule se simplifie en
=SORT(B2:B10,1,1)
.
Démo : Trier automatiquement une colonne par valeur avec VBA dans Excel
Trier facilement par fréquence d'apparition dans Excel
La fonctionnalité "Tri avancé" de Kutools pour Excel vous permet de trier facilement des données selon divers critères tels que la longueur du texte, le nom de famille, la valeur absolue, la fréquence, et plus encore.
Kutools pour Excel - Boostez Excel avec plus de 300 outils essentiels. Profitez de fonctionnalités IA gratuites en permanence ! Obtenez-le maintenant
Meilleurs outils de productivité pour Office
Améliorez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité incomparable. Kutools pour Excel propose plus de300 fonctionnalités avancées pour booster votre productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte l’interface par onglets à Office, simplifiant considérablement votre travail.
- Activez la modification et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de50 % et réduit des centaines de clics de souris chaque jour !
Tous les modules complémentaires Kutools. Une seule installation
La suite Kutools for Office regroupe les modules complémentaires pour Excel, Word, Outlook & PowerPoint ainsi qu’Office Tab Pro, idéal pour les équipes travaillant sur plusieurs applications Office.





- Suite tout-en-un — modules complémentaires Excel, Word, Outlook & PowerPoint + Office Tab Pro
- Un installateur, une licence — installation en quelques minutes (compatible MSI)
- Une synergie optimale — productivité accélérée sur l’ensemble des applications Office
- Essai complet30 jours — sans inscription, ni carte bancaire
- Meilleure valeur — économisez par rapport à l’achat d’add-ins individuels