Comment copier des données vers une autre feuille à l’aide du filtre avancé dans Excel ?
Dans Excel, la fonction Filtre avancé constitue un outil efficace pour extraire et filtrer des données selon vos critères. Bien qu’elle soit couramment utilisée au sein d’une même feuille, vous remarquerez qu’Excel affiche une boîte de dialogue d’avertissement lorsque vous tentez de copier directement les résultats filtrés vers une autre feuille. Ce comportement peut s’avérer frustrant, notamment pour les utilisateurs qui gèrent des données réparties sur plusieurs feuilles, comme dans les rapports volumineux ou les tableaux de bord. Pouvoir transférer précisément les données filtrées vers une autre feuille facilite une présentation claire, simplifie le partage et contribue à conserver des enregistrements bien organisés.

Copier des données vers une autre feuille avec le filtre avancé en utilisant un code VBA
Copier des données vers une autre feuille avec le filtre avancé en utilisant la fonction Filtre avancé
Excel ne permet pas d’utiliser le filtre avancé pour copier directement les résultats filtrés vers une feuille différente de celle où résident les données. Toutefois, vous pouvez contourner cette limitation en suivant une méthode pratique consistant à activer la feuille de destination avant d’exécuter le filtre. Les étapes ci-dessous vous aideront à résoudre ce problème sans configuration complexe ni outils spécialisés. Cette approche convient particulièrement aux utilisateurs souhaitant filtrer et déplacer manuellement des données, notamment pour des transferts ponctuels ou simples. Si, en revanche, vous avez besoin d’automatiser régulièrement le filtrage et la copie entre feuilles, envisagez d’utiliser un code VBA, expliqué plus loin dans ce guide.
1. Commencez par activer la feuille dans laquelle vous souhaitez copier les résultats filtrés. Excel y insérera automatiquement les données filtrées lorsque vous appliquerez le filtre avancé. Veillez à ce que cette feuille ne contienne aucune donnée existante à l’emplacement prévu pour le collage, afin d’éviter tout écrasement.

2. Avec la feuille de destination active, rendez-vous dans le Ruban Excel, cliquez sur Données, puis sélectionnez Avancé dans le groupe Trier et filtrer. La boîte de dialogue Filtre avancé s’ouvre alors, vous permettant d’affiner précisément votre filtrage. Assurez-vous d’être bien sur la bonne feuille avant de continuer, car c’est ici que les résultats filtrés apparaîtront.

3. Dans la boîte de dialogue Filtre avancé :
- Sélectionnez Copier vers un autre emplacement sous Action.
- Cliquez
à côté de Plage de liste pour sélectionner le jeu de données que vous souhaitez filtrer. Vous pouvez accéder à la feuille source durant cette étape. - Cliquez
à côté de la Plage de critères pour définir vos critères de filtrage. Ces critères peuvent se trouver sur n’importe quelle feuille.

Conseils : La plage de liste doit inclure des en-têtes afin que les critères soient correctement associés. La plage de critères doit également comporter des en-têtes correspondants et contenir la logique de filtrage (valeurs, texte ou formules). Pour éviter les erreurs, assurez-vous que vos critères sont bien structurés et que les plages ne se chevauchent pas.
4. Ensuite, cliquez
à côté du champ Copier vers. Sélectionnez la cellule de votre feuille active où vous souhaitez que les résultats filtrés commencent à s’afficher. Une fois vos sélections effectuées, cliquez sur OK. Excel transférera alors les données filtrées depuis la feuille source vers votre feuille active.

Remarques et dépannage :
- Si vos critères ne renvoient aucun résultat, Excel copiera uniquement les en-têtes de colonne vers la feuille cible.
- Activez toujours la feuille cible avant d’utiliser le filtre avancé ; sinon, Excel affichera un avertissement et bloquera la copie entre feuilles.
- Si la zone de placement de la liste chevauche des données existantes, celles-ci risquent d’être écrasées sans autre confirmation.
- Avec de grands jeux de données, le filtrage et la copie peuvent prendre plusieurs secondes. Veuillez attendre la fin du traitement avant d’apporter toute autre modification.
- En cas d’apparition de messages d’erreur, vérifiez vos plages Liste et Critères afin de repérer d’éventuelles lignes vides, des en-têtes incohérents ou des cellules fusionnées susceptibles d’interférer avec le filtrage.
Cette méthode manuelle convient idéalement aux tâches occasionnelles ou simples et offre un retour immédiat en cas de problème. Pour des flux de travail plus complexes ou des opérations répétées, l’automatisation via VBA permet de gagner du temps et de réduire les erreurs, comme illustré ci-dessous.
Copier des données vers une autre feuille avec le filtre avancé en utilisant un code VBA
Pour les utilisateurs qui filtrent fréquemment des données entre feuilles ou qui nécessitent une automatisation plus robuste, VBA (Visual Basic for Applications) constitue une solution efficace pour transférer des données filtrées d’une feuille à l’autre, contournant ainsi les limites de l’interface standard. Elle s’avère particulièrement précieuse dans les scénarios impliquant une gestion répétitive de données ou la génération de rapports exigeant une logique de filtrage cohérente.
1. Commencez par activer la feuille contenant les données que vous souhaitez filtrer et copier. Cela définit le contexte d’exécution du code ainsi que celui des invites de sélection.
2. Appuyez sur ALT + F11 dans Excel pour ouvrir l’éditeur Microsoft Visual Basic pour Applications.
3. Dans la fenêtre de l’éditeur VBA, cliquez sur Insertion > Module pour ajouter un nouveau module. Copiez ensuite le code suivant et collez-le dans la fenêtre du module :
Code VBA : Copier des données vers une autre feuille avec le filtre avancé :
Sub Advancedfiltertoanothersheet()
'Updateby Extendoffice
Dim xStr As String
Dim xAddress As String
Dim xRg As Range
Dim xCRg As Range
Dim xSRg As Range
On Error Resume Next
xAddress = ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Please select the filter range:", "Kutools for Excel", xAddress, , , , , 8)
If xRg Is Nothing Then Exit Sub
Set xCRg = Application.InputBox("Please select the criteria range:", "Kutools for Excel", "", , , , , 8)
If xCRg Is Nothing Then Exit Sub
Set xSRg = Application.InputBox("Please select the output range:", "Kutools for Excel", "", , , , , 8)
If xSRg Is Nothing Then Exit Sub
xRg.AdvancedFilter xlFilterCopy, xCRg, xSRg, False
xSRg.Worksheet.Activate
xSRg.Worksheet.Columns.AutoFit
End Sub 4. Après avoir inséré le code, exécutez la macro en appuyant sur la touche F5. Une invite s’affiche alors pour vous demander de sélectionner la plage de filtrage (vos données avec en-têtes à filtrer). Choisissez la plage souhaitée et cliquez sur OK.

