Problème de format de date (anglais/français) ...

Pio57 Messages postés 4 Date d'inscription mardi 14 février 2006 Statut Membre Dernière intervention 21 mars 2006 - 21 mars 2006 à 22:08
cs_hassen Messages postés 338 Date d'inscription mardi 28 janvier 2003 Statut Membre Dernière intervention 4 novembre 2008 - 21 mars 2006 à 22:26
Bonjour tout le monde !

Je suis en train de créer un petit formulaire de saisie de données en VBA sous Excel. Il y a des données avec lesquelles je faits des calculs (là pas de soucis) et surtout la date à laquelle correspond ces données.
Après, je colle le résultat des calculs et cette fameuse date sur une feuille Excel (avec un bête range("A1").value=madate.value)
Le soucis, c'est que jusqu'au 12 du mois, ce crétin m'inverse le jour et le mois (et me met ça donc au format anglais).

Comment le forcer à garder mon format français ?

Merci par avance !!

5 réponses

cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
21 mars 2006 à 22:15
Bonsoir,

Si vous ne trouvez pas la solution VBA/Excel,
exemples ci-dessous de conversion de dates jj/mm/aaaa et mm/jj/aaaa.
La réponse est rapide ??? normal presque la même question ce soir.....

MyDate = "03/21/2006"
MsgBox "Conversion de 03/21/2006 en 21/03/2006" &vbCrLf& "Ancienne Date: " & MyDate &vbCrLf&_
"Nouvelle Date: " & Mid(MyDate, 4,2) & "/" & Left(MyDate, 2) & Right(MyDate, 5)&vbCrLf&vbCrLf&_
"Conversion de 21/01/2006 en 03/21/2006" &vbCrLf& "Ancienne Date: " & Date &vbCrLf&_
"Nouvelle Date: " & Mid(Date, 4,2) & "/" & Left(Date, 2) & "/" & Right(Date, 4)



MyDate = "28/02/2006"
MsgBox "Conversion de " & MyDate & " + 1 jour" &vbCrLf&vbCrLf& "Ancienne Date: " & MyDate &vbCrLf&_
"ancienne date + 1 jour" &vbCrLf&_
"Nouvelle Date: " & DateAdd("d", 1, MyDate)


'Exemple sans variables
MyDate = "03/28/2006"
MsgBox "Conversion de 03/28/2006 en 28/03/2006 puis en jj/mm/aaaa + 1 jour" &vbCrLf&vbCrLf&_
MyDate &vbCrLf& Mid(MyDate, 4,2) & "/" & Left(MyDate, 2) & "/" & Right(MyDate, 4) &vbCrLf&_
"Ajout de 1 jour à " & Mid(MyDate, 4,2) & "/" & Left(MyDate, 2) & "/" & Right(MyDate, 4) &vbCrLf&_
DateAdd("d", 1, Mid(MyDate, 4,2) & "/" & Left(MyDate, 2) & "/" & Right(MyDate, 4)) &vbCrLf&_
"Conversion de jj/mm/aaaa + 1 en mm/jj/aaaa + 1" &vbCrLf& "résultat : " &vbCrLf&_
Mid(DateAdd("d", 1, Mid(MyDate, 4,2) & "/" & Left(MyDate, 2) & "/" & Right(MyDate, 4)), 4,2) &_
"/" & Mid(DateAdd("d", 1, Mid(MyDate, 4,2) & "/" & Left(MyDate, 2) & "/" & Right(MyDate, 4)), 1,2) &_
"/" & Right(DateAdd("d", 1, Mid(MyDate, 4,2) & "/" & Left(MyDate, 2) & "/" & Right(MyDate, 4)), 4)


'Exemple avec variables MyDate2 et MyDate3 pour faire moins condensé
MyDate1 = "03/28/2006"
MyDate2 = Mid(MyDate1, 4,2) & "/" & Left(MyDate1, 2) & "/" & Right(MyDate1, 4)
MyDate3 = DateAdd("d", 1, MyDate2)


MsgBox "Conversion de 03/28/2006 en 28/03/2006 puis en jj/mm/aaaa + 1 jour" &vbCrLf&vbCrLf&_
MyDate &vbCrLf& MyDate2 &vbCrLf& "Ajout de 1 jour à " & MyDate2 &vbCrLf&_
MyDate2 &vbCrLf& "Conversion de jj/mm/aaaa + 1 en mm/jj/aaaa + 1" &vbCrLf& "résultat : " &vbCrLf&_
Mid(DateAdd("d", 1, MyDate2), 4,2) & "/" & Mid(MyDate3, 1,2) &_
"/" & Right(DateAdd("d", 1, MyDate2), 4)

jean-marc
0
cs_jperre Messages postés 268 Date d'inscription lundi 9 janvier 2006 Statut Membre Dernière intervention 19 janvier 2017 2
21 mars 2006 à 22:16
Il faut utiliser la fonction Format :
Range("A1").Value=Format(madate.value,"dd/mm/yyyy")
Salut!...
0
Pio57 Messages postés 4 Date d'inscription mardi 14 février 2006 Statut Membre Dernière intervention 21 mars 2006
21 mars 2006 à 22:22
Waouhh ! 2 réponses en 39 secondes ! Si ça c'est pas beau !
Je vais tester tout ça (mais quelque chose me dit que je vais d'abord essayer la deuxième solution !).

En tous cas, un grand merci à vous deux !

Jérôme
0
cs_hassen Messages postés 338 Date d'inscription mardi 28 janvier 2003 Statut Membre Dernière intervention 4 novembre 2008
21 mars 2006 à 22:23
salut,
datefrancais=format(dateanglais,"mm/jj/aaaa")

Hassen TUNISIE
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_hassen Messages postés 338 Date d'inscription mardi 28 janvier 2003 Statut Membre Dernière intervention 4 novembre 2008
21 mars 2006 à 22:26
ooubs
correction
datefrancais=format(dateanglais,"dd/mm/yyyy")

Hassen TUNISIE
0
Rejoignez-nous