Accéder au contenu principal

Comment extraire tous les enregistrements entre deux dates dans Excel ?

Author: Sun Last Modified: 2025-07-21

Lorsque vous travaillez avec de grandes quantités de données horodatées dans Excel, vous devez souvent extraire ou filtrer tous les enregistrements qui se situent entre deux dates spécifiques. Par exemple, vous pourriez vouloir analyser des transactions dans une période de facturation, examiner la présence pour un mois particulier, ou simplement étudier les entrées enregistrées dans une plage de dates personnalisée. Rechercher et copier manuellement chaque ligne pertinente peut être à la fois fastidieux et sujet aux erreurs, surtout lorsque le volume de vos données augmente. Extraire efficacement tous les enregistrements entre deux dates données vous fait non seulement gagner beaucoup de temps et d'efforts, mais réduit également le risque de manquer des entrées importantes ou d'introduire des erreurs lors de la manipulation des données.

A screenshot of data range in Excel for extracting records between two dates Arrow right A screenshot showing extracted records between two dates in Excel

Ci-dessous, vous trouverez plusieurs méthodes pratiques pour extraire tous les enregistrements entre deux dates dans Excel. Chaque approche présente ses propres scénarios d'application et avantages, de l'extraction basée sur des formules (aucun add-in requis), à l'utilisation de Kutools pour Excel pour plus de commodité, en passant par du code VBA et le filtre intégré d'Excel — offrant ainsi des solutions flexibles adaptées à différents besoins et préférences des utilisateurs.

Extraire tous les enregistrements entre deux dates avec des formules

Extraire tous les enregistrements entre deux dates avec Kutools pour Excel good idea3

Utiliser VBA pour extraire les enregistrements entre deux dates

Utiliser le filtre Excel pour extraire les enregistrements entre deux dates


Extraire tous les enregistrements entre deux dates avec des formules

Pour extraire tous les enregistrements entre deux dates dans Excel en utilisant des formules, vous pouvez suivre ces étapes. Cette solution est particulièrement utile lorsque vous souhaitez une mise à jour dynamique : chaque fois que le jeu de données original ou les conditions de date changent, les résultats sont automatiquement mis à jour. Cependant, si vous n'êtes pas très familier avec les formules matricielles, la configuration initiale peut sembler un peu complexe. Si votre jeu de données est très volumineux, cette méthode peut entraîner une performance de calcul plus lente.

1. Préparez une nouvelle feuille de calcul, par exemple Feuil2, où vous spécifierez les limites de date et afficherez les enregistrements extraits. Entrez la date de début et la date de fin souhaitées respectivement dans les cellules A2 et B2. Pour plus de clarté, vous pouvez ajouter des en-têtes dans A1 et B1 (comme "Date de début" et "Date de fin").
A screenshot of the start and end date input cells in Excel

2. Dans la cellule C2 de Feuil2, entrez la formule suivante pour compter combien de lignes dans Feuil1 ont des dates qui se situent dans la plage spécifiée :

=SUMPRODUCT((Sheet1!$A$2:$A$22>=A2)*(Sheet1!$A$2:$A$22<=B2))

Après avoir entré la formule, appuyez sur Entrée. Cela vous aide à comprendre combien d'entrées correspondent à votre condition de filtre, ce qui permet de savoir combien de résultats attendre.
A screenshot of the formula used to count matching rows between two dates

Remarque : Dans cette formule, Feuil1 fait référence à votre feuille de données originale ; $A$2:$A$22 est la colonne de date dans vos données. Ajustez ces références au besoin pour vos données. A2 et B2 sont vos cellules de date de début et de fin.

3. Pour afficher les enregistrements correspondants, sélectionnez une cellule vide où vous souhaitez que la liste extraite commence (par exemple, dans Feuil2, cellule A5). Entrez la formule matricielle suivante :

