Comment classer les onglets par ordre croissant et décroissant dans Excel ?

  • Partage Ça
Michael Brown

Le tutoriel montre comment vous pouvez rapidement trier les feuilles de calcul Excel par ordre alphabétique en utilisant le code VBA et l'outil Gestionnaire de classeurs.

Microsoft Excel propose un certain nombre de méthodes rapides et faciles pour classer les colonnes ou les lignes par ordre alphabétique. Mais il n'existe qu'une seule méthode pour réorganiser les feuilles de calcul dans Excel : les faire glisser à la position souhaitée sur la barre d'onglets de la feuille. Lorsqu'il s'agit de classer les onglets par ordre alphabétique dans un très grand classeur, cette méthode peut s'avérer longue et erronée. Vous cherchez une alternative pour gagner du temps ? Il n'en existe que deux : le code VBAou des outils tiers.

    Comment classer les onglets par ordre alphabétique dans Excel avec VBA

    Vous trouverez ci-dessous trois exemples de code VBA permettant de trier les feuilles Excel de manière ascendante, descendante et dans les deux sens, en fonction du choix de l'utilisateur.

    En supposant que vous ayez une certaine expérience du VBA, nous ne décrirons que les étapes de base pour ajouter une macro à votre feuille de calcul :

    1. Dans votre classeur Excel, appuyez sur Alt + F11 pour ouvrir l'éditeur Visual Basic.
    2. Dans le volet de gauche, cliquez à droite sur Ce manuel de travail puis cliquez sur Insérer > ; Module .
    3. Collez le code VBA dans la fenêtre Code.
    4. Appuyez sur F5 pour exécuter la macro.

    Pour obtenir des instructions détaillées étape par étape, veuillez consulter la section Comment insérer et exécuter un code VBA dans Excel.

    Conseil : si vous souhaitez conserver la macro pour une utilisation ultérieure, veillez à enregistrer votre fichier sous forme de classeur Excel compatible avec les macros (.xlsm).

    Vous pouvez également télécharger notre exemple de classeur Alphabétisation des onglets Excel, activer le contenu si vous y êtes invité et exécuter la macro souhaitée directement à partir de ce classeur :

    • TabsAscending - trier les feuilles par ordre alphabétique de A à Z.
    • TabsDescending - classez les feuilles dans l'ordre inverse, de Z à A.
    • Alphabétisation des onglets - trier les onglets des feuilles dans les deux sens, ascendant ou descendant.

    Une fois le classeur type téléchargé et ouvert dans votre Excel, ouvrez votre propre classeur dans lequel vous souhaitez classer les onglets par ordre alphabétique, appuyez sur Alt + F8 , sélectionnez la macro souhaitée et cliquez sur Exécuter .

    Trier les onglets Excel par ordre alphabétique de A à Z

    Cette petite macro organise les feuilles du classeur actuel en ordre alphanumérique croissant En premier lieu, les feuilles de travail dont le nom commence par un chiffre, puis les feuilles de A à Z.

    Sub TabsAscending() For i = 1 To Application.Sheets.Count For j = 1 To Application.Sheets.Count - 1 If UCase$(Application.Sheets(j).Name)> ; UCase$(Application.Sheets(j + 1).Name) Then Sheets(j).Move after:=Sheets(j + 1) End If Next Next MsgBox "Les onglets ont été triés de A à Z." End Sub

    Classer les onglets Excel de Z à A

    Si vous voulez trier vos feuilles en ordre alphanumérique décroissant (de Z à A, puis les feuilles avec des noms numériques), puis utilisez le code suivant :

    Sub TabsDescending() For i = 1 To Application.Sheets.Count For j = 1 To Application.Sheets.Count - 1 If UCase$(Application.Sheets(j).Name) <; UCase$(Application.Sheets(j + 1).Name) Then Application.Sheets(j).Move after:=Application.Sheets(j + 1) End If Next Next MsgBox "Les onglets ont été triés de Z à A." End Sub

    Classer les onglets par ordre croissant ou décroissant

    Cette macro permet à vos utilisateurs de décider comment trier les feuilles de calcul d'un classeur donné, par ordre alphabétique de A à Z ou dans l'ordre inverse.

    Étant donné que la boîte de dialogue standard (MsgBox) dans Excel VBA ne permet de choisir que parmi une poignée de boutons prédéfinis, nous allons créer notre propre formulaire (UserForm) avec trois boutons personnalisés : De A à Z , Z à A et Annuler .

    Pour cela, ouvrez l'éditeur Visual Basic, cliquez à droite sur Ce manuel de travail et cliquez sur Insérer > ; Formulaire utilisateur . nommez votre formulaire SortOrderFrom et ajoutez-y 4 contrôles : une étiquette et trois boutons :

    Ensuite, appuyez sur la touche F7 (ou double-cliquez sur le formulaire) pour ouvrir l'écran d'accueil de l'application Code et collez-y le code ci-dessous. Ce code intercepte les clics de bouton et attribue une balise unique à chaque bouton :

    Private Sub CommandButton1_Click() Me.Tag = 1 Me.Hide End Sub Private Sub CommandButton2_Click() Me.Tag = 2 Me.Hide End Sub Private Sub CommandButton3_Click() Me.Tag = 0 Me.Hide End Sub

    Selon que l'utilisateur clique sur le bouton De A à Z ou Z à A sur votre formulaire, triez les onglets par ordre alphabétique croissant (sélectionné par défaut) ou par ordre alphabétique décroissant ; ou fermez le formulaire et ne faites rien en cas de Annuler Cette opération s'effectue à l'aide du code VBA suivant, que vous insérez de la manière habituelle via Insérer > ; Module .

    Sub AlphabetizeTabs() Dim SortOrder As Integer SortOrder = showUserForm If SortOrder = 0 Then Exit Sub For x = 1 To Application.Sheets.Count For y = 1 To Application.Sheets.Count - 1 If SortOrder = 1 Then If UCase$(Application.Sheets(y).Name)> ; UCase$(Application.Sheets(y + 1).Name) Then Sheets(y).Move after:=Sheets(y + 1) End If ElseIf SortOrder = 2 Then If UCase$(Application.Sheets(y).Name)<; UCase$(Application.Sheets(y + 1).Name) Then Sheets(y).Move after:=Sheets(y + 1) End If End If Next Next End Sub Function showUserForm() As Integer showUserForm = 0 Load SortOrderForm SortOrderForm.Show (1) showUserForm = SortOrderForm.Tag Unload SortOrderForm End Function

    Si vous n'êtes pas encore très à l'aise avec VBA, vous pouvez simplement télécharger notre exemple de classeur pour classer les onglets par ordre alphabétique, l'ouvrir dans votre Excel à côté de votre propre fichier où vous voulez classer les onglets, et exécuter la commande Alphabétisation des onglets de votre classeur :

    Choisissez l'ordre de tri préféré, par exemple, De A à Z et observez les résultats :

    Astuce : Avec VBA, vous pouvez également créer des copies de vos feuilles de calcul Excel. Le code est disponible ici : Comment dupliquer une feuille dans Excel avec VBA.

    Comment trier les onglets d'Excel par ordre alphabétique avec Ultimate Suite

    Les utilisateurs de notre suite logicielle Ultimate Suite pour Excel n'ont pas besoin de bricoler avec VBA - ils ont à leur disposition un gestionnaire de classeurs multifonctionnel :

    Avec cet outil ajouté à votre ruban Excel, le classement alphabétique des onglets se fait d'un simple clic sur un bouton, exactement comme il se doit !

    Si vous êtes curieux d'explorer ces outils et plus de 70 autres outils professionnels pour Excel, une version d'essai de notre Ultimate Suite est disponible pour téléchargement ici.

    Je vous remercie de votre lecture et j'espère vous voir sur notre blog la semaine prochaine !

    Michael Brown est un passionné de technologie passionné par la simplification de processus complexes à l'aide d'outils logiciels. Avec plus d'une décennie d'expérience dans l'industrie de la technologie, il a perfectionné ses compétences dans Microsoft Excel et Outlook, ainsi que dans Google Sheets et Docs. Le blog de Michael est dédié au partage de ses connaissances et de son expertise avec les autres, en fournissant des conseils et des tutoriels faciles à suivre pour améliorer la productivité et l'efficacité. Que vous soyez un professionnel chevronné ou un débutant, le blog de Michael offre des informations précieuses et des conseils pratiques pour tirer le meilleur parti de ces outils logiciels essentiels.