DateValue et CDate

Bonjour,

Avez-vous des exemples simples d'utilisation obligatoire des deux instructions inscrites en titre ?

Dans la macro ci-dessous par exemple, il me semble que ça ne change strictement rien.

Sub Essai()
    aa = [b2]
     bb = DateValue([b2])
    cc = CDate([b2])
End Sub

Cordialement.

44demo-28-01.zip (10.70 Ko)

Salut Laceline, merci pour ta réponse.

J'ai appris sur le fil proposé que

DateValue(Now) renvoie un truc du genre #28.01.2018#

TimeValue(Now) renvoie quelque chose comme #16:08:38#

CDate(Now) renvoie le tout, par exemple #28.01.2018 16:08:38#

J'y ai également appris que

DateValue n'accepte que des textes comme paramètres alors que CDate accepte comme paramètres des textes ou des chiffres.

Mais je n'ai toujours pas d'exemple simples de cas où l'on doit absolument utiliser l'une ou l'autre de ces instructions.

Amicalement.

Bonjour,

par exemple avec le texte suivant '22 14 60 en cellule A3

DateValue génère un erreur

CDate retourne la date 2506-05-02 c'est à dire équivalent au nombre 221460 au format date

Sub Essai()
On Error Resume Next
Debug.Print [A3]
Debug.Print DateValue([A3])
Debug.Print CDate([A3])
End Sub

Bonjour Isabelle,

Merci beaucoup pour ta réponse.

Je reste quand même un peu sur ma faim, car j'espérais recevoir des exemples - pour chacune des deux instructions - qui seraient tirés de situation un peu plus courantes.

Donc je serais toujours intéressé à recevoir un complément de réponse de part ou d'autre.

Chaleureusement.

Bonjour,

Je dirais que si j'ai une cellule comprenant la date et l'heure de début, puis une autre cellule contenant la date et l'heure de fin, si je veux calculer le temps, je ne peux utiliser DateValue qui va tronquer le temps.

Salut jpbt84 et merci beaucoup pour ton exemple de ce que l'on ne peut pas faire.

Si quelqu'un avait deux exemples de situations où l'on est obligé d'utilisé soit l'une, soit l'autre de ces instructions, j'en serais ravi.

A vous relire.

Bonjour,

les cas les plus courant sont une colonne de dates importées ou copiées-collées du net qui sont en texte, ou bien une date issue d'un textbox.

Tu es obligé de les convertir en dates numériques avec l'une ou l'autre fonction, voire même une fonction personnalisée si besoin, pour pouvoir travailler avec.

eric

Edit : et pour vba Cdate() te permet d'éviter de transformer le 04/01 en poisson d'avril

Merci beaucoup Eric pour ces précisions et encore une fois merci à tous ceux et celles qui ont participé au sujet

Rechercher des sujets similaires à "datevalue cdate"