Comment supprimer toutes les autres lignes dans Excel (ou chaque énième ligne)

Regarder la vidéo - Supprimer toutes les autres lignes dans Excel

Parfois, vous devrez peut-être supprimer une ligne sur deux (c'est-à-dire des lignes alternées) ou chaque troisième/quatrième/cinquième ligne dans Excel.

Un cas d'utilisation pourrait être lorsque vous avez des données hebdomadaires et que vous ne voulez les données que pour les semaines paires ou impaires. Un autre pourrait être lorsque vous obtenez un vidage de données à partir d'une base de données et que toutes les données utiles ne se trouvent que dans chaque deuxième ou troisième ligne.

Bien que vous ayez toujours la possibilité de sélectionner et de supprimer manuellement des lignes, cela est inefficace si vous disposez d'un ensemble de données volumineux.

Il existe de meilleures façons de le faire.

Dans ce didacticiel, je vais vous montrer quelques façons de supprimer une ligne sur deux dans Excel à l'aide d'une technique de filtrage simple. Et si vous êtes d'accord avec l'utilisation d'un code macro VBA, j'ai également donné un code VBA court qui le fait en un seul clic. Les méthodes sont présentées dans ce tutoriel pour toutes les versions d'Excel (2007, 2010, 2013 et 2016)

Bien que la suppression de toutes les autres lignes dans Excel puisse être assez simple, il peut être difficile de supprimer toutes les autres colonnes. En effet, vous ne pouvez pas filtrer les colonnes dans Excel (comme vous pouvez filtrer les lignes). Dans la dernière section de ce didacticiel, je vais également vous montrer quelques façons de supprimer des colonnes alternatives (ou chaque Nième colonne) dans Excel.

Supprimer une ligne sur deux en filtrant l'ensemble de données (à l'aide d'une formule)

Si vous pouviez en quelque sorte filtrer toutes les lignes paires ou les lignes impaires, il serait très facile de supprimer ces lignes/enregistrements.

Bien qu'il n'y ait pas de fonctionnalité intégrée pour ce faire, vous pouvez utiliser une colonne d'aide pour diviser d'abord les lignes en paires et impaires, puis filtrer en fonction de la valeur de la colonne d'aide.

Supposons que vous ayez un jeu de données comme indiqué ci-dessous, qui contient des données de vente pour chaque représentant commercial pour deux régions (les États-Unis et le Canada) et que vous souhaitez supprimer les données pour le Canada.

Vous trouverez ci-dessous les étapes pour filtrer puis supprimer toutes les autres lignes (qui contiennent des données pour le Canada) :

  1. Dans la cellule adjacente au dernier en-tête de colonne, saisissez le texte Colonne d'aide (ou tout texte d'en-tête que vous souhaitez que la colonne d'aide ait)
  2. Dans la cellule sous l'en-tête de la colonne d'assistance, saisissez la formule suivante : =DISEVEN(LIGNE()). Copiez cette formule pour toutes les cellules. Cette formule renvoie VRAI pour toutes les lignes paires et FAUX pour toutes les lignes IMPAIRES
  3. Sélectionnez l'ensemble de données complet (y compris les cellules dans lesquelles nous avons entré la formule à l'étape ci-dessus).
  4. Cliquez sur l'onglet Données
  5. Cliquez sur l'icône Filtrer. Cela appliquera un filtre à tous les en-têtes de l'ensemble de données
  6. Cliquez sur l'icône Filtre dans la cellule HelperColumn.
  7. Désélectionnez l'option VRAI (donc seule l'option FAUX est sélectionnée)
  8. Cliquez sur OK. Cela filtrera les données et affichera uniquement les enregistrements où la valeur HelperColumn est FALSE.
  9. Sélectionnez toutes les cellules filtrées dans la colonne d'aide (à l'exception de l'en-tête)
  10. Faites un clic droit sur l'une des cellules sélectionnées et cliquez sur "Supprimer la ligne"
  11. Dans la boîte de dialogue qui s'ouvre, cliquez sur OK. Cela supprimera tous les enregistrements visibles et vous ne verrez que la ligne d'en-tête à partir de maintenant.
  12. Cliquez sur l'onglet Données, puis sur l'icône Filtre. Cela supprimera le filtre et vous pourrez voir tous les enregistrements restants.

Les étapes ci-dessus filtrent une ligne sur deux dans l'ensemble de données, puis suppriment ces lignes.

