-
Valeur d'une date en vba
Salut le forum ! :)
Alors sans rentrer dans les details de mon programme, je dispose d'une colonne composée de date sous le format "jj/mm/aaaa hh:mm:ss" (ex : 03/02/2014 10:34:05)
Je dois comparer les dates entre elles et j'ai pour cela introduit la variable maxB que j'ai declaré par la ligne :
"Let maxB = Range("B1").Value"
Je met bien entendu la variable à jour a chaque fois qu une date plus grande est rencontrée.
Je lance donc mon programme, et la le résultat n'est point celui escompté. Apres quelques recherches infructeuses, je decide de renvoyer a chaque etape la valeur de maxB dans ma feuille de calcul pour essayer de voir le probleme et la stupeur, il me renvoie un nombre du genre "41673,457".
Quelqu'un saurait il me dire d ou vient ce probleme ? Est t il possible de faire prendre a ma variable maxB la valeur de la date et pas celle de cet etrange nombre ? Merci d'avance :)
-
Je precise qu'en remplacant les dates par des nombres, le programme marche parfaitement, je pense donc que le probleme vient vraiment de la
-
Bonjour,
Dans Excel, le calcul des dates a pour origine 1 pour le 01/01/1900 (sauf autrement spécifié). Chaque jour vaut 1, donc chaque heure vaut 1/24 etc. Donc, 41673 correspond au 03/02/2014. les décimales correspondent à la fraction du jour, donc, 0,457 correspond à 10:58:05.
-
Bonjour,
DVP possède de nombreux fils et tutos relatifs aux dates, le VBA est d'origine en US et les interprétations des moteurs Excel & VBA suivent une logique US avec tout ce qui en découle dans des pays qui n'ont pas les même formats de base comme chez nous.
Pour être international et faciliter les calculs (sachant qu'en plus les calendriers n’ont pas la même origine en Excel et en VBA) les dates sont représentées sous formes de "Numéros de série" qui sont séquentiels.
Tout est expliqué dans ce tuto relatif aux dates : Comprendre et gérer les dates sous Excel et en VBA ;)
Tu as un focus sur sur sujet similaire ici : http://www.developpez.net/forums/d14...format-date/#5
cordialement,
Didier