Extraction date ancienne et recente
Résolu
frenzy7
Messages postés
64
Statut
Membre
-
frenzy7 -
frenzy7 -
Bonjour,
Dans un paragraphe sur excel, je souhaite extraire 2 dates : la date plus ancienne pour la mettre dans une cellule
ET la date la plus récente pour la mettre dans une autre cellule.
Exp: 01/01/2018 dzeezfe, rrvtrvtrvo 15/01/2018 dakd 30/01/2018 ezfk 20/01/2018
Dans cet exp, je souhaite extraire "01/01/2018" et "30/01/2018"
Je vous remercie d'avance.
Dans un paragraphe sur excel, je souhaite extraire 2 dates : la date plus ancienne pour la mettre dans une cellule
ET la date la plus récente pour la mettre dans une autre cellule.
Exp: 01/01/2018 dzeezfe, rrvtrvtrvo 15/01/2018 dakd 30/01/2018 ezfk 20/01/2018
Dans cet exp, je souhaite extraire "01/01/2018" et "30/01/2018"
Je vous remercie d'avance.
A voir également:
- Extraction date ancienne et recente
- Splitcam ancienne version - Télécharger - Messagerie
- Whatsapp date incorrecte ✓ - Forum Mobile
- Jm date avis - Forum Consommation & Internet
- Airpods 3 date de sortie - Guide
- Jm date désabonnement ✓ - Forum Consommation & Internet
3 réponses
Bonjour
Par des fonctions personnalisées
A coller dans un module (ALT+F11 pour ouvrie editeur VBA - Insertion - module - Copier coller les macro)
Syntaxe à utiliser dans la feuille : premieredate(A1) ou dernieredate(A1)
Cdlmnt
Via
Par des fonctions personnalisées
Function premieredate(plage As Range)
tablo = Split(plage, " ")
butoir = CDate("01/01/2025")
For n = 0 To UBound(tablo)
If IsDate(tablo(n)) Then If CDate(tablo(n)) < butoir Then butoir = CDate(tablo(n))
Next
premieredate = butoir
End Function
Function dernieredate(plage As Range)
tablo = Split(plage, " ")
butoir = CDate("01/01/2000")
For n = 0 To UBound(tablo)
If IsDate(tablo(n)) Then If CDate(tablo(n)) > butoir Then butoir = CDate(tablo(n))
Next
dernieredate = butoir
End Function
A coller dans un module (ALT+F11 pour ouvrie editeur VBA - Insertion - module - Copier coller les macro)
Syntaxe à utiliser dans la feuille : premieredate(A1) ou dernieredate(A1)
Cdlmnt
Via
Re,
Pour pouvoir gérer une seule date en dernière date il faut remplacer la macro que je t'avais fournie par celle là
Par contre par formule je ne pense pas que ce soit possible du moins avec une seule formule sinon il faudrait décomposer la chaine sur plusieurs colonnes autant de fois qu'il y a des dates puis dans une autre colonne comparer ces résultat, c'est fastidieux et bien moins ergonomique que la fonction personnalisée ci-dessus
Pour pouvoir gérer une seule date en dernière date il faut remplacer la macro que je t'avais fournie par celle là
Function dernieredate(plage As Range)
tablo = Split(plage, " ")
butoir = CDate("01/01/2000")
datemini = CDate("01/01/2025")
For n = 0 To UBound(tablo)
If IsDate(tablo(n)) Then
If CDate(tablo(n)) < datemini Then datemini = CDate(tablo(n))
If CDate(tablo(n)) > butoir Then butoir = CDate(tablo(n))
End If
Next
If butoir = datemini Then butoir = butoir + 1
dernieredate = butoir
End Function
Par contre par formule je ne pense pas que ce soit possible du moins avec une seule formule sinon il faudrait décomposer la chaine sur plusieurs colonnes autant de fois qu'il y a des dates puis dans une autre colonne comparer ces résultat, c'est fastidieux et bien moins ergonomique que la fonction personnalisée ci-dessus
Merci cette macro est fonctionnelle merci infiniment :)
Par contre j'aimerais légèrement la modifier. Lorsqu'il n'y a qu'une seule date j'aimerais qu'en dernieredate(A1) la cellule affiche premieredate(A1)+1 (le jour juste après)
Je ne suis pas doué en macro je ne sais pas où insérer la modif ds la macro.
Merci pr votre aide.