Les macros Excel ne sont peut-être pas aussi complètes que d'autres outils d'automatisation, mais la validité et l'efficacité d'Excel VBA ne peuvent pas être compromises. Si vous travaillez dans Excel et d'autres outils Microsoft Office comme Word et Access, vous ne pouvez pas vous tromper avec VBA et ses capacités.
MS Excel est un outil puissant qui offre une tonne d'options à ses utilisateurs. Du stockage des données à la création de tableaux de bord automatisés, vous pouvez tout faire dans Excel et ses feuilles de calcul.
Si vous souhaitez utiliser VBA pour automatiser vos responsabilités de tri dans Excel, essayez ces macros efficaces et faciles à appliquer.
Télécharger un jeu de données factice
Pour commencer, vous pouvez télécharger un jeu de données factice pour travailler sur vos compétences en macro Excel.
Rassurez-vous, une fois que vous maîtrisez ces macros et que vous comprenez mieux comment les choses fonctionnent, vous pouvez modifier le code pour l'adapter à vos propres feuilles de calcul pour le travail ou l'école.
Vous pouvez télécharger l'ensemble de données utilisé dans cet article si vous souhaitez suivre.
Télécharger: Jeu de données Excel
1. Tri d'une colonne à l'aide de macros Excel
Utilisez ce code simple pour trier une colonne de données dans une feuille de calcul Excel. Si vous avez téléchargé le jeu de données factice, vous pouvez essayer de trier la colonne E (Unités vendues).
Ouvrez un nouveau fichier Excel et enregistrez-le avec un Classeur Excel prenant en charge les macros (.xlsm) type de classeur. Ce fichier stockera la macro pour trier vos données à partir d'un autre fichier.
En rapport: Meilleurs cours en ligne pour maîtriser Excel avancé
Vous contrôlerez vos fichiers à partir du fichier macro, qui interagira avec vos classeurs séparément.
Saisissez le code suivant :
Sous-tri avec en-têtes()
Classeurs("Exemple financier.xlsx").Feuilles (1).Activer
Range("A1:P701").sort Key1:=Range("e1"), Order1:=xlAscending, Header:=xlYes
Fin du sous-marin
Où:
- Clé1 : Définissez la ou les colonnes que vous souhaitez trier
- Commande1 : Mode de commande (croissant/décroissant)
- Entête: Si votre contenu a des en-têtes, cette option restera comme xlOui. Sinon, sélectionnez xlNon.
La plage comprendra la cellule de départ et l'adresse de la cellule de fin afin que tout soit capturé à des fins de tri. Le résultat est que tout votre ensemble de données sera trié en fonction des données de la colonne E.
2. Tri des données dynamiques dans une seule colonne
Il peut y avoir des cas dans lesquels votre point de départ est défini, mais votre point final est dynamique. Dans un tel cas, vous pouvez rendre votre code dynamique afin qu'il reprenne automatiquement la fin de la plage.
Pour tenir compte de la modification des données, utilisez le code ci-dessous :
Sous-tri avec en-têtes()
Classeurs("Exemple financier.xlsx").Feuilles (1).Activer
Range("A1", Range("A1").End (xlDown)).sort Key1:=Range("e2"), Order1:=xlAscending, Header:=xlYes
Fin du sous-marin
Où:
- Fin (xlBas): Cette fonction sélectionnera automatiquement la dernière cellule remplie automatiquement
Noter: si la formule rencontre une cellule vide dans une colonne, elle considérera la cellule précédente comme la fin de la plage.
En rapport: Comment créer des raccourcis clavier personnalisés dans Microsoft Excel
3. Tri de plusieurs colonnes ensemble
Il peut arriver que vous souhaitiez trier des données dans plusieurs colonnes en une seule fois. Pour ce faire, vous pouvez utiliser le code suivant pour atteindre votre objectif :
Sous-trierColonnes multiples()
Avec des feuilles de calcul ("Feuille1")
Avec .Cells (1, "A").CurrentRegion
.Cells.sort Key1:=.Range("B1"), Order1:=xlAscending, _
Key2:=.Range("E1"), Order2:=xlAscending, _
Orientation :=xlTopToBottom, En-tête :=xlOui
Terminer par
Terminer par
Fin du sous-marin
4. Tri des colonnes sur plusieurs feuilles
Lorsque vous traitez plusieurs feuilles, vous souhaiterez peut-être que vos données soient prêtes à être placées dans un tableau de bord. L'un des aspects les plus importants de la préparation des données est de les trier et de les organiser dans un certain format à présenter à vos parties prenantes ou clients.
Une option consiste à parcourir chaque feuille manuellement, à trier les colonnes requises, puis à passer à l'étape suivante. Sinon, pourquoi ne pas laisser VBA le faire pour vous ?
Le but du code ci-dessous est de parcourir chaque feuille disponible dans le classeur et, en fonction des colonnes spécifiées, de trier les données disponibles.
En rapport: Fonctions de recherche Microsoft Excel pour rechercher plus efficacement des feuilles de calcul
Voici comment trier des colonnes sur plusieurs feuilles :
Sous-triWS()
Dim ws As Feuille de calcul
'Activer la feuille de calcul prévue
Classeurs ("Exemple financier.xlsx").Activer
'Faites défiler chaque feuille de calcul individuelle automatiquement à l'aide de la boucle for
Pour chaque ws dans ActiveWorkbook. Feuilles
'activer chaque feuille de calcul individuelle
ws. Activer
« Définissez la plage, puis triez la colonne en fonction de vos besoins. Dans ce cas, une seule colonne est en cours de tri.
Range("A1", Range("p1").End (xlDown)).sort Key1:=Range("E1"), Order1:=xlDescending, Header:=xlYes
'Commande utilisée pour passer à la feuille de calcul suivante, une fois la feuille de calcul précédente triée
WS suivant
Fin du sous-marin
Toutes les informations commençant par des guillemets simples sont des commentaires VBA. Ceux-ci ne sont pas exécutés pendant la phase d'exécution. Cependant, chaque commentaire VBA que vous ajoutez est un ajout significatif au code, car vous pouvez définir l'essence, la fonctionnalité et d'autres parties pertinentes dans les sections de code.
5. Copie de données triées d'une feuille à une autre
Imaginez une situation dans laquelle vous souhaitez trier les données et copier l'ensemble de données entier (ou des parties de celui-ci) dans une feuille nouvellement ajoutée. Dans de tels cas, vous pouvez utiliser le code ci-dessous pour effectuer la tâche à accomplir :
Sous-triWS()
Dim ws As Feuille de calcul
'Activer la feuille de calcul prévue
Classeurs ("Exemple financier.xlsx").Activer
'Faites défiler chaque feuille de calcul individuelle automatiquement à l'aide de la boucle for
Pour chaque ws dans ActiveWorkbook. Feuilles
'activer chaque feuille de calcul individuelle
ws. Activer
« Définissez la plage, puis triez la colonne en fonction de vos besoins.
'Dans ce cas, une seule colonne est en cours de tri.
Range("A1", Range("p1").End (xlDown)).sort Key1:=Range("E1"), Order1:=xlDescending, Header:=xlYes
'Commande utilisée pour passer à la feuille de calcul suivante, une fois la feuille de calcul précédente triée
WS suivant
'Créer une nouvelle feuille de calcul dans le classeur pour stocker les nouvelles données
Cahier de travail actif. Feuilles. Ajouter. Nom = "Résultats"
'Copier coller les données triées dans la feuille nouvellement ajoutée
Feuilles("Feuille1").Plage("A1:p701").Destination de la copie :=Feuilles("Résultats").Plage("a1")
Fin du sous-marin
Le code ci-dessus va trier les valeurs dans la colonne E, ajouter une nouvelle feuille Résultats dans le classeur existant et collez les résultats triés dans la cellule A1.
Création de macros de tri dans Excel
Excel VBA est un langage astucieux qui peut vous faire gagner beaucoup de temps et d'efforts. En utilisant les macros VBA, vous pouvez créer des tableaux de bord complets, trier facilement les données en quelques clics et exécuter facilement différentes fonctions.
Heureusement, la fonctionnalité d'Excel ne s'arrête pas aux macros. Découvrez quelques trucs et astuces pour devenir un utilisateur Excel plus efficace.
Que vous maîtrisiez Excel ou que vous débutiez tout juste, voici les neuf meilleurs sites Web et blogs que vous pouvez utiliser pour apprendre quelques trucs et astuces.
Lire la suite
- La programmation
- Microsoft Excel
- Macro
Gaurav Siyal a deux ans d'expérience en rédaction, écrivant pour une série d'entreprises de marketing numérique et de documents sur le cycle de vie des logiciels.
Abonnez-vous à notre newsletter
Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives !
Cliquez ici pour vous abonner