=IF(ROWS(A$5:A5)>$C$2,"",INDEX(Sheet1!A$2:A$22,SMALL(IF((Sheet1!$A$2:$A$22>=$A$2)*(Sheet1!$A$2:$A$22<=$B$2),ROW(Sheet1!A$2:A$22)-ROW(Sheet1!$A$2)+1),ROWS(A$5:A5))))

Après avoir tapé la formule, appuyez sur Ctrl + Majuscule + Entrée (au lieu de simplement Entrée) pour qu'elle fonctionne comme une formule matricielle. Ensuite, utilisez la poignée de recopie pour la faire glisser vers la droite sur autant de colonnes que nécessaire, puis vers le bas jusqu'à ce que toutes les lignes correspondantes soient affichées. Continuez à faire glisser jusqu'à ce que vous voyiez des cellules vides, ce qui signifie que toutes les données correspondantes ont été extraites.
A screenshot showing the extracted data using formulas

Conseils :

  • Si vous obtenez des zéros, cela signifie qu'il n'y a plus d'enregistrements correspondants à renvoyer. Arrêtez simplement de faire glisser plus loin.
  • La partie INDEX(...) de la formule peut être adaptée pour extraire d'autres colonnes. Modifiez la colonne référencée dans la partie Feuil1!A$2:A$22 si vous souhaitez retourner d'autres champs.
  • Cette formule peut être étendue pour fonctionner avec plusieurs critères ou pour extraire des lignes entières (en répétant la formule dans chaque colonne).

4. Certains résultats de date peuvent apparaître sous forme de nombres à 5 chiffres (numéros de série de date Excel). Pour les convertir en format de date lisible, sélectionnez les cellules correspondantes, allez dans l'onglet Accueil , ouvrez le menu déroulant de mise en forme, et choisissez Date courte. Cela rendra les données extraites plus claires et plus utilisables.
A screenshot of formatted dates

Précautions :

  • Assurez-vous que toutes les entrées de date dans vos données originales sont vraiment au format date, et non stockées sous forme de texte. Sinon, la formule pourrait ne pas fonctionner comme prévu.
  • Ajustez les plages de tableau si la taille de vos données change.
  • Si vous voyez des erreurs #NOMBRE! ou #N/A, vérifiez les dates d'entrée vides ou les incohérences dans vos données sources.

Extraire tous les enregistrements entre deux dates avec Kutools pour Excel

Si vous préférez une solution plus simplifiée et interactive, la fonction Sélectionner des cellules spécifiques dans Kutools pour Excel peut vous aider à extraire des lignes entières correspondant à votre plage de dates en quelques clics, minimisant ainsi le besoin de formules ou de configurations manuelles. C'est particulièrement adapté aux utilisateurs qui gèrent souvent des tâches de filtrage complexes ou effectuent des opérations par lots sur de grands jeux de données, car cela réduit les chances d'erreurs de formule et accélère le flux de travail.

Kutools pour Excel,doté d'IA 🤖, offre plus de 300 fonctionnalités pratiques pour simplifier vos tâches.

Après avoir installé Kutools pour Excel, veuillez suivre les étapes ci-dessous : (Téléchargement gratuit de Kutools pour Excel maintenant!)

1. Tout d'abord, sélectionnez la plage de votre jeu de données que vous souhaitez analyser et extraire. Ensuite, cliquez sur Kutools > Sélectionner > Sélectionner des cellules spécifiques dans le ruban Excel. Cela ouvre une fenêtre de dialogue pour une sélection avancée.
A screenshot showing Kutools Select Specific Cells feature

2. Dans la boîte de dialogue Sélectionner des cellules spécifiques :

  • Cochez l'option "Ligne entière" pour sélectionner des lignes complètes correspondantes.
  • Définissez la condition de filtrage : choisissez Supérieur à et Inférieur à dans les listes déroulantes pour votre colonne de date.
  • Entrez manuellement vos dates de début et de fin dans les zones de texte (assurez-vous que le format correspond à vos données).
  • Assurez-vous que la logique “Et” est choisie afin que les deux conditions s'appliquent simultanément.
Voir la capture d'écran :
A screenshot of the Select Specific Cells dialog with greater than and less than options

