problème de date version anglaise....

kastor

XLDnaute Junior
Bonjour,

Non pas que l'anglais me dérange, mais lorsque j'utilise ce code


Dim IntervalType As String



IntervalType = "m" ' "m" indique l'intervalle en mois.
range(A1").value = Format(DateAdd(IntervalType, -1, Date), "dd/mm/yyyy")

il m'envoie bien la date, mais version anglaise...

12/08/2013 ==> 08/12/2013

savez vous pourquoi ?

J'ai déjà vérifié la langue, le format de la cellule.... rien à faire !


Merci d'avance
 

pierrejean

XLDnaute Barbatruc
Re : problème de date version anglaise....

Bonjour kastor

Dans un cas de ce type , je fais en sorte que la date atterrisse dans une variable déclarée Date
Teste:

Code:
Dim IntervalType As String
Dim x As Date
IntervalType = "m" ' "m" indique l'intervalle en mois.
x = Format(DateAdd(IntervalType, -1, Date), "dd/mm/yyyy")
Range("A1").Value = x
 

Efgé

XLDnaute Barbatruc
Re : problème de date version anglaise....

Bonjour kastor, Bonjour pierrejean

Il y a aussis la version :
VB:
Range("A1").FormulaLocal = Format(DateAdd(IntervalType, -1, Date), "dd/mm/yyyy")

Cordialement

EDIT Bonjour Jean-Marcel (que de monde... :D )
 

kastor

XLDnaute Junior
Re : problème de date version anglaise....

Merci vos solutions fonction bien.

mais ça me renvoie forcément la date du jour -1 mois.

donc, comment faire pour envoyer le 1er de chaque mois.

car en fait j'utilise

= "01/" & Format(CDate(DateAdd(IntervalType, -1, Date)), "mm/yyyy")

donc le vrai problème vient de là.....
 

pierrejean

XLDnaute Barbatruc
Re : problème de date version anglaise....

Re

A tester:

Code:
If Month(Date) = 12 Then
  nm = 1:  na = Year(Date) - 1
Else
  nm = Month(Date) - 1:  na = Year(Date)
End If
Range("A1") = CDate("01/" & nm & "/" & na)

NB: il n'est pas complètement idiot de poser directement le problème réel
 

Discussions similaires

Réponses
10
Affichages
413