Jour et mois inversé

Bonsoir forum,

récemment, on m'a fourni une formule dans VBA pour obtenir la date et l'heure présente à l'intérieur d'une VBA:

Sub Date_Heure()
'
' Date_Heure Macro
'
Cells(1, 1) = Format(Now(), "dd/mm/yyyy h:mm")
'
End Sub

Mais voilà, que le résultat donne pour aujourd'hui: mois = 07 et jour = 12. Bref, le jour et le mois sont inversés dans le résultat. Quelqu'un a une explications?

36forum-7dec2016.xlsm (13.86 Ko)

Merci

Emil

Bonsoir Emil,

j'ai eu le même type de soucis dernièrement, la solution que j'ai trouvé (pour le moment), est de changer le format de "date" en format Américain mm-jj-aa.

Car en faite , si j'ai bien compris, entre excel et le VBA il n'utilise pas le même format et ce...., si tu fait le test , jusqu'au 12 de chaque mois, car pas possible d'être le "12 du 30 2016"

Bonsoir,

Sub Date_Heure()
    With Cells(1, 1)
        .Value = Now
        .NumberFormat = "dd/mm/yyyy h:mm"
    End With
End Sub

Cordialement.

Bien pigé!

Je vous remercie tous les deux pour votre prompte réponse.

Emil

.. de rien avec plaisir

Re,

Je t'explique quand même :

Now renvoie une date, donc pas de problème, si tu l'affectes, c'est la bonne date (car c'est un nombre).

Mais en utilisant la fonction Format, tu transformes ta date en texte, ce n'est plus une date...

... et quand VBA met la main sur ce texte, il l'interprète comme représentant une date, et le convertit en date !

C'est là que le bât blesse, car n'ayant pas de directives pour convertir il utilise ses règles propres en l'interprétant en format américain, sauf s'il ne le peut pas (si le jour est supérieur à 12, ce ne peut plus être le mois).

Le même problème est fréquent quand tu affectes une date saisie dans une TextBox, c'est du texte, donc convertible pour VBA. Et on est obligé de le convertir en date avec CDate (ou éventuellement DateValue), car si on lui demande de convertir, VBA va aller chercher les paramètres régionaux du système pour savoir quel est le format texte d'une date pour le système sur lequel il opère avant de la convertir...

Mais dis-toi que même en le sachant, il arrive toujours qu'on se fasse piéger... !

Bonne fin de soirée.

Rechercher des sujets similaires à "jour mois inverse"