Excel Exercice
Tout savoir sur Excel
  • YouTube
  • Instagram
  • TikTok
  • Facebook
RSS
  • Quiz
  • Formation
  • Exercices
  • Tous les articles
  • Boutique
  • 0 Article
  • Se connecter
    • ↩ Se déconnecter

Copier certaines lignes automatiquement dans une autre feuille

Catégorie : Fonctions Propagées - Intermédiaire
Dernière mise à jour le 15/03/2025
Temps de lecture : 4 minutes
26 286

Pour copier seulement certaines lignes dans une autre feuille, il existe deux techniques

  1. Utiliser l'outil Filtre avancé. Avec cette outil, vous pouvez filtrer et transférer le résultat dans une autre feuille de calcul
  2. La fonction FILTRE d'Excel 365 vous permet de sélectionner une partie de vos données

L'outil Filtre Avancé

L'outil filtre avancé a toujours existé dans toutes les versions d'Excel. A une époque, c'était le seul moyen d'extraire des données sans doublon. Mais ici, nous allons utiliser cet outil pour récupérer seulement les lignes correspondantes à une seule valeur. Le résultat sera copié dans une nouvelle feuille.

Dans le classeur suivant, nous avons la liste des produits vendus sur une semaine et nous voulons seulement copier le produit qui a la référence REF-002

Copier seulement certaines lignes dans une autre feuille

Etape 1 : Ajout du critère à copier

Pour utiliser l'outil Filtre Elaboré, nous DEVONS ajouter à coté de notre tableau de données, le critère à copier. Mais PLUS IMPORTANT ENCORE, nous devons aussi écrire l'entête de colonne où se fera la recherche du critère

Ajout du critere de selection

Etape 2 : Paramétrer le filtre avancé

Le travail préparatoire est déjà terminé. Il ne reste plus qu'à appeler le menu filtre élaboré et renseigner les paramètres attendus

Menu Filtre Avance
  1. Choisissez l'option Copier vers un autre emplacement
  2. Sélectionner les cellules contenant les données, y compris les entêtes
  3. Sélectionner le critère à copier, y compris les entêtes
  4. Indiquer la référence où les cellules vont être copiées
Renseigner la fenetre du filtre avance

Etape 3 : Résultat sur la même feuille

Il ne reste plus qu'à cliquer sur le bouton OK de la boîte de dialogue pour lancer le processus de copie. Seulement, CA NE FONCTIONNE PAS !!!!!! Du moins, pas tout de suite

Message dalerte pour ne pas copier sur la meme feuille

En fait, l'outil Filtre avancé, depuis le ruban, ne permet pas de copier les données dans une autre feuille de calcul.

Par contre, si la cellule de destination est dans la même feuille, comme par exemple J1, là, ça fonctionne

Cellule de destination pour la copie dans la feuille active

Et le résultat est parfait

Copie des lignes mais sur la meme feuille

Etape 4 : Résoudre le problème avec une macro

Comme on vient de le voir, le filtre avancé ne nous permet pas de copier vers une autre feuille. Mais en construisant un programme VBA, on résout le problème facilement.

  1. Créer une nouvelle feuille (ici Destination)
  2. Lancez l'enregistreur de macro.
Lancer lenregistreur de macro
  1. Refaites les mêmes étapes d'extraction en recopiant sur la même feuille
  2. Quand vous avez terminé le processus d'extraction des lignes sur la même feuille, vous pouvez arrêter l'enregistreur.
Arret de lenregistreur de macro
  1. Ouvrir le visual basic Editor pour voir le code avec le raccourci Alt + F11
  2. Dans le module 1, vous voyez le code s'afficher
Sub Macro1()

 Range("A1:F13").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
 "H1:H2"), CopyToRange:=Range("Destination!A1"), Unique:=False
End Sub
  1. Repérer l'instruction CopyToRange
Code VBA genere
  1. Transformer cette instruction en y indiquant le nom de la feuille et la référence de la cellule.
Modification du code pour changer la destination
  1. Fermer l'éditeur VBA
  2. Appuyez sur les touches Alt + F8 pour faire apparaître la boite de dialogue des macros
  3. Lancez la Macro 1 (bouton Exécuter)
  4. Maintenant, les lignes sont copiées dans la feuille Destination
