Vous êtes actuellement hors ligne, en attente de reconnexion à Internet.

Comment faire pour utiliser des macros pour trier des données de plusieurs colonnes en une seule colonne dans Excel

Ancien nº de publication de cet article : F247311
Cet article a été archivé. Il est proposé « en l'état » et ne sera plus mis à jour.
Résumé
Microsoft Excel ne comprend pas de méthode intégrée permettant de trier des données disposées en colonne de style journal. Cet article présente un exemple de macro permettant de trier ce format de données.
Plus d'informations
Microsoft fournit des exemples de programmation à des fins d'illustration uniquement, sans garantie explicite ou implicite. Ceci inclut, de manière non limitative, les garanties implicites de qualité marchande ou d'adéquation à un usage particulier. Cet article suppose que vous connaissez le langage de programmation présenté et les outils utilisés pour créer et déboguer des procédures. Les techniciens du support technique Microsoft peuvent vous expliquer les fonctionnalités d'une procédure particulière, mais ils ne peuvent pas modifier les exemples en vue de vous fournir des fonctionnalités supplémentaires ou de créer des procédures répondant à vos besoins spécifiques.

Tri intégré

Dans Microsoft Excel, vous utilisez généralement la fonctionnalité de tri pour trier une liste. Une liste dans Excel est une série de lignes de feuille de calcul contenant des données liées, telles qu'une base de données de facturation ou un ensemble de noms de clients et de numéros de téléphone. Vous pouvez utiliser une liste comme une base de données, dans laquelle chaque ligne est un enregistrement et chaque colonne est un champ. La première ligne de la liste contient en général l'intitulé des colonnes, par exemple :
   A1 : Q1   B1 : Q2   C1 : Q3   A2 : 10   B2 : 2    C2 : 4   A3 : 14   B3 : 18   C3 : 9   A4 : 7    B4 : 17   C4 : 12   A5 : 1    B5 : 13   C5 : 5   A6 : 11   B6 : 8    C6 : 16   A7 : 3    B7 : 6    C7 : 15				
Si vous triez la liste dans l'ordre croissant, par le champ Q1 (colonne A), les résultats sont les suivants :
   A1 : Q1   B1 : Q2   C1 : Q3   A2 : 1    B2 : 13   C2 : 5   A3 : 3    B3 : 6    C3 : 15   A4 : 7    B4 : 17   C4 : 12   A5 : 10   B5 : 2    C5 : 4   A6 : 11   B6 : 8    C6 : 16   A7 : 14   B7 : 18   C7 : 9				

Tri d'une colonne de style journal

Les colonnes de style journal et les colonnes de style horizontal de gauche à droite sur chaque ligne désignent toutes deux le même type de format de données. Dans les colonnes de style journal, les données remplissent une colonne et continuent en haut de la colonne suivante. Dans ce cas, vos données n'ont probablement par d'intitulés pour chaque colonne, par exemple :
   A1 : 10   B1 : 2    C1 : 4   A2 : 14   B2 : 18   C2 : 9   A3 : 7    B3 : 17   C3 : 12   A4 : 1    B4 : 13   C4 : 5   A5 : 11   B5 : 8    C5 : 16   A6 : 3    B6 : 6    C6 : 15				
Vous pouvez utiliser l'exemple de macro de cet article pour trier les colonnes de style journal dans l'ordre croissant. Si vous utilisez la macro avec les données ci-dessus, les résultats sont les suivants :
   A1 : 1    B1 : 7    C1 : 13   A2 : 2    B2 : 8    C2 : 14   A3 : 3    B3 : 9    C3 : 15   A4 : 4    B4 : 10   C4 : 16   A5 : 5    B5 : 11   C5 : 17   A6 : 6    B6 : 12   C6 : 18				
