Date (inversion des jours et des mois)

Signaler
Messages postés
30
Date d'inscription
mardi 4 octobre 2005
Statut
Membre
Dernière intervention
6 avril 2007
-
Messages postés
30
Date d'inscription
samedi 24 janvier 2004
Statut
Membre
Dernière intervention
13 mars 2009
-
Salut,






Voilà mon pb. J’essai de faire un prog sur VBA. J’ai dans mon userform plusieurs textbox qui permettent de renseigner des dates. Ensuite, je renvoie les dates dans un tableau excel qui me permet de comparer mes dates, calculer le nombre de jours entre deux dates, etc.






Pour cela, j’ai fait :
sub textboxdate1_change
range (« A1 »)=textboxdate1.value


End sub



Seulement, quand je saisis par exemple 02/11/2005 dans ma textbox ça me renvoi sur excel (cellule A1) le 11 février 2005. Alors que quand je saisis 25/11/05 et bien là j’ai le résultat souhaité c’est à dire le 25 novembre 2005. Bref parfois ça inverse les jours et les mois.






Pourtant sur excel, le format de ma cellule est bien jj/mm/aaa. Je me dis que j’ai mal configurer VBA.






Est-ce que quelqu’un à une solution?






Merci d’avance

Faut bien commencer un jour...
A voir également:

7 réponses

Messages postés
1788
Date d'inscription
mardi 7 novembre 2000
Statut
Membre
Dernière intervention
11 mars 2006
25
Bonjour,

Essaye ceci.



Private Sub TextBox1_Change()

Range("A1").Select

Selection.NumberFormat = "d mmmm yyyy"

Range("A1") = textboxdate1.value


End Sub



jpleroisse



Si une réponse vous convient, cliquez sur Réponse Acceptée.
Messages postés
30
Date d'inscription
mardi 4 octobre 2005
Statut
Membre
Dernière intervention
6 avril 2007

Salut,

merci pour ton aide.

Malheureusement ça marche pas. La différence, c'est qu'au lieu d'inverser le 11/02/2005 en "02/11/2005", ça l'inverse en "2 novembre 2005".

Faut bien commencer un jour...
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
68
Changeons alors le format utilisé...

Private Sub TextBox1_Change()
Range("A1").Select
Selection.NumberFormat = "dd/mm/yy"
Range("A1") = textboxdate1.value
End Sub
Messages postés
30
Date d'inscription
mardi 4 octobre 2005
Statut
Membre
Dernière intervention
6 avril 2007

C’est dingue ! Je mets tout ça et pourtant ça m’inverse quand même le jour et la date. Si je rentre 02/11/2005 et que je précise le format « dd/mm/aaaa » de la cellule excel, ça m’envoi sur excel une date sur le bon format (« dd/mm/aaaa ») mais en inversant le jour et le mois souhaité savoir 11/02/2005.






J’ai l’impression que VBA est configuré pour comprendre les dates forcément sous le format « mm/dd/aaaa » ! C’est possible ?

Est-ce qu’on peut changer le format non pas de la cellule excel mais de la textbox de vba ?

Faut bien commencer un jour...
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
68
ta manipulation est parfaitement illogique :
dd/mm/aaaa => Day Month Annee
soit tu met dans une langue, soit tu mets dans l'autre...
Messages postés
30
Date d'inscription
mardi 4 octobre 2005
Statut
Membre
Dernière intervention
6 avril 2007

Ah oui, je me suis trompé.. je voulais dire « dd/mm/yyyy ». C’est bien le format que j’ai mis mais ça marche pas … (c’est à ni rien comprendre ???)

Faut bien commencer un jour...
Messages postés
30
Date d'inscription
samedi 24 janvier 2004
Statut
Membre
Dernière intervention
13 mars 2009

Ah je suis content de trouver le meme problème que moi, j'ai un tableau qui se rempli tous les jours en date du jour, et les 12 permiers jours il inverse le mois et les 13 jours suivant, tout va bien, ça correspond bien à ma formule
    UserForm4.datefiche.Text = Format(Date, "dd/mm/yyyy")

c'est embettant car aujourd'hui on est le 13 et tout marche normalement, je ne peux trouver mon erreur.

http://mega-hertz.com