Récupération date la plus ancienne entre plusieurs champs


Le code qui suit permet d'effectuer une comparaison entre plusieurs champs date et de retourner la date la plus ancienne.

L'argument "LesDates()" est une variable tableaux dans laquelle figureront toutes les dates à comparer.

Function RecupDateAncienne(ParamArray LesDates() As Variant) As Date

Dim intDate As Integer
Dim MaxDate As Date

For intDate = 0 To UBound(LesDates())
    If Nz(LesDates(intDate), 0) <> 0 _
        And (LesDates(intDate) < MaxDate Or MaxDate = 0) _
        Then MaxDate = LesDates(intDate)
Next

RecupDateAncienne = MaxDate

End Function

Cette fonction pourra être utiliser directement dans du code ou alors elle pourra être appelée dans une requête de la façon suivante :

SELECT Champ1, RecupDateAncienne([Date1], [Date2], [Date3]) AS DateAncienne
FROM LaTable;

 

Retour haut de page

Auteur : Jessy SEMPERE