Problème inversion date

Bonjour à tous,

Je sollicite votre aide pour un problème de date.

Je saisie un enregistrement ou la date de saisie est bien la date d'aujourd'hui soit le 10/03/2021 et dans ma colonne B ou celle ci est valider elle se présente en 03/10/2021.

J'ai regardé le format date de ma colonne celui ci est cohérent.

image

Merci pour votre aide.

ci joint le fichier pour exemple (oubli)

Bonjour,

Votre saisie se fait par USF ?

Si tel est le cas, alors donner votre fichier afin de savoir comment le corriger, car cela dépend de la donnée de départ et des éventuels mofification apportées "en cour de rgoute"

@ bientôt

LouReeD

Je n'ai pas répondu assez vite !

@ bientôt

LouReeD

oui ma saisie se fait USF mais à l'enregistrement ma date est inversée.

Vous l'envoyez sur la feuille avec un CDate ou un Format, elle vient TextBox ?

Je n'ai pas télécharger le fichier, je suis sur téléphone...

@ bientôt

LouReeD

en fait je pense que le pb est le format car j'ai une date de saisie dans usf avec validation en colonne J et cela fonctionne. Le format de cette colonne J est en texte alors que quand je veux convertir la colonne B en texte je me retrouve avec un nombre 44472.

Bonjour,

@LouReeD,

Un Windows Phone couplé à Windows 8 ?

Je sors !...

Bonsoir,

j'ai depuis peu pris l'habitude de laisser la feuille Excel d'afficher la date au bon format.
Pour ce faire je ne transfert plus les dates des TextBox avec la valeur de leur contenu mais en transférant ces valeurs en tant que date grâce à CDATE()

Donc pour la colonne B vous pouvez apporter cette modification au code du bouton valider :

Private Sub CommandButton1_Click() 'bouton "Valider"
Dim I As Integer 'déclare la variable I

For I = 1 To 11
    If I = 2 Then
        Range("TB").Item(LI, I) = CDate(Me("C" & I).Value)
    Else
        Range("TB").Item(LI, I) = Me("C" & I).Value
    End If
Next 'renvoie la valeur des contrôle dans la ligne LI
If TEST = False Then TB.ListRows.Add 'si la variable TEST est [Faux] ajoute une ligne au tableau structuré TB (la variable TEST est déclarée publique dans le module [Module1])
Unload Me 'vide et ferme l'UserForm en cours
If TEST = False Then UserForm1.Show 'si la variable TEST est [Faux] ouvre l'UserForm1 (la variable TEST est déclarée publique dans le module [Module1])
End Sub

Vous pouvez en faire autant avec la colonne J en faisant un test If I=10 donc :

If I=2 or I=10 then

Il y a eu un temps où j'utilisais FORMAT(TextBox1.Value,"MM/DD/YYYY") et il arrivait encore qu'il y ait des problèmes, avec Cdate et une mise en forme sur la feuille Excel, je trouve que c'est plus simple.

@ bientôt

LouReeD

Jean-Eric, en fait non j'ai un tel que personne ne supporte Huawei, et mon "appli" pour Excel ne supporte pas xlsM !
Autant vous dire que les essuies glace sont des éponges !

@ bientôt

LouReeD

Bonjour tout le monde.

Pour moi le problème vient de cette propriété .Value dans la ligne

For I = 1 To 11: Range("TB").Item(LI, I) = Me("C" & I).Value : Next 'renvoie la valeur des contrôle dans la ligne LI

J'ai supprimé ce .Value, centré sur la feuille "Enregistrement" les colonnes à centrer, justifié à gauche ce qui doit l'être et tout est rentré dans l'ordre. Comme ce n'est pas la première fois que ce .Value pose problème, soit je n'utilise rien soit uniquement .Text.

Très joli programme au passage.

Bonjour LouReed,Optimix

Merci à vous 2 pour votre retour.

Cela fonctionne avec la solution de Loureed

Optimix j'ai testé ton code le résultat était pareil merci quand même pour le compliment du programme et merci à thautheme qui m'a bien aidé.

Rechercher des sujets similaires à "probleme inversion date"