Ne vous inquiétez pas des valeurs de la colonne d'aide à ce stade. Les données résultantes ne contiennent que les lignes pour les États-Unis et toutes les lignes pour le Canada sont supprimées. Vous pouvez supprimer la colonne d'aide maintenant.

Si vous souhaitez supprimer une ligne sur deux à partir de la première ligne, sélectionnez l'option VRAI à l'étape 7 et désélectionnez l'option FAUX.

Remarque : lorsque vous supprimez les lignes dans Excel à l'aide de la méthode ci-dessus, elle supprime également toutes les données que vous pourriez avoir dans leur intégralité (à l'exception de celle de l'ensemble de données). Lorsque vous utilisez cette méthode, assurez-vous que vous n'avez rien à gauche et à droite de l'ensemble de données que vous supprimez.

Bien que la méthode ci-dessus soit excellente, elle présente deux inconvénients :

  1. Il faut que vous ajoutiez une nouvelle colonne (le Colonne d'aide dans notre exemple ci-dessus)
  2. Cela peut prendre beaucoup de temps si vous devez supprimer des lignes alternatives, faites-le souvent
Tutoriel connexe : Supprimer des lignes en fonction d'une valeur de cellule (ou d'une condition) dans Excel

Supprimer chaque nième ligne en filtrant l'ensemble de données (à l'aide d'une formule)

Dans la méthode ci-dessus, je vous ai montré comment supprimer toutes les autres lignes (ligne alternative) dans Excel.

Et vous pouvez également utiliser la même logique pour supprimer chaque troisième ou quatrième ligne dans Excel.

Supposons que vous ayez un ensemble de données comme indiqué ci-dessous et que vous souhaitiez supprimer toutes les trois lignes.

Les étapes pour supprimer une ligne sur trois sont presque les mêmes que celles décrites dans la section ci-dessus (pour supprimer des lignes alternatives). La seule différence réside dans la formule utilisée à l'étape 2.

Vous trouverez ci-dessous les étapes à suivre :

  1. Dans la cellule adjacente au dernier en-tête de colonne, saisissez le texte Colonne d'aide (ou tout texte d'en-tête que vous souhaitez que la colonne d'aide ait)
  2. Dans la cellule sous l'en-tête de la colonne d'assistance, saisissez la formule suivante : =MOD(LIGNE(),3)=1. Cette formule renvoie TRUE pour chaque troisième ligne et FALSE pour chaque autre ligne.
  3. Sélectionnez l'ensemble de données complet (y compris les cellules dans lesquelles nous avons entré la formule à l'étape ci-dessus).
  4. Cliquez sur l'onglet Données
  5. Cliquez sur l'icône Filtrer. Cela appliquera un filtre à tous les en-têtes de l'ensemble de données
  6. Cliquez sur l'icône Filtre dans la cellule HelperColumn.
  7. Désélectionnez l'option VRAI (donc seule l'option FAUX est sélectionnée)
  8. Cliquez sur OK. Cela filtrera les données et affichera uniquement les enregistrements où la valeur HelperColumn est FALSE.
  9. Sélectionnez toutes les cellules de la colonne d'aide
  10. Faites un clic droit sur l'une des cellules sélectionnées et cliquez sur Supprimer la ligne
  11. Dans la boîte de dialogue qui s'ouvre, cliquez sur OK. Cela supprimera tous les enregistrements visibles et vous ne verrez que la ligne d'en-tête à partir de maintenant.
  12. Cliquez sur l'onglet Données, puis sur l'icône Filtre. Cela supprimera le filtre et vous pourrez voir tous les enregistrements restants.

Les étapes ci-dessus supprimeraient une ligne sur trois de l'ensemble de données et vous obtiendriez les données résultantes comme indiqué ci-dessous.

Ne vous inquiétez pas des valeurs de la colonne d'aide à ce stade. Vous pouvez supprimer la colonne d'aide maintenant.

La formule utilisée à l'étape 2 utilise la fonction MOD - qui donne le reste lorsqu'un nombre est divisé par l'autre. Ici, j'ai utilisé la fonction ROW pour obtenir le numéro de ligne et il est divisé par 3 (car nous voulons supprimer chaque troisième ligne).

