Chercher une date dans un classeur

Comment faire pour chercher une date dans un classeur ?

Pour retrouver une date avec la méthode Find, c'est un peu tarabiscoté. Find ne trouve les dates que si elles sont au format standard. Il faut donc sélectionner la plage qui les contient, "mémoriser" leur format actuel, les passer au format standard, faire la recherche puis restituer le format mémorisé. Un exemple pour t'aider à démarrer (il n'y a aucun test d'erreur) :

sub ChercherDate()
Dim Resultat As Range, FormatDates$, ATrouver As Long

'la date à trouver (Value2 donne la date au format standard)
ATrouver = Range("A4").Value2
'la plage de recherche (les cellules occupées sur une ligne 5)
Range("A5", Cells(5, Range("IV5").End(xlToLeft).Column)).Select
'format actuel des dates sélectionnées
FormatDates = Selection.NumberFormatLocal
'passage au format standard
Selection.NumberFormat = "General"
'recherche
Set Resultat = Selection.Find(ATrouver)
'remise au format de dates
Selection.NumberFormatLocal = FormatDates
'résultat de la recherche
Resultat.Select

end sub

Astuce illustrée par ces exemples
dm-findmatchdate
av-trouvedatejour

Auteur(s) : 

Ce mois-ci sur Excelabo

- Pas de nouvelle page.
- 8 pages modifiées.