date texte, date nombre

Le
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
Vos réponses
Trier par : date / pertinence
Daniel
Le #1960129
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" 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



denis P
Le #1960122
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" 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" 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







Publicité
Poster une réponse
Anonyme