Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

date texte, date nombre

2 réponses
Avatar
Michel Voirain
Bonjour,
J'importe des données dans une base excel. Je souhaite extraire des données
avec des critères dates. Les dates importées sont soit en texte, jj/mm/aaaa
ou jj/mm/aa soit en nombre. Je voudrais uniformisé toutes les dates au
format nombre jj/mm/aaaa par une procedure VB. Donc comment convertir la
date contenue dans une cellule. Je cale la dessus!
Merci à tous les aideurs de cette liste sympa.
Michel Voirain

2 réponses

Avatar
Daniel
Bonjour
Tu peux essayer la macro suivante :
Sub TransformeDateTexteEnDateFormatDate()
Dim c As Range
For Each c In Selection
If Not IsNumeric(c.Value) Then
If Len(c.Value) = 10 Then
c.Value = DateSerial(Right(c.Value, 4), Mid(c.Value, 4, 2),
Left(c.Value, 2))
Else
c.Value = DateSerial(Right(c.Value, 2), Mid(c.Value, 4, 2),
Left(c.Value, 2))
End If
c.Value = Format(c.Value, "dd/mm/yyyy")
End If
Next c
End Sub
Cordialement.
Daniel
"Michel Voirain" a écrit dans le message de
news:
Bonjour,
J'importe des données dans une base excel. Je souhaite extraire des
données avec des critères dates. Les dates importées sont soit en texte,
jj/mm/aaaa ou jj/mm/aa soit en nombre. Je voudrais uniformisé toutes les
dates au format nombre jj/mm/aaaa par une procedure VB. Donc comment
convertir la date contenue dans une cellule. Je cale la dessus!
Merci à tous les aideurs de cette liste sympa.
Michel Voirain



Avatar
denis P
utilise la fonction VBA CDate c'est bien plus simple...
dat = CDate("Toute expression de date valide")

Sub da()
dim taDate
On Error GoTo CaCoince

taDate= CDate(Toute expression de date valide)

Exit Sub

CaCoince:

MsgBox "Ya kekchose qui coince là-dedans" & vbCrLf & _
"J'y retourne immédiatement."

End Sub

denis p.


"Daniel" a écrit dans le message de
news:%23%
Bonjour
Tu peux essayer la macro suivante :
Sub TransformeDateTexteEnDateFormatDate()
Dim c As Range
For Each c In Selection
If Not IsNumeric(c.Value) Then
If Len(c.Value) = 10 Then
c.Value = DateSerial(Right(c.Value, 4), Mid(c.Value, 4,
2),

Left(c.Value, 2))
Else
c.Value = DateSerial(Right(c.Value, 2), Mid(c.Value, 4,
2),

Left(c.Value, 2))
End If
c.Value = Format(c.Value, "dd/mm/yyyy")
End If
Next c
End Sub
Cordialement.
Daniel
"Michel Voirain" a écrit dans le message de
news:
Bonjour,
J'importe des données dans une base excel. Je souhaite extraire des
données avec des critères dates. Les dates importées sont soit en texte,
jj/mm/aaaa ou jj/mm/aa soit en nombre. Je voudrais uniformisé toutes les
dates au format nombre jj/mm/aaaa par une procedure VB. Donc comment
convertir la date contenue dans une cellule. Je cale la dessus!
Merci à tous les aideurs de cette liste sympa.
Michel Voirain