Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2013 (Résolu)Format date de Textebox vers cellule

chaelie2015

XLDnaute Accro
Bonsoir Forum
Le problème que je rencontre est le suivant : Lorsque je saisis une date dans ma TextBox, par exemple "01/09/2023" pour le 1er septembre 2023 (format jour/mois/année), et que je la transfère dans une cellule Excel, la date est inversée avec le mois et le jour ("09/01/2023"). Cela crée de la confusion dans mes données.
Existe-t-il une solution pour que la date reste dans le format jour/mois/année lors du transfert depuis la TextBox vers la cellule Excel ?
Exemple : ThisWorkbook.Sheets("Traitement Absence").Range("B3").value = Format(UserForm16.TextBox1.value, "dd/mm/yyyy")
A+
 

ChTi160

XLDnaute Barbatruc
Bonsoir Charlie2015
voir avec ce Changement
tu as :
VB:
ThisWorkbook.Sheets("Traitement Absence").Range("B3").value = Format(UserForm16.TextBox1.value, "dd/mm/yyyy")
mettre la cellule B3 au format "jj/mm/aaaa
Code:
ThisWorkbook.Sheets("Traitement Absence").Range("B3").value = CDate(UserForm16.TextBox1.value)
non testé !
pas de fichier !
Jean marie
 

patricktoulon

XLDnaute Barbatruc
bonsoir
juste en passant
tout ça à condition bien sur que la date soit valide dans le textbox
sinon c'est le méchant beep windows
il serait intelligent de faire un test avant

mais revenons au format
on pourrait s'amuser a quel que soit le format dans le textbox qu'il soit restitué dans la cellule
et bien sur !!! en restant une date valide
VB:
 Dim dat As Date
    dat = CDate(UserForm16.TextBox1)
    With ThisWorkbook.Sheets("Traitement Absence").Range("B3")
        .Value = CDate(UserForm16.TextBox1.Value)
        .NumberFormat = Replace(Replace(Replace(UserForm16.TextBox1, Year(dat), "yyyy"), Format(Month(dat), "00"), "mm"), Format(Day(dat), "00"), "dd")
    End With
vba reconnait les dates au format US,FR,CA
si je tape
05/06/2023
ou
2023-06-05
ou
2023/06/05
avec cdate il reconnait la bonne date
donc l'injection avec datevalue ou cdate envoie la bonne date
maintenant pour s'amuser si dessus je formate la date à l'identique au textbox
quand on regarde la barre de formule c'est la bonne date et dans la cellule le format est idem au textbox
démonstration


quand je lis dans le forum que les dates et excel c'est de la torture alors que au contraire
c'est hyper easy
je réponds :il suffit de comprendre comment les fonctions date ( vba et excel )fonctionnent
donc je le redis
a partir du moment ou la chaine date correspond à
xx séparateur xx séparateur xxxx
ou
xxxx separateur xx separateur xx

vba ne fera pas d'erreur d’interprétation

amis du soir bonsoir
 

Staple1600

XLDnaute Barbatruc
Bonsoir le fil

[pensées du soir, avant le couchoir]
c'est hyper easy
Il y a encore plus easy que l'hyper easy
Une cellule, formatée au format date dans laquelle je saisis directement ma date.
Quel est le gain de saisir une date dans un TextBox d'un userform pour au final, insérer cette date dans une cellule de la feuille ?
Mais peut-être suis-je trop simpliste ou trop empreint du principe K.I.S.S

Bonsoir chez vous (comme disait l'autre Patrick, pas celui de Toulon, mais celui-de Portmeirion )
[/pensées du soir, avant le couchoir]
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…