[VBA] Prendre la date la plus récente
Résolu
MoYoX
Messages postés
127
Date d'inscription
Statut
Membre
Dernière intervention
-
michel_m Messages postés 16602 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 16602 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour tout le monde,
Je suis confronté à un petit problème en VBA ...
En effet, dans mon code, je vérifie, dans un dossier unique, la présence de fichiers.
Avec une For Each, j'ai tout une portion de code qui s'éxécute à chaque fichier présent.
Donc à partir de là j'peux récupérer le chemin, la date, le nom etc ... donc j'arrive à récupérer la date de création de chaque fichier à chaque passage dans la boucle via une FileDateTime, je découpe, toujours à chaque passage dans la boucle, le mois, l'année, le jour ... mais je n'arrive pas à garder la date la plus récente.
J'avais essayé un truc du genre:
Si, à chaque passage dans la boucle, la date est supérieure à celle du passage d'avant, on la garde dans une variable.
J'comptais comparer l'année, puis le mois, puis le jour dans un if dans un if dans un if !
En gros.
Mais je n'y arrive pas ... je ne sais pas pourquoi il me garde une seule date, mais pas la plus récente.
Voilà à quoi ressemble le début de ma boucle:
(oui c'est pour vérifier des messages vocaux provenant du PABX en .wav)
Et c'est là que je bloque.
Si quelqu'un avait une idée, ou un algo qui va bien ... je lui en serait très reconnaissant !
Merci d'avance !
Je suis confronté à un petit problème en VBA ...
En effet, dans mon code, je vérifie, dans un dossier unique, la présence de fichiers.
Avec une For Each, j'ai tout une portion de code qui s'éxécute à chaque fichier présent.
Donc à partir de là j'peux récupérer le chemin, la date, le nom etc ... donc j'arrive à récupérer la date de création de chaque fichier à chaque passage dans la boucle via une FileDateTime, je découpe, toujours à chaque passage dans la boucle, le mois, l'année, le jour ... mais je n'arrive pas à garder la date la plus récente.
J'avais essayé un truc du genre:
Si, à chaque passage dans la boucle, la date est supérieure à celle du passage d'avant, on la garde dans une variable.
J'comptais comparer l'année, puis le mois, puis le jour dans un if dans un if dans un if !
En gros.
Mais je n'y arrive pas ... je ne sais pas pourquoi il me garde une seule date, mais pas la plus récente.
Voilà à quoi ressemble le début de ma boucle:
For Each objFichier In objDossier.Files If (InStr(1, objFichier.Name, ".wav", 1) > 0) Then If (Mid(objFichier.Name, 1, 1) = "~") Then GoTo label finPhrase = "" finPhrase = " message vocal." dateComplete = Left(FileDateTime(objFichier.Path), 10) anneeTemp = Right(dateComplete, 4) moisTemp = Mid(dateComplete, 4, 2) jourTemp = Left(dateComplete, 2) ...
(oui c'est pour vérifier des messages vocaux provenant du PABX en .wav)
Et c'est là que je bloque.
Si quelqu'un avait une idée, ou un algo qui va bien ... je lui en serait très reconnaissant !
Merci d'avance !
A voir également:
- [VBA] Prendre la date la plus récente
- Prendre photo avec webcam - Guide
- Prendre une photo avec son mac - Guide
- Prendre un instantané pdf ✓ - Forum PDF
- Whatsapp la date est incorrecte - Forum LG
- Cette photo n’a pas été prise cette année. trouvez la date, l'heure et avec quel modèle d'appareil photo elle a été prise. ✓ - Forum Graphisme