3. Cliquez sur OK. Kutools sélectionnera instantanément toutes les lignes dont la colonne de date se situe dans votre plage spécifiée. Ensuite, appuyez sur Ctrl + C pour copier les lignes sélectionnées, allez dans une feuille vierge ou un nouvel emplacement, et appuyez sur Ctrl + V pour coller les résultats extraits.
A screenshot showing extracted rows after using Kutools to select and copy records between two dates

Conseils et précautions :

  • L'approche Kutools ne nécessite pas de modifier vos données originales ni d'écrire des formules.
  • Si vous avez des incohérences de format de date, prévisualisez les résultats de sélection avant de copier.
  • Utilisez cette fonctionnalité pour des travaux de filtrage répétés ou par lots — répétez rapidement les étapes pour différentes plages de dates.
  • Si votre version de Kutools ne montre pas une fonctionnalité comme décrit, mettez-la à jour vers la dernière version pour une meilleure compatibilité.

Analyse de scénario : Cette méthode est idéale pour les utilisateurs gérant des listes avec de nombreuses colonnes ou ceux qui doivent extraire régulièrement des enregistrements complets basés sur des limites de date changeantes.


Code VBA - Utilisez une macro pour filtrer et extraire automatiquement toutes les lignes entre deux dates spécifiées

Si votre flux de travail inclut souvent l'extraction de données entre deux dates et que vous souhaitez automatiser complètement le processus, utiliser une macro VBA peut être un choix judicieux. Avec VBA, vous pouvez inviter les utilisateurs à sélectionner la colonne de date, entrer les dates de début et de fin, et filtrer et copier automatiquement les lignes correspondantes dans une nouvelle feuille. Cette approche économise des efforts manuels et réduit les erreurs, mais nécessite d'activer les macros et une certaine familiarité avec l'éditeur Visual Basic.

Voici comment configurer une telle macro :

1. Cliquez sur Développeur > Visual Basic pour ouvrir l'éditeur VBA. Dans la nouvelle fenêtre Microsoft Visual Basic for Applications, cliquez sur Insérer > Module, puis copiez et collez le code suivant dans le Module :

Sub ExtractRowsBetweenDates_Final()
'Updated by Extendoffice
    Dim wsSrc As Worksheet
    Dim wsDest As Worksheet
    Dim rngTable As Range
    Dim colDate As Range
    Dim StartDate As Date
    Dim EndDate As Date
    Dim i As Long
    Dim destRow As Long
    Dim dateColIndex As Long
    Dim cellDate As Variant

    Set wsSrc = ActiveSheet
    Set rngTable = Application.InputBox("Select the data table (including headers):", "KutoolsforExcel", Type:=8)
    If rngTable Is Nothing Then Exit Sub

    Set colDate = Application.InputBox("Select the date column (including header):", "KutoolsforExcel", Type:=8)
    If colDate Is Nothing Then Exit Sub

    On Error GoTo DateError
    StartDate = CDate(Application.InputBox("Enter the start date (yyyy-mm-dd):", "KutoolsforExcel", "", Type:=2))
    EndDate = CDate(Application.InputBox("Enter the end date (yyyy-mm-dd):", "KutoolsforExcel", "", Type:=2))
    On Error GoTo 0

    On Error Resume Next
    Set wsDest = Worksheets("FilteredRecords")
    On Error GoTo 0
    If wsDest Is Nothing Then
        Set wsDest = Worksheets.Add
        wsDest.Name = "FilteredRecords"
        
        rngTable.Rows(1).Copy
        wsDest.Cells(1, 1).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
        wsDest.Cells(1, 1).PasteSpecial Paste:=xlPasteFormats
    End If

    destRow = wsDest.Cells(wsDest.Rows.Count, 1).End(xlUp).Row + 1
    dateColIndex = colDate.Column - rngTable.Columns(1).Column + 1

    For i = 2 To rngTable.Rows.Count
        cellDate = rngTable.Cells(i, dateColIndex).Value
        If IsDate(cellDate) Then
            If cellDate >= StartDate And cellDate <= EndDate Then
                rngTable.Rows(i).Copy
                wsDest.Cells(destRow, 1).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
                wsDest.Cells(destRow, 1).PasteSpecial Paste:=xlPasteFormats
                destRow = destRow + 1
            End If
        End If
    Next i

    Application.CutCopyMode = False
    wsDest.Columns.AutoFit
    MsgBox "Filtered results have been added to '" & wsDest.Name & "'.", vbInformation
    Exit Sub

