Format de date saisie en format anglais au lieu de français

Bonjour à tous!

J'ai un problème de format de date dont je n'arrive pas à comprendre l'origine puisqu'à tous récement tous marchait très bien. Je vous joints l'un des fichier, mais c'est généralisé.

Edit modo : Fichier protégé supprimé

Dans le classeur Excel la saisie de date avec le racourcis CRTL+; fonctionne bien et le format date s'inscrit aaaa-mm-jj. Toutefois dans un Userform je pouvais faire la même chose avec mes textbox, mais il inscrit sous le format aaaa-jj-mm et quand il marque les dates ça se mélange aussi. Pouvez-vous m'aider à comprendre pourquoi ça fait ça et comment je peux le régler ça me cause un soucis immence!

Merci à tous!

Je fais une mise à jour. C'est uniquement sur mon ordinateur que le problème arrive, quand j'ouvre le même document sur ma Surface ou sur mon ordinateur au bureau tous fonctionne très bien...

Je viens de formater mon ordinateur où le problème arrive et ça n'a rien changé il fait toujours le même problème il vient marqué le format date aaaa-jj-mm au lieu de aaaa-mm-jj.

Bonjour CedL, le forum,

Est-ce que les paramètres régionaux de Windows sont les mêmes que sur une machine où cela fonctionne ?

Bastr

Bonjour bastr,

Oui tous mes paramètres sont en français. C'est uniquement en VBA en plus que les dates se formate en anglais parce que quand je le fais sur une feuille tout est ok. J'utiles la fonction raccourcis CTRL+; autant dans une TextBox que dans une feuille et les formats de date ne sont pas les mêmes...

Je suis vraiment perdu!

Bonjour Cédric,

Merci de déposer des fichiers dont VBAproject n'est pas protégé SVP

A+

Oui désolé! Voici!

Re, Merci

Si le format système est en français, tu peux utiliser la fonction CDate()

Sheets("DATA_DC").Cells(nouv, 4) = CDate(Date)

Sinon, cela peut être également

Sheets("DATA_DC").Cells(nouv, 4).value = Date*1

Ou encore (date inversée en VBA -> instruction en anglais, mais ok sur la feuille)

Sheets("DATA_DC").Cells(nouv, 4).value = Format(Date*1,"mm/dd/yyyy")

A+

Bonjour CedL, le fil, le forum,

Je n'avais pas vue les propositions de BrunoM45.

Bastr

Merci BrunoM45, ça fonctionne!

Bon finalement, je croyais que c'était réglé, mais malheureusement non!

Mon problème n'est pas quand il transcrit la date dans la base de donné (feuille), mais quand j'entre la date dans une TextBox dans le UserForm. J'ai beau mettre un format exemple : TextBox4 = Format(TextBox4, "yyyy-mm-jj"), ça ne fonctionne toujours pas... Et il se transforme en format français quand le jour devient plus haut que 12.

Le pire dans tous ça, c'est que sur mon ordinateur de travail et ma Surface personnel ça fonctionne bien, c'est uniquement sur mon ordinateur personnel haha

Bonjour BrunoM45!

J'ai décidé finalement de réinitialisé entièrement M365 et de remettre la langue par default en français et tout et miracle tout fonctionne! Je ne pourrais dire ce qui sait passé j'étais pourtant déjà en français sans aucune autre langue en plus de tous ça. Mais bref tout fonctionne!

Merci pour ton aide, c'était grandement apprécié comme à l'habitude!

Bonjour CedL, le fil, le forum,

Il y a une cinquantaine d'endroits où il y a : TextBox7.Value = Format(TextBox7.Value, "yyyy-mm-dd") (le numéro du Textbox varie)

Sauf erreur de ma part, sur une copie du fichier, je crois que tu pourrais tester ainsi : TextBox7.Value = Cdate(TextBox7)

Sauf dans les cas : .List(X, 3) = Format(.List(X, 3), "yyyy-mm-dd") sur les liste, Cdate, donnera une erreur.

Bastr

Bonjour CedL, le fil, le forum,

Après un test, je constate que j'ai fait une méprise.

Si le textbox est vide, cela donne une erreur.

Il faut utiliser : If Len(TextBox3.Value) <> 0 Then TextBox3.Value = CDate(TextBox3.Value)

Bastr

Rechercher des sujets similaires à "format date saisie anglais lieu francais"