Étant donné que notre ensemble de données commence à partir de la deuxième ligne (c'est-à-dire que la ligne 2 contient le premier enregistrement), j'utilise la formule suivante :=MOD(LIGNE(),3)=1

Je l'assimile à 1 et pour chaque troisième ligne, la formule MOD donnera le reste à 1.

Vous pouvez ajuster la formule en conséquence. Par exemple, si le premier enregistrement de votre ensemble de données commence à partir de la troisième ligne, la formule serait =MOD(LIGNE(),3)=2

Supprimer automatiquement toutes les autres lignes (ou nième ligne) à l'aide de la macro VBA (méthode rapide)

Si vous devez supprimer une ligne sur deux (ou une nième ligne) assez souvent, vous pouvez utiliser un code VBA et l'avoir disponible dans la barre d'outils d'accès rapide. Cela vous permettra de supprimer rapidement des lignes alternatives en un seul clic.

Vous trouverez ci-dessous le code qui vous demande d'abord de sélectionner la plage dans laquelle vous souhaitez supprimer des lignes alternatives, puis de supprimer une ligne sur deux dans l'ensemble de données sélectionné.

Sub Delete_Every_Other_Row() Dim Rng As Range Set Rng = Application.InputBox ("Sélectionnez la plage (à l'exclusion des en-têtes)", "Sélection de la plage", Type:=8) For i = Rng.Rows.Count To 1 Step -2 If i Mod 2 = 0 Then Rng.Rows(i).Delete End If Next i End Sub

Lorsque vous exécutez le code ci-dessus, il vous demandera d'abord de sélectionner la plage de cellules. Une fois la sélection effectuée, elle parcourra chaque ligne et supprimera une ligne sur deux.

Si vous souhaitez plutôt supprimer une ligne sur trois, vous pouvez utiliser le code ci-dessous :

Sub Delete_Every_Third_Row() Dim Rng As Range Set Rng = Application.InputBox("Sélectionnez la plage (hors en-têtes)", "Sélection de plage", Tapez :=8) Pour i = Rng.Rows.Count To 1 Step -3 If i Mod 3 = 0 Then Rng.Rows(i).Delete End If Next i End Sub

Où mettre ce code macro VBA ?

Vous devez placer ce code dans un module standard de l'éditeur VB d'Excel.

Vous trouverez ci-dessous les étapes pour ouvrir l'éditeur Vb, ajouter un module et y placer le code :

  1. Copiez le code VBA ci-dessus.
  2. Allez dans l'onglet Développeur.
  3. Cliquez sur Visual Basic.
  4. Dans l'éditeur VB, cliquez avec le bouton droit sur l'un des objets du classeur.
  5. Allez dans Insérer et cliquez sur Module.
  6. Dans le module, collez le code VBA ci-dessus.
  7. Fermez l'éditeur VB.

Une fois que vous avez le code dans l'éditeur VB, vous pouvez utiliser les méthodes suivantes pour exécuter le code :

  • Exécutez une macro à partir de l'éditeur VB (en cliquant sur le bouton de lecture vert dans la barre d'outils de l'éditeur VB)
  • En plaçant le curseur sur n'importe quelle ligne du code et en utilisant la touche F5
  • En affectant la macro à un bouton/une forme
  • En ajoutant la macro à la barre d'outils d'accès rapide
Voici un tutoriel détaillé sur la façon d'exécuter une macro dans Excel.

Si vous devez le faire souvent, vous pouvez envisager d'ajouter le code VBA au classeur de macros personnelles. De cette façon, il sera toujours à votre disposition pour une utilisation dans tous les classeurs.

Lorsque vous avez un code VBA dans un classeur, vous devez l'enregistrer en tant que fichier compatible avec les macros (avec l'extension .XLSM)

Remarque : Étant donné que toutes les modifications apportées par le code VBA sont irréversibles, il est préférable de faire d'abord une copie de sauvegarde du classeur/de la feuille de calcul, puis d'exécuter ce code.

Supprimer toutes les autres colonnes (ou toutes les énièmes colonnes)

La suppression de chaque ligne alternative ou de chaque troisième/quatrième ligne est facilitée car vous pouvez utiliser l'option de filtre. Tout ce que vous avez à faire est d'utiliser une formule qui identifie les lignes alternées (ou chaque troisième/quatrième ligne) et filtre ces lignes.

Malheureusement, cette même méthodologie ne fonctionnera pas avec les colonnes, car vous ne pouvez pas filtrer les colonnes de la même manière que vous filtrez les lignes.

Donc, si vous devez supprimer une colonne sur deux (ou une colonne sur trois/quatrième/ne), vous devez être un peu plus créatif.