DateError:
    MsgBox "Invalid date format. Please enter dates as yyyy-mm-dd.", vbExclamation
End Sub

2. Pour exécuter la macro, cliquez sur le bouton Run button (Exécuter) ou appuyez sur F5.

Ensuite, suivez les invites pour terminer les étapes :

  1. Sélectionnez le tableau de données (y compris les en-têtes)
    Lorsque la première boîte de dialogue apparaît, sélectionnez l'intégralité du tableau, y compris la ligne d'en-tête. Cliquez sur OK.
  2. Sélectionnez la colonne de date (y compris l'en-tête)
    Lorsque la deuxième boîte de dialogue apparaît, sélectionnez uniquement la colonne de date, y compris l'en-tête. Cliquez sur OK.
  3. Entrez les dates de début et de fin
    Vous serez invité à entrer la date de début (format : aaaa-mm-jj, par exemple, 2025-06-01)
    Puis entrez la date de fin (par exemple, 2025-06-30)
    Cliquez sur OK après chaque.

Une feuille de calcul nommée FilteredRecords sera créée automatiquement (si elle n'existe pas déjà). Les lignes correspondantes (où la date se situe entre les dates de début et de fin) seront copiées dans cette feuille. Et chaque fois que vous exécutez la macro, de nouvelles lignes correspondantes seront ajoutées sous les résultats existants.

Dépannage :

  • Si rien ne se passe après exécution, vérifiez vos plages sélectionnées — des plages invalides ou des dialogues annulés feront sortir la macro.
  • Assurez-vous que les entrées de votre colonne de date sont de véritables dates Excel ; si elles sont stockées sous forme de texte, convertissez-les d'abord pour un filtrage précis.

Analyse de scénario : Cette solution VBA est particulièrement précieuse pour les tâches répétitives, les workflows avancés, ou lors du partage d'une solution semi-automatisée avec des utilisateurs non techniques — attribuez simplement un bouton pour une utilisation encore plus facile.


Autres méthodes intégrées d'Excel - Utilisez la fonction Filtre intégrée d'Excel

Pour les utilisateurs qui préfèrent une approche simple et interactive sans écrire de formules ou de code, la fonction Filtre intégrée d'Excel offre un moyen rapide de visualiser et d'extraire des lignes entre deux dates. C'est idéal pour les tâches occasionnelles, des vérifications visuelles, ou lorsque vous devez travailler directement avec l'interface de la feuille de calcul. Cependant, elle ne fournit pas de mises à jour automatiques si vos critères de date ou vos données changent — vous devez répéter les étapes pour chaque nouvelle session de filtrage.

Voici comment l'utiliser :

  • Sélectionnez votre plage de données, en vous assurant que les en-têtes de colonne sont inclus.
  • Allez dans l'onglet Données dans le ruban, puis cliquez sur Filtre. De petites flèches déroulantes apparaîtront à côté de chaque en-tête.
  • Cliquez sur la flèche pour votre colonne de date et choisissez Filtres de date > Entre....
  • Dans la boîte de dialogue, entrez vos dates de début et de fin souhaitées. Assurez-vous que le format correspond au format de date de vos données.
  • Cliquez sur OK. Seules les lignes avec des dates dans votre plage spécifiée resteront visibles.
  • Sélectionnez toutes les lignes visibles, appuyez sur Ctrl + C pour copier, allez dans une zone vide ou une autre feuille, et appuyez sur Ctrl + V pour coller les résultats filtrés.

Conseils et précautions :

  • Cette méthode est idéale pour une inspection visuelle rapide ou une extraction ad hoc.
  • Si votre colonne de date utilise des formats incohérents, corrigez-les au préalable pour vous assurer que le filtre fonctionne correctement.
  • N'oubliez pas de supprimer le filtre lorsque vous avez terminé pour révéler à nouveau l'ensemble des données.
  • Les lignes filtrées sont masquées, pas supprimées — vos données originales restent intactes.

Analyse de scénario : Le filtre intégré d'Excel est le plus adapté aux tables de taille modérée et lorsque vous devez prévisualiser ou copier des sous-ensembles instantanément sans sauvegarder de formules ou de macros.


Dépannage et suggestions de synthèse :

  • Confirmez toujours que vos cellules de date sont formatées de manière cohérente dans toute la feuille de calcul pour que toutes les solutions fonctionnent correctement.
  • Lors de l'utilisation de formules ou de VBA, ajustez les références de colonne et de plage pour correspondre à la structure réelle de votre feuille afin d'éviter des erreurs d'index ou de référence.
  • Pour des performances sur des jeux de données très volumineux, Kutools ou le filtrage intégré offrent généralement des résultats plus rapides et sont moins susceptibles de dépasser les limites de mémoire/calcul de formule par rapport aux formules matricielles extensives.
  • Si vous rencontrez des blancs inattendus ou des enregistrements manquants dans la sortie, revérifiez que vos conditions de date, plages d'entrée et formats de données sont définis comme prévu.

Démo : Extraire tous les enregistrements entre deux dates avec Kutools pour Excel

 
Kutools pour Excel : Plus de 300 outils pratiques à portée de main ! Profitez de fonctionnalités IA définitivement gratuites ! Télécharger maintenant !

Meilleurs outils de productivité pour Office

🤖 Kutools AI Aide : Révolutionner l'analyse des données basée sur : Exécution intelligente   |  Générer du code  |  Créer des formules personnalisées  |  Analyser les données et générer des graphiques  |  Invoquer les Fonctions améliorées
Fonctionnalités populaires : Trouver, mise en évidence ou marquer les doublons   |  Supprimer les lignes vides   |  Consolider les colonnes ou les cellules sans perdre de données   |   Arrondir sans formule ...
Super RECHERCHEV : RECHERCHEV avec critères multiples    RECHERCHEV avec valeurs multiples  |   Recherche multi-feuilles   |   Correspondance floue ....
Liste déroulante avancée : Créer rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante multi-sélection ....
Gestionnaire de colonnes : Ajouter un nombre spécifique de colonnes  |  Déplacer les colonnes  |  Basculer l'état de visibilité des colonnes masquées  |  Comparer les plages & colonnes ...
Fonctionnalités en vedette : Mise au point de la grille   |  Affichage de conception   |   Barre de formule améliorée    Gestionnaire de classeur & feuille de calcul   |  Bibliothèque dAutoTexte (Auto Text)   |  Sélecteur de date   |  Fusionner les données   |  Crypter/Déchiffrer les cellules    Envoyer un e-mail par liste   |  Super Filtre   |   Filtre spécial (filtrer les cellules avec une police en gras/italique/barré...) ...
Top15 ensembles d'outils12 outils de texte (Ajouter du texte, Supprimer des caractères spécifiques, ...)   |   50+ types de graphiques (Diagramme de Gantt, ...)   |   40+ formules pratiques (Calculer lâge en fonction de la date de naissance, ...)   |   19 outils d'insertion (Insérer un code QR, Insérer une image depuis le chemin, ...)   |  12 outils de conversion (Convertir en mots, Conversion de devises, ...)   |  7 outils de fusion & division (Fusion avancée des lignes, Diviser les cellules, ...)   |   ... et plus

Boostez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité sans précédent. Kutools pour Excel propose plus de300 fonctionnalités avancées pour augmenter la 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 facilite grandement votre travail

  • Activez la modification 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é de50 %, et réduit des centaines de clics de souris pour vous chaque jour !