Inversion des données (Microsoft Excel)
De nombreuses personnes utilisent Excel comme un simple gestionnaire de base de données, entrant des informations dans différentes lignes d’une feuille de calcul. Lorsque vous travaillez avec vos tableaux de données, vous pouvez rencontrer le besoin d’inverser l’ordre des lignes dans le tableau. Ainsi, si vous avez une table avec dix lignes, les lignes passeraient de dix à une au lieu de une à dix.
Il n’y a aucune fonction intrinsèque dans Excel qui vous permet de retourner les données de cette manière. Cependant, vous pouvez utiliser les capacités de tri d’Excel pour accomplir la même chose en suivant ces étapes générales:
-
Insérez une nouvelle colonne immédiatement à gauche de votre tableau de données.
-
Dans les cellules de la nouvelle colonne, entrez les nombres de 1 à combien de lignes il y a dans votre tableau.
-
Sélectionnez les lignes qui composent votre tableau de données.
-
Choisissez Trier dans le menu Données. Excel affiche la boîte de dialogue Trier.
(Voir la figure 1.)
-
Dans la liste déroulante Trier par, indiquez que vous souhaitez trier en fonction de votre colonne nouvellement créée.
-
Cliquez sur Décroissant comme type de tri.
-
Cliquez sur OK. Excel réorganise vos données dans l’ordre inverse de ce qu’elles étaient.
Si vous devez faire beaucoup de retournement de données quotidiennement, utiliser les étapes ci-dessus peut être assez fatigant. Dans ce cas, vous souhaiterez peut-être créer une macro pour effectuer le travail à votre place. La macro suivante, FlipRows, fera l’affaire:
Sub FlipRows() Dim vTop As Variant Dim vEnd As Variant Dim iStart As Integer Dim iEnd As Integer Application.ScreenUpdating = False iStart = 1 iEnd = Selection.Rows.Count Do While iStart < iEnd vTop = Selection.Rows(iStart) vEnd = Selection.Rows(iEnd) Selection.Rows(iEnd) = vTop Selection.Rows(iStart) = vEnd iStart = iStart + 1 iEnd = iEnd - 1 Loop Application.ScreenUpdating = True End Sub
Pour utiliser cette macro, tout ce que vous avez à faire est de sélectionner les lignes que vous souhaitez retourner et de l’exécuter. La macro ne modifiera pas vos données, à l’exception du retournement des lignes. En d’autres termes, il n’ajoutera aucune colonne d’informations.
Une caractéristique intéressante de cette approche est que vous pouvez l’adapter rapidement au retournement de colonnes de données. Tout ce que vous avez à faire est de changer toutes les occurrences du mot «lignes» en «colonnes». Ainsi, ce qui suit devient la nouvelle macro:
Sub FlipColumns() Dim vTop As Variant Dim vEnd As Variant Dim iStart As Integer Dim iEnd As Integer Application.ScreenUpdating = False iStart = 1 iEnd = Selection.Columns.Count Do While iStart < iEnd vTop = Selection.Columns(iStart) vEnd = Selection.Columns(iEnd) Selection.Columns(iEnd) = vTop Selection.Columns(iStart) = vEnd iStart = iStart + 1 iEnd = iEnd - 1 Loop Application.ScreenUpdating = True End Sub
Encore une fois, sélectionnez simplement les colonnes que vous souhaitez retourner, puis exécutez la macro.
_Note: _
Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.
lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur]
.
ExcelTips est votre source pour une formation Microsoft Excel rentable.
Cette astuce (2653) s’applique à Microsoft Excel 97, 2000, 2002 et 2003.