Bonsoir, Salut Steelson !
Dans une TextBox, tu as du texte ! Quand tu le sors de la TextBox, si VBA peut l'interpréter comme date, il convertit en date, mais selon ses propres paramètres ! C'est pourquoi, il faut toujours explicitement convertir un texte-date en Date.
La fonction CDate remplit généralement bien cet office, en forçant VBA à interpréter le format selon les paramètres régionaux de Windows.
Si tu dis qu'elle ne le fait pas, il conviendrait de vérifier que tes paramètres régionaux sont bien FR-FR, ainsi que les formats de date...
La fonction Format n'est d'aucun secours, au contraire, elle renvoie du texte qui sera alors forcément converti en date par VBA au format américain !
La solution de décomposer jour, mois, année, proposée par Steelson, est évidemment sûre. Tu peux aussi extraire ces éléments de ta TextBox pour recomposer la date avec DateSerial.
Autre solution possible, la saisie littérale du mois : "1 juil 2017" ne deviendra pas 07/01/2017 ! (Mais utiliser CDate également !)
Mais repenche-toi sur : CDate(TextBox1.Text), car cela devrait fonctionner !
Cordialement.