[VBA] Trouver dans une liste la date la plus récente

Bonjour le forum et merci pour votre future aide,

Mon problème est le suivant : je souhaite trouver parmi une liste de date celle étant la plus récente. J'ai donc commencé à confectionner mon code qui FONCTIONNAIT sur le fichier test mais qui ne fonctionne PAS dans mon fichier final...

Dans le fichier joint vous verrez deux colonnes de dates :

  • La colonne A : dates provenant de mon fichier final (j'ai fait un copier/coller)
  • La colonne D : dates insérées manuellement.

Vous verrez que la formule trouve la date la plus récente pour la Colonne D mais pas pour la Colonne A.... Alors que les formats sont exactement les mêmes...

Je n'arrive pas a comprendre le fait que le code ne fonctionne que pour les dates de la colonne D alors que tout semble êtres pareil...

Pourriez vous, s'il vous plait, m'aider à faire fonctionner le code pour la colonne A ?

Merci beaucoup !

350trouver-max.xlsm (17.86 Ko)

Bonjour,

Les cellules de la colonne A sont formatées en texte

Cdlt


Bonjour,

Les cellules de la colonne A sont formatées en texte

Cdlt

Bonjour Jean-Éric,

Merci pour votre réponse !

Comment les formater correctement en date dans ce cas ? :s


Rebonjour,

Il semble que la fonction CDate règle mon problème....

Merci à vous

Sub Max_colonneA()
Set plage = Range("A2:A9")
    For Each c In plage
        c.Value = CDate(c)
    Next c
    a = Application.WorksheetFunction.Max(plage)

        For J = 2 To 9
            If Range("A" & J) = a Then Range("B" & J) = "MAX"
        Next J
End Sub

Quand tu importes tes données dans ton classeur celles ci sont considérées comme des chaines

Là je lui fait convertir les chaines en date (CDate) (attetion parfois il peut arriver que la conversion se fasse dans le format anglais)

Rechercher des sujets similaires à "vba trouver liste date recente"