Comment copier une colonne en fonction de la valeur d’une cellule vers une autre feuille ?
Lorsque vous travaillez avec des données réparties dans des colonnes dont les en-têtes sont des dates, il est courant de devoir extraire une colonne entière d’une feuille de calcul et la copier vers une autre feuille — mais uniquement pour la colonne dont l’en-tête correspond à une date spécifique saisie ailleurs dans votre classeur. Par exemple, supposons que vous disposiez d’un tableau dans Feuil1 où chaque en-tête de colonne est une date différente, et que vous saisissiez une date cible en Feuil2!A1. Vous souhaitez alors copier automatiquement — ou facilement — l’intégralité de la colonne de Feuil1 dont l’en-tête correspond à la date située en Feuil2!A1, puis la coller dans Feuil3, comme illustré ci-dessous. Il s’agit d’un défi typique lorsqu’il s’agit de comparer des indicateurs quotidiens, de gérer des plannings ou d’extraire des données spécifiques à une période donnée pour vos rapports.
➤ Code VBA – Copier automatiquement une colonne vers une autre feuille en fonction de la valeur d’une cellule
➤ Autres méthodes intégrées d’Excel – Utiliser le filtre pour isoler et copier une colonne
Copier une colonne vers une autre feuille en fonction de la valeur d’une cellule à l’aide d’une formule
Les fonctions INDEX et EQUIV d’Excel offrent un moyen efficace de récupérer une colonne entière depuis une feuille source, en fonction d’une valeur d’en-tête spécifique référencée dans une autre feuille. Cette méthode est particulièrement utile lorsque vous avez besoin que les données soient mises à jour automatiquement dès que la valeur de la cellule change, ce qui élimine les ajustements manuels fastidieux et les opérations répétées de copier-coller.
1. Sélectionnez la cellule de la feuille de destination où vous souhaitez coller les valeurs de la colonne. Par exemple, cliquez sur Feuil3!A1. Saisissez ensuite la formule suivante :
=INDEX(Sheet1!$A1:$E1,MATCH(Sheet2!$A$1,Sheet1!$A$1:$E$1,0))Appuyez sur Entréepour appliquer la formule, puis faites glisser la poignée de recopie vers le bas aussi loin que nécessaire (généralement jusqu’aux lignes correspondant à la Plage de données dans)Feuil1). Vous remarquerez que des zéros peuvent apparaître là où la plage de données se termine.
2. Supprimez ou filtrez, si nécessaire, les cellules contenant zéro afin d’assainir votre colonne extraite.