5. La boîte de dialogue suivante vous invite à sélectionner la plage de critères, qui doit inclure les en-têtes ainsi que les conditions de filtrage. Sélectionnez les cellules contenant vos critères, puis cliquez sur OK.

6. Une dernière boîte de dialogue s’affiche pour vous demander de choisir la zone de placement de la liste dans la feuille de destination. Vous pouvez basculer vers une autre feuille si nécessaire, puis sélectionner la cellule à partir de laquelle vous souhaitez que les résultats filtrés apparaissent. Cliquez sur OK une fois votre sélection effectuée.

7. Les données filtrées sont automatiquement copiées à l’emplacement indiqué dans la feuille sélectionnée, et la largeur des colonnes de la feuille de destination s’ajuste automatiquement. Aucune donnée d’origine n’est perdue dans les deux feuilles, sauf si vous choisissez une destination déjà occupée — auquel cas le contenu existant pourrait être écrasé.
- Précautions :
- Assurez-vous que vos plages de filtre et de critères comportent toutes deux des en-têtes, sans cellules fusionnées ni lignes vides, afin d’éviter toute erreur.
- Vérifiez que la cellule cible prévue pour recevoir le résultat est correctement positionnée afin d’accueillir l’ensemble du jeu de données filtré, sous peine d’écraser des données adjacentes.
- Si vous devez répéter fréquemment cette opération, enregistrez la macro et attribuez-lui un raccourci pour un accès plus rapide.
- Si vous rencontrez des erreurs ou si la macro ne fonctionne pas comme prévu, assurez-vous que les macros sont activées et que votre classeur est enregistré dans un format compatible avec les macros (.xlsm).
Dépannage et conseils :
- Si vous sélectionnez la plage de manière incorrecte ou si vous la laissez vide, la macro s’arrêtera sans apporter de modifications ; relancez-la simplement et re-sélectionnez les zones appropriées.
- Lorsque vous travaillez avec de grands jeux de données, veillez à attendre la fin du processus avant d’effectuer toute autre action.
- Vous pouvez personnaliser le code VBA pour y intégrer une logique plus avancée, comme la suppression des doublons ou la copie de lignes entières.
En résumé, ces deux solutions permettent de copier des données filtrées vers une autre feuille à l’aide du filtre avancé : la méthode manuelle est idéale pour les tâches simples ou occasionnelles, tandis que l’approche VBA s’impose pour les scénarios d’automatisation régulière. Le choix optimal dépendra de votre flux de travail, de votre aisance technique et de la fréquence à laquelle vous devez reproduire ces opérations.
Meilleurs outils de productivité Office
Boostez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée.Kutools pour Excel propose plus de 300 fonctionnalités avancées pour améliorer votre productivité et Gagner du temps.Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office et rend votre travail bien plus facile
- Activez l’édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de 50 % et vous fait économiser des centaines de clics de souris chaque jour !
Tous les compléments Kutools. Un seul installateur
Kutools for Office regroupe les compléments pour Excel, Word, Outlook et PowerPoint, ainsi que Office Tab Pro, ce qui en fait le choix idéal pour les équipes travaillant à travers les applications Office.
- Suite tout-en-un— Compléments Excel, Word, Outlook et PowerPoint + Office Tab Pro
- Un seul installateur, une seule licence— installation en quelques minutes (compatible MSI)
- Fonctionne mieux ensemble— productivité optimisée dans toutes les applications Office
- Essai gratuit de 30 jours avec toutes les fonctionnalités— aucune inscription, aucune carte bancaire
- Meilleur rapport qualité-prix— économisez par rapport à l’achat de compléments individuels