Changement Bizarre en Date US dans textbox

Bonjour le forum,

J'ai un étrange problème sur mon document excel... J'ai actuellement sur la feuille ACCUEIL, un bouton qui m'ouvre un formulaire de recherche de la base de données située sur la feuille GÉNÉRALE.

Lorsque je tape un identifiant existant (NNI), exemple : "A" je clique sur la personne concernée dans la liste de proposition à droite et celui-ci récupère le prénom et les dates des formations associés auxquelles il a déjà participé. (Jusque-là normal).

Mon problème intervient lorsque dans mon formulaire j'inscris une date, exemple : 02/07/2018 et que je clique sur MODIFIER. Il va enregistrer la date dans la bonne cellule de l'identifiant A. Mais lorsque je reviens dans mon formulaire et que je rajoute une autre date et que je fais modifier, la date se transforme en format mm/jj/aaaa, or je souhaite que mes dates restent en jj/mm/aaaa.

J'ai remarqué que le changement ne se faisait uniquement quand la date du jour et du mois est inférieur ou égale à 12...

Je vous transfère le fichier en question pour une meilleure compréhension.

Si besoin je reste à votre disposition pour plus de renseignements.

Merci de l'aide que vous pourriez m'apporter.

Tomobilus.

Bonjour Tomobilus

Ce n'est pas bizarre, c'est voulu par microsoft !! D'abord les données dans une textbox sont des données textuelles, d'autre part VBA a été développé par et pour les US !!

2 solutions :

  • remplacer l'userform par un onglet dédié, et là tu n'auras aucun soucis de ce type
  • transformer ton texte en une vraie date avec DateSerial en décortiquant ta "date-texte" en année, mois, jour par la fonction Mid !

Mets éventuellement un fichier excel réduit car là je m'y perds.

bonjour

Pour les date texbox mettre CDate a la place CDbl

A+

Maurice

Merci de vos réponses

@archer

j'ai fait ta proposition mais ça n'a pas marché...

If IsNumeric(Controls("Textbox" & i - 6).Value) Then
            .Cells(C0.ListIndex + 2, i + 1) =CDate(Controls("Textbox" & i - 6).Value)

@steelson

  • le faire en onglet dédié pourquoi pas, mais pour reproduire le mode de recherche je n'ai pas les capacités...
  • ta solution avec DateSerial me plait, mais je ne sais pas l'appliquer... je suis novice dans le VBA.

Pourrais tu me faire un exemple de ce qu'il faudrait inscrire dans une textBox pour qu'une date soit dans le bon format.

Merci d'avance.

Tom

@steelson...

-ta solution avec DateSerial me plait, mais je ne sais pas l'appliquer... je suis novice dans le VBA.

Pourrais tu me faire un exemple de ce qu'il faudrait inscrire dans une textBox pour qu'une date soit dans le bon format.

Mais c'est justement ce que je demandais ...

Mets éventuellement un fichier excel réduit car là je m'y perds.

Au plus simple ...

mets par exemple 3/10/2019

Bonjour Steelson

Merci pour tes réponses Malheureusement, je n'ai pas réussi à obtenir le même résultat que ton exemple sur mon fichier...

Je te fais passer comme convenu une version plus légère de mon fichier afin que tu puisses y jeter un oeil.

Bonne journée

Tom

Bonjour

on teste les date donc

If IsDate(Controls("Textbox" & i - 6).Value) Then
            .Cells(C0.ListIndex + 2, i + 1) = CDate(Controls("Textbox" & i - 6).Value)

A+

Maurice

Bonjour Archer

Que dire de plus... c'est parfait ça répond parfaitement à mon problème !

Un énorme merci à vous deux pour vous être penchez sur le sujet.

Merci pour tes réponses Malheureusement, je n'ai pas réussi à obtenir le même résultat que ton exemple sur mon fichier...

... d'où l'intérêt de poster un fichier !
Rechercher des sujets similaires à "changement bizarre date textbox"