Salut !

J’ai écrit ce code VBA pour filtrer par date. Mais quand j’exécute la macro les dates filtrées ne correspondent pas du tout. J’ai l’impression que le mois et le jour sont inversés dans le fichier à filtrer. Pour exemple la date de début (B1) est le 08/01/24 et la date de fin (B2) est le 12/01/24 mais dans le fichier à filtrer j’obtiens les dates entre 01.08.24 et 01.12.24. Les dates sont dans le même format et bien en format date.
Des idées ?

Code vba : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Sub FiltrerParDate()
    Dim wsSuivi As Worksheet
    Dim startDate As Date, endDate As Date
    Dim currentFilterMode As Boolean
 
    ' Accéder à l'onglet "STABILITY RUNNING" dans le fichier "New Suivi Stability in progress"
    Set wsSuivi = Workbooks("New Suivi Stability in progress.xlsx").Sheets("STABILITY RUNNING")
 
    ' Récupérer les dates de début et de fin de la feuille "code VBA"
    startDate = ThisWorkbook.Sheets("code VBA").Range("B1").Value
    endDate = ThisWorkbook.Sheets("code VBA").Range("B2").Value
 
    ' Si les dates ne sont pas vides et sont valides
    If IsDate(startDate) And IsDate(endDate) Then
        ' Enregistrer l'état actuel des filtres
        currentFilterMode = wsSuivi.AutoFilterMode
 
        ' Réinitialiser les filtres sans les supprimer
        wsSuivi.AutoFilter.ShowAllData
 
        ' Appliquer le filtre à la colonne W
        wsSuivi.Rows("1:" & wsSuivi.Rows.Count).AutoFilter Field:=23, _
            Criteria1:=">=" & startDate, Operator:=xlAnd, Criteria2:="<=" & endDate
    Else
        MsgBox "Format de date incorrect ou dates manquantes."
    End If
End Sub