Dans cette section, je vais vous montrer deux méthodes que vous pouvez utiliser pour supprimer toutes les autres colonnes dans Excel (et vous pouvez utiliser la même méthode pour supprimer chaque troisième/quatrième/Nième colonne si vous le souhaitez).

Supprimer des colonnes alternatives à l'aide de formules et d'une méthode de tri

Supposons que vous ayez un ensemble de données comme indiqué ci-dessous et que vous souhaitiez supprimer toutes les autres colonnes (à l'exception de la colonne d'en-tête A)

L'astuce ici serait d'identifier d'autres colonnes à l'aide d'une formule, puis de trier les colonnes en fonction de cette formule. Une fois que vous avez rassemblé les colonnes triées, vous pouvez les sélectionner et les supprimer manuellement.

Voici les étapes pour supprimer toutes les autres colonnes dans Excel :

  1. Insérez une ligne au-dessus de la ligne d'en-tête (cliquez avec le bouton droit sur n'importe quelle cellule de l'en-tête, cliquez sur Insérer, puis sur l'option Ligne entière)
  2. Entrez la formule suivante dans la cellule au-dessus de la colonne la plus à gauche de l'ensemble de données et copiez pour toutes les cellules : =MOD(COLONNE(),2)
  3. Convertissez les valeurs de la formule en nombres. Pour ce faire, copiez les cellules, faites un clic droit et allez dans Collage spécial -> Coller les valeurs.
  4. Sélectionnez l'ensemble de données complet (à l'exclusion des en-têtes de la colonne). Dans cet exemple, j'ai sélectionné B1:G14 (et NE PAS colonne A)
  5. Cliquez sur l'onglet Données
  6. Cliquez sur l'icône Trier
  7. Dans la boîte de dialogue Trier, apportez les modifications suivantes :
    • Cliquez sur le bouton « Options » et dans la boîte de dialogue qui s'ouvre, cliquez sur « Trier de gauche à droite » puis cliquez sur OK
    • Dans la liste déroulante Trier par, sélectionnez Ligne 1. Il s'agit de la ligne contenant les résultats de la formule
    • Dans la liste déroulante Ordre, sélectionnez Du plus petit au plus grand.
  8. Cliquez sur OK

Les étapes ci-dessus trient toutes les colonnes et rassemblent toutes les colonnes alternatives au même endroit (à la fin).

Vous pouvez maintenant sélectionner toutes ces colonnes (pour lesquelles la valeur de la formule est 1) et les supprimer.

Bien que ce ne soit pas la meilleure solution, cela permet quand même de faire le travail.

Si vous souhaitez supprimer une colonne sur trois ou une colonne sur quatre, vous devez ajuster la formule en conséquence.

Tutoriel connexe : Comment trier dans Excel (par lignes, colonnes, couleurs, dates et nombres)

Supprimer les colonnes alternatives à l'aide de VBA

Un autre moyen rapide de supprimer des colonnes alternatives consiste à utiliser le code VBA ci-dessous :

Sub Delete_Every_Other_Column() Dim Rng As Range Set Rng = Application.InputBox("Sélectionnez la plage (hors en-têtes)", "Sélection de plage", Tapez :=8) For i = Rng.Columns.Count To 1 Step -2 If i Mod 2 = 0 Then Rng.Columns(i).Delete End If Next i End Sub

Le code ci-dessus vous demande de sélectionner une plage de cellules contenant les colonnes. Ici, vous devez sélectionner les colonnes à l'exception de celle qui a l'en-tête.

Une fois que vous avez spécifié la plage de cellules avec les données, il utilisera une boucle For et supprimera toutes les autres colonnes.

Si vous souhaitez supprimer toutes les trois colonnes, vous pouvez utiliser le code ci-dessous (et ajuster en conséquence pour supprimer la Nième colonne)

Sub Delete_Every_Third_Column() Dim Rng As Range Set Rng = Application.InputBox("Sélectionnez la plage (hors en-têtes)", "Sélection de plage", Tapez :=8) For i = Rng.Columns.Count To 1 Step -3 If i Mod 3 = 0 Then Rng.Columns(i).Delete End If Next i End Sub

Les étapes pour savoir où placer ce code VBA et comment l'utiliser sont décrites dans la section ci-dessus intitulée - "Supprimer automatiquement toutes les autres lignes (ou nième ligne) à l'aide de la macro VBA (méthode rapide)"

J'espère que vous avez trouvé ce tutoriel Excel utile.

Vous contribuerez au développement du site, partager la page avec vos amis

wave wave wave wave wave