Code VBA – Copier automatiquement une colonne vers une autre feuille en fonction de la valeur d’une cellule
Si vous effectuez fréquemment cette tâche d’extraction de colonne ou si vous préférez une solution ne nécessitant ni la configuration de formules ni d’opérations manuelles à chaque modification de la date cible, optez pour une macro VBA simple. Ce script identifiera automatiquement, dans Feuil1, la colonne dont l’en-tête correspond à la date située en Feuil2!A1, puis copiera l’intégralité de cette colonne directement vers Feuil3. Une solution idéale pour automatiser des flux de travail répétitifs ou gérer des structures de données dynamiques !
Mises en garde : Assurez-vous toujours d’avoir enregistré votre travail avant d’exécuter des macros. Elles ne peuvent pas être annulées, et des références incorrectes risquent de copier des données vers des emplacements non souhaités.
1. Appuyez sur Alt + F11 pour ouvrir l’éditeur Visual Basic pour Applications. Dans la fenêtre VBA, cliquez sur Insertion > Module, puis collez le code suivant dans le module vierge :
Sub CopyColumnByDate()
Dim wsSource As Worksheet
Dim wsDest As Worksheet
Dim lookupSheet As Worksheet
Dim matchDate As Variant
Dim lastRow As Long
Dim colNum As Long
Dim headerRange As Range
Dim cell As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set wsSource = Worksheets("Sheet1")
Set wsDest = Worksheets("Sheet3")
Set lookupSheet = Worksheets("Sheet2")
matchDate = lookupSheet.Range("A1").Value
Set headerRange = wsSource.Range(wsSource.Cells(1, 1), wsSource.Cells(1, wsSource.Cells(1, wsSource.Columns.Count).End(xlToLeft).Column))
colNum = 0
For Each cell In headerRange
If cell.Value = matchDate Then
colNum = cell.Column
Exit For
End If
Next cell
If colNum > 0 Then
lastRow = wsSource.Cells(wsSource.Rows.Count, colNum).End(xlUp).Row
wsDest.Range("A1").Resize(lastRow, 1).Value = wsSource.Range(wsSource.Cells(1, colNum), wsSource.Cells(lastRow, colNum)).Value
MsgBox "Data copied to Sheet3 column A!", vbInformation, "KutoolsforExcel"
Else
MsgBox "No matching header found.", vbExclamation, "KutoolsforExcel"
End If
End Sub 2. Fermez l’éditeur VBA. Dans Excel, appuyez sur Alt + F8, sélectionnez CopierColonneParDate, puis cliquez sur Exécuter. Vos données issues de la colonne correspondant à la date dans Feuil1 seront copiées dans la colonne A de Feuil3.
Astuce : Si vos en-têtes commencent à une ligne autre que la ligne 1, ajustez les références de ligne dans le code. Si vous souhaitez que les données soient collées à partir d’une autre colonne, modifiez Plage("A1") en conséquence. Et si vous utilisez souvent cette macro, pensez à l’associer à un bouton pour un accès encore plus rapide !
Erreurs possibles : Si vous recevez le message « Aucun en-tête correspondant trouvé », vérifiez que la date située en Feuil2!A1 correspond exactement au format de date utilisé dans la ligne d’en-tête de Feuil1.
Autres méthodes intégrées d’Excel – Utiliser le filtre pour isoler et copier une colonne
La fonctionnalité intégrée d’Filtre d’Excel peut également vous aider à isoler et copier une colonne lorsque vous préférez ne pas utiliser de formules ni de macros. Cette méthode manuelle est idéale pour les tâches ponctuelles ou pour les utilisateurs peu à l’aise avec les fonctions avancées ou les scripts.
1. Accédez à la Feuil1 et sélectionnez la ligne d’en-tête (par exemple, la ligne 1). Cliquez sur Données > Filtrer pour ajouter des listes déroulantes à chaque en-tête.
2. Cliquez sur la flèche de la liste déroulante du filtre dans la ligne d’en-tête et désélectionnez toutes les colonnes, sauf celle dont la date correspond à Feuil2!A1. S’il y a de nombreuses dates, utilisez la zone de recherche dans le menu du filtre pour localiser rapidement la valeur souhaitée.
3. Sélectionnez la colonne visible située sous l’en-tête correspondant, puis appuyez sur Ctrl + C pour copier.
4. Accédez à Feuil3 et cliquez dans la cellule de départ de votre choix (par exemple, A1), puis appuyez sur Ctrl + V pour coller.
Remarques : La méthode par filtre est entièrement manuelle et ne se met pas à jour automatiquement si la date change en Feuil2!A1. Cette approche convient parfaitement aux extractions de données ponctuelles et aux vérifications rapides lorsque l’automatisation n’est pas nécessaire.
Avantages : Aucune formule ni codage requis ; une solution simple pour des tâches visuelles et rapides.
Inconvénients : Fastidieuse si répétée fréquemment ; sujette aux erreurs si la sélection des colonnes n’est pas effectuée avec soin.

Libérez la magie d’Excel avec Kutools IA
- Exécution intelligente : effectuez des opérations sur les cellules, analysez des données et créez des graphiques, le tout à partir de commandes simples.
- formules personnalisées : créez des formules sur mesure pour rationaliser vos flux de travail.
- Programmation VBA : Écrivez et implémentez du code VBA en toute simplicité.
- Interprétation de formules : Décryptez facilement les formules complexes.
- Traduction de texte : Franchissez les barrières linguistiques directement depuis vos feuilles de calcul.
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