Format de date non conservé lors du passage du userform à la feuille Excel

Bonjour,

Dans le fichier joint, alors qu'à chacune des étapes de la procédure, le format de la date est correct, je retouve la date au format américain dans la feuille de calcul. Mes paramétres régionaux sont corrects, le format de cellule est correct sur la feuille de destination, mais je le retrouve en personalisé lorsqu'elle a reçu les données.

J'ai tenté en maintenant cdate devant la valeur à chaque étape, en ajoutant format(xxx, "dd/mm/yyyy"), mais rien n'y fait.

Précisions : il s'aégit des passer des échéances de paiement sur les comptes bancaires concernés. Lorsqu'un seul compte est concerné, le format est correct. Lorsque deux comptes sont concernés (échéance de virements entre comptes par exemple) la date n'est plus correcte.

la question a été posée à plusieurs reprises sur les forums, mais les réponses que j'ai pu trouver n'ont pas réglé le problème. Merci de votre aide.

25extrait-comptes.xlsb (470.66 Ko)

Bonjour,

Et en utilisant la fonction DateSerial ?

Cà fait partie des choses que j'ai essayées sans succés. J'avais trouvé cette solution sur un forum, j'ai testé aussi numberformat... mais non..

merci

Salut à tous,

Vu que je n'ai pas trop de temps peux-tu décrire la manoeuvre qui te permet de voir le problème cela nous fera gagner du temps.

Bonjour et merci de te pencher sur ce probléme

Je suis la date à chaque étape. Elle est correcte. Quand je la passe dans la cellule (procédure addrow..) elle arrive au format américain.

De ce que j'ai compris, cela se produit avec les dates inférieures à 13:

je cite:

"Une date de type string envoyée de VBA vers Excel est toujours interprétée comme étant une date au format américain si c'est possible, et si ce n'est pas une date valide de format américain, elle est considérée comme du texte. lorsque la date est intransposable selon le formatage américain, elle s'affiche correctement comme texte"

Quand je passe par une variable date, (du genre dateoperation = cdate(textbox.value) et que je passe la variable dans mon tableau, le problème est moins grave. En sortie j'ai le format j/m/aaaa. Mais ce n'est pas satisfaisant et le format de ma cellule de départ (jj/mm/aaaa)été modifié.

Je continue mes recherches de mon côté.

Merci d'avance

Bonjour,

Autre testque je viens de réaliser:

je garde la valeur numérique de la date (45355 pour le 04/03/2024) en me disant qu'en passant cette valeur la date sera correcte en arrivant dans la cellule.

1er cas : la date est correcte mais au format m/j/aaaa, donc format américain toujours

2ème cas, en imposant le format au moment ou je crée l'array de données : la date est erronée le 4 mars et devenu 3 avril, et présenté dans le format m/j/aaaa.

?????????????

Je n'ai plus de cheveux.

Re,

Du coup, je rentre dans la cellule la valeur date avec son numéro de série, et je gére le format dans l'affichage. Pas terrible, mais pas mieux pour l'instant.

Re,

Bon je pense que tu te complique la vie pour rien :

.EcheanceDate = Format(CDate(Me.Tbx_EcheancesAjout_Date), "dd/mm/yyyy")

Ci-dessus EcheanceDate sera de type String, nous sommes bien d'accord. (Format renvoie un type String)

Donc dans des cas comme celui-là tu ne dois faire que deux choses :

  • Tester si la date est correcte avec IsDate par exemple
  • Puis la transformer en date avec Cdate et c'est tout. (Cdate convertit la date au format de ton PC)

Le mieux étant de faire une petite fonction qui gère cela. Pour Excel le format c'est de la poudre aux yeux. Donc tu lui envoie une date et c'est tout.

Bonjour et merci

Je vais retester, mais j'avais bien format... au départ et aprés je passais cdate. Ce que je ne comprends c'est pourquoi debug print me donnait une date correcte à l'entrée de l'array et qu'à l'arrivée dans la cellule, le format est erroné.

Je reviens vers toi dés que possible

Bonjour, cela fonctionne. Je conserve en string tout au long de la procédure et je ne convertis en date qu'au dernier moment.

Merci beaucoup

Rebonjour Jean-Paul

J'aurai du tilter quand j'ai vu le petit commentaire sur Access. C'est déjà toi qui m'avait dépanné sur le format dbl dans le listview, donc doublement merci.

Re,

Oui je navigue ici et là.

Pas de quoi nous sommes là pour cela.

Rechercher des sujets similaires à "format date conserve lors passage userform feuille"