Pour que la macro de tri fonctionne comme décrit, procédez comme suit :
  1. Ouvrez un nouveau classeur.
  2. Entrez les données d'exemple suivantes dans cette feuille de calcul :
       A1 : 10   B1 : 2    C1 : 4   A2 : 14   B2 : 18   C2 : 9   A3 : 7    B3 : 17   C3 : 12   A4 : 1    B4 : 13   C4 : 5   A5 : 11   B5 : 8    C5 : 16   A6 : 3    B6 : 6    C6 : 15					
  3. Dans le menu Outils, pointez sur Macro, puis cliquez sur Visual Basic Editor.
  4. Dans le menu Insertion, cliquez sur Module.
  5. Tapez le code suivant dans le module :

    Remarque L'exemple suivant montre comment trier dans l'ordre croissant. Vous pouvez changer l'ordre de tri en modifiant la valeur de l'argument « Order1:= » en xlDescending.
       Sub SortAllRangeData()   ' Place column header for temporary sort area.   Range("IV1").Value = "Numbers"      ' Move numbers to temporary sort location.   For Each cell In Selection      Range("iv65536").End(xlUp).Offset(1, 0) = cell.Value   Next cell      ' Sort numbers in ascending order.   Range("IV1", Range("IV1").End(xlDown)).Sort Key1:=Range("IV2"),  _   Order1:=xlAscending, Header:=xlGuess, _        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom           ' Move sorted data back to original sheet location.   Selection(1, 1).Activate ' Make sure the ActiveCell is the                            ' top left of Selection first.   CCnt = Selection.Columns.Count   RCnt = Selection.Rows.Count   CellCnt = Selection.Cells.Count   Tcell = 2   For c = 1 To CCnt     For r = 1 To RCnt        Range(ActiveCell.Address).Offset(r - 1, c - 1).Value =  _        Range("iv" & Tcell).Value        Tcell = Tcell + 1     Next r   Next c      ' Clean up temporary sort location.   Range("IV1", Range("IV1").End(xlDown)).ClearEnd Sub					
  6. Dans le menu Excel de Microsoft Excel X pour Mac et versions ultérieures d'Excel pour Mac ou dans le menu Fichier de toutes les autres versions d'Excel, cliquez sur Fermer et retourner à Microsoft Excel.
  7. Sélectionnez les cellules A1:C6.
  8. Dans le menu Outils, pointez sur Macro, puis cliquez sur Macros. Sélectionnez la macro SortAllRangeData, puis cliquez sur Exécuter.
Toutes les données contenues dans la plage sélectionnée sont maintenant triées et apparaissent comme suit :
   A1 : 1    B1 : 7    C1 : 13   A2 : 2    B2 : 8    C2 : 14   A3 : 3    B3 : 9    C3 : 15   A4 : 4    B4 : 10   C4 : 16   A5 : 5    B5 : 11   C5 : 17   A6 : 6    B6 : 12   C6 : 18				
Références

Excel X pour Mac et versions ultérieures

Pour plus d'informations sur le tri, cliquez sur Aide sur Microsoft Excel dans le menu ? (Aide), tapez tri, cliquez sur Rechercher, puis cliquez sur une rubrique pour l'afficher.

Pour plus d'informations sur la façon d'utiliser la méthode de tri de Visual Basic Editor, cliquez sur Aide sur Microsoft Visual Basic dans le menu Aide, tapez méthode de tri, cliquez sur Rechercher, puis sur la rubrique méthode de tri pour l'afficher.

Excel 2001 pour Mac

Pour plus d'informations sur la façon de trier, cliquez sur le Compagnon Office, tapez trier une liste, cliquez sur Rechercher, puis cliquez sur une rubrique pour l'afficher.

Remarque Si le Compagnon est masqué, cliquez sur le bouton Compagnon Office dans la barre d'outils Standard.

Pour plus d'informations sur la façon d'utiliser la méthode de tri de Visual Basic Editor, cliquez sur le Compagnon Office, tapez méthode de tri, cliquez sur Rechercher, puis sur la rubrique méthode de tri pour l'afficher.
XL2000 MacXLX Mac XLX XL2001 XL98 sorting newspaper snake filter XL2004
Propriétés

ID d'article : 247311 - Dernière mise à jour : 12/05/2015 17:42:40 - Révision : 6.3

  • Microsoft Excel 2000 Standard
  • Microsoft Excel 2004 for Mac
  • Microsoft Excel X pour Mac
  • Microsoft Excel 2001 pour Mac
  • Microsoft Excel 98 pour Macintosh
  • kbnosurvey kbarchive kbautomation kbprogramming kbhowto KB247311
Commentaires
ttp://go.microsoft.com/?linkid=9851308" class="ctl_footerNavLink" data-bi-name="Footer_Trademarks" data-bi-slot="3"> Marques commerciales
  • © 2015 Microsoft