Date au format jjmmaaa (sans séparateur)
Résolu
areskip
Messages postés
2
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 -
3 réponses
Bonjour,
voici une possibilité :
La variable jjmmaaaa contient la fameuse date. Il faut penser qu'en vba c'est un format anglais et donc les jours et les mois sont inversés.
Peut-être qu'avec l'instruction Format() il y a d'autres possibilités
voici une possibilité :
date_valide = CDate(Mid(jjmmaaaa, 3, 2) & "/" & Mid(jjmmaaaa, 1, 2) & "/" & Mid(jjmmaaaa, 5, 4))
La variable jjmmaaaa contient la fameuse date. Il faut penser qu'en vba c'est un format anglais et donc les jours et les mois sont inversés.
Peut-être qu'avec l'instruction Format() il y a d'autres possibilités
Merci pilas31 !
J'ai du adapter car le zéro des jours ne s'affiche pas (1 et pas 01).
Ça donne ça :
size = Len(Cells(i, j))
If size = 8 Then date_valide = CDate(Left(Cells(i, j), 2) & "/" & Mid(Cells(i, j), 3, 2) & "/" & Right(Cells(i, j), 4))
If size = 7 Then date_valide = CDate(Left(Cells(i, j), 1) & "/" & Mid(Cells(i, j), 2, 2) & "/" & Right(Cells(i, j), 4))
Mais il y a peut être plus simple en affichant le premier zéro...
J'ai du adapter car le zéro des jours ne s'affiche pas (1 et pas 01).
Ça donne ça :
size = Len(Cells(i, j))
If size = 8 Then date_valide = CDate(Left(Cells(i, j), 2) & "/" & Mid(Cells(i, j), 3, 2) & "/" & Right(Cells(i, j), 4))
If size = 7 Then date_valide = CDate(Left(Cells(i, j), 1) & "/" & Mid(Cells(i, j), 2, 2) & "/" & Right(Cells(i, j), 4))
Mais il y a peut être plus simple en affichant le premier zéro...