Salut Bob,
Ta solution est également très intéressante, mais elle ne répond pas non plus entièrement à ce que je souhaitais.
Si l'on remplit le champ du TextBox1 comme tu le préconises, je trouve gênant ces // qui viennent s'inscrire automatiquement. Personnellement je n'ai absolument pas l'habitude d'inscrire la date ainsi et je me trompe à chaque fois. Comme différents utilisateurs sont appelés à utiliser ce fichier, je pense que plus d'un serait mal à l'aise avec cette nouveauté.
J'ai donc essayé de supprimer toute la macro Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) et le résultat commence à devenir très intéressant. Si j'inscris par exemple 01.02.10, la date au bon format (01.02.2010) est reportée et de plus alignée à droite.
Cependant, pour ne quand même pas pouvoir inscrire la date à un format quelconque, j'aurais préféré que l'utilisateur soit obligé d'inscrire l'année complète. J'ai alors essayé de modifier ta ligne If Not IsDate(TextBox1) Or Len(TextBox1) <> 8 Then par If Not IsDate(TextBox1) Or Len(TextBox1) <> 10 Then - ainsi que la propriété "MaxLength" du TextBox1, mais ça ne passe pas.
Pourrais-tu encore m'aider à réaliser cela ?
Bonne soirée.