Lignes copiees sur une autre Feuille

Utilisation de la fonction FILTRE

Si vous travaillez avec Microsoft 365, vous avez la fonction FILTRE. Grâce à cette fonction, nous allons pouvoir copier les lignes du tableau initial dans une autre feuille et se basant sur un critère.

=FILTRE(Source!A2:F13,Source!A2:A13="REF-002")

Utilisation de la fonction FILTRE pour copier les lignes dans une autre feuille

Avantage / Inconvénient des méthodes

  • La méthode avec la fonction FILTRE est extrêmement simple à construire. Contrairement à la méthode avec le filtre avancé qui nécessite l'utilisation d'une macro.
  • A l'inverse, la méthode du filtre élaboré copie les données brutes et le format ce qui est un avantage. La fonction FILTRE retourne le résultat sous forme de formule et il peut y avoir un risque de chevauchement (erreur propagation)

Articles liés

  • Top 10 des astuces sur les feuilles de calcul
  • Fusionner Plusieurs Feuilles Excel en une seule
  • Combiner, fusionner, plusieurs sources avec Power BI

A vous d'utiliser la méthode qui s'applique le mieux à votre besoin de copier des lignes dans une autre feuille.

Frédéric LE GUEN

erreur propagation, FILTRE, Macro VBA, VBA

Laisser un commentaire Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.

Articles les plus consultés

  1. Comparer deux colonnes dans Excel
  2. Création d’un calendrier automatique avec Excel
  3. Excel gratuit depuis un navigateur
  4. Changer la couleur à partir du résultat d’une formule dans Excel
  5. Fonction SI dans Excel
  6. Fonction DATE – ANNEE – MOIS – JOUR dans Excel
  7. Créer un diagramme de Gantt avec Excel
  8. Fonction RECHERCHEV avec Excel
  9. Pyramide des âges avec Excel
  10. Quiz pour débutant
  11. La Fonction NB.SI.ENS d’Excel
  12. Calcul avec des heures dans Excel
  13. Comment regrouper par date dans un tableau croisé dynamique
  14. Comment faire des SI imbriqués dans Excel
  15. Format des dates dans Excel
image exercice site

Newsletter

1 fois par mois :
Astuces et quiz

    Nous ne vous enverrons pas de spam. Vous pouvez vous désabonner à tout moment.

    Built with Kit

    Copier certaines lignes automatiquement dans une autre feuille

    Reading time: 4 minutes
    26 286
    Dernière mise à jour le 15/03/2025

    Pour copier seulement certaines lignes dans une autre feuille, il existe deux techniques

    1. Utiliser l'outil Filtre avancé. Avec cette outil, vous pouvez filtrer et transférer le résultat dans une autre feuille de calcul
    2. La fonction FILTRE d'Excel 365 vous permet de sélectionner une partie de vos données

    L'outil Filtre Avancé

    L'outil filtre avancé a toujours existé dans toutes les versions d'Excel. A une époque, c'était le seul moyen d'extraire des données sans doublon. Mais ici, nous allons utiliser cet outil pour récupérer seulement les lignes correspondantes à une seule valeur. Le résultat sera copié dans une nouvelle feuille.

    Dans le classeur suivant, nous avons la liste des produits vendus sur une semaine et nous voulons seulement copier le produit qui a la référence REF-002

    Copier seulement certaines lignes dans une autre feuille

    Etape 1 : Ajout du critère à copier

    Pour utiliser l'outil Filtre Elaboré, nous DEVONS ajouter à coté de notre tableau de données, le critère à copier. Mais PLUS IMPORTANT ENCORE, nous devons aussi écrire l'entête de colonne où se fera la recherche du critère

    Ajout du critere de selection

    Etape 2 : Paramétrer le filtre avancé

    Le travail préparatoire est déjà terminé. Il ne reste plus qu'à appeler le menu filtre élaboré et renseigner les paramètres attendus

    Menu Filtre Avance
    1. Choisissez l'option Copier vers un autre emplacement
    2. Sélectionner les cellules contenant les données, y compris les entêtes
    3. Sélectionner le critère à copier, y compris les entêtes
    4. Indiquer la référence où les cellules vont être copiées
    Renseigner la fenetre du filtre avance

    Etape 3 : Résultat sur la même feuille

    Il ne reste plus qu'à cliquer sur le bouton OK de la boîte de dialogue pour lancer le processus de copie. Seulement, CA NE FONCTIONNE PAS !!!!!! Du moins, pas tout de suite

    Message dalerte pour ne pas copier sur la meme feuille

    En fait, l'outil Filtre avancé, depuis le ruban, ne permet pas de copier les données dans une autre feuille de calcul.

    Par contre, si la cellule de destination est dans la même feuille, comme par exemple J1, là, ça fonctionne

    Cellule de destination pour la copie dans la feuille active

    Et le résultat est parfait

    Copie des lignes mais sur la meme feuille

    Etape 4 : Résoudre le problème avec une macro

    Comme on vient de le voir, le filtre avancé ne nous permet pas de copier vers une autre feuille. Mais en construisant un programme VBA, on résout le problème facilement.

    1. Créer une nouvelle feuille (ici Destination)
    2. Lancez l'enregistreur de macro.
    Lancer lenregistreur de macro
    1. Refaites les mêmes étapes d'extraction en recopiant sur la même feuille
    2. Quand vous avez terminé le processus d'extraction des lignes sur la même feuille, vous pouvez arrêter l'enregistreur.
    Arret de lenregistreur de macro
    1. Ouvrir le visual basic Editor pour voir le code avec le raccourci Alt + F11
    2. Dans le module 1, vous voyez le code s'afficher
    Sub Macro1()
    
     Range("A1:F13").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
     "H1:H2"), CopyToRange:=Range("Destination!A1"), Unique:=False
    End Sub
    1. Repérer l'instruction CopyToRange
    Code VBA genere
    1. Transformer cette instruction en y indiquant le nom de la feuille et la référence de la cellule.
    Modification du code pour changer la destination
    1. Fermer l'éditeur VBA
    2. Appuyez sur les touches Alt + F8 pour faire apparaître la boite de dialogue des macros
    3. Lancez la Macro 1 (bouton Exécuter)
    4. Maintenant, les lignes sont copiées dans la feuille Destination
    Lignes copiees sur une autre Feuille

    Utilisation de la fonction FILTRE

    Si vous travaillez avec Microsoft 365, vous avez la fonction FILTRE. Grâce à cette fonction, nous allons pouvoir copier les lignes du tableau initial dans une autre feuille et se basant sur un critère.

    =FILTRE(Source!A2:F13,Source!A2:A13="REF-002")

    Utilisation de la fonction FILTRE pour copier les lignes dans une autre feuille

    Avantage / Inconvénient des méthodes

    • La méthode avec la fonction FILTRE est extrêmement simple à construire. Contrairement à la méthode avec le filtre avancé qui nécessite l'utilisation d'une macro.
    • A l'inverse, la méthode du filtre élaboré copie les données brutes et le format ce qui est un avantage. La fonction FILTRE retourne le résultat sous forme de formule et il peut y avoir un risque de chevauchement (erreur propagation)

    Articles liés

    • Top 10 des astuces sur les feuilles de calcul
    • Fusionner Plusieurs Feuilles Excel en une seule
    • Combiner, fusionner, plusieurs sources avec Power BI

    A vous d'utiliser la méthode qui s'applique le mieux à votre besoin de copier des lignes dans une autre feuille.

    Étiquettes : erreur propagationFILTREMacro VBAVBA
    Frédéric LE GUEN

    Newsletter

    1 fois par mois :
    Astuces et quiz

      Nous ne vous enverrons pas de spam. Vous pouvez vous désabonner à tout moment.

      Built with Kit

      Laisser un commentaire Annuler la réponse

      Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

      Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.

      À propos
      Contact
      Mentions légales
      CGV

      © 2002 – 2026 – https://excel-exercice.com. Tous droits réservés.
      Site géré par le majordome du net

      À propos
      Contact
      Mentions légales
      CGV

      © 2026 – https://excel-exercice.com. Tous droits réservés.
      Site géré par le majordome du net