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

calcul du nombre de mois entre deux dates

battit64

XLDnaute Nouveau
j'essaye de calculer le nombre de mois entre deux dates en vba excel
j'ai trouvé ce type de fonction en visual basic mais cela ne fonctionne pas sous excel

quelqu'un as t'il une idée
dim date1 as date
dim date2 as date
dim nbre_mois as integer
date1= 01/01/2007
date2=01/05/2007
nbre_mois = Datediff(DateInterval.Month, date1, date2)
 

gbinforme

XLDnaute Impliqué
Re : calcul du nombre de mois entre deux dates

bonsoir,

date1 = "01/01/2007"
date2 = "31/05/2007"
nbre_mois = (date2 - date1) / (365.25 / 12)

cela devrait fonctionner mais il faudrait connaître la précision voulue !
 

Excel-lent

XLDnaute Barbatruc
Re : calcul du nombre de mois entre deux dates

Slt,

En VBA je ne sais pas, mais en language Excel, la formule idéal est :

=(ANNEE(A2)-ANNEE(A1))*12+MOIS(A2)-MOIS(A1)

Avec :
-> (A1) date début
-> (A2) date fin

Il ne vous reste plus qu'a le traduire en VBA
 

Excel-lent

XLDnaute Barbatruc
Re : calcul du nombre de mois entre deux dates

Excel-lent à dit:
Il ne vous reste plus qu'a le traduire en VBA

Vous donnez votre langue au chat?

Bon, voici la solution :

Sub NbMois()
'Définition des variables

' Date1 => date de début
Dim dat1 As Date
'Date2 => date de fin
Dim dat2 As Date
Dim nbre_mois As Integer

dat1 = Range("A1")
dat2 = Range("a2")

nbre_mois = (Year(dat2) - Year(dat1)) * 12 + Month(dat2) - Month(dat1)
Range("a3") = nbre_mois

End Sub


Dans la macro ci-dessus :
-> la date de début est saisie en A1
-> la date de fin est saisie en A2
-> le résultat est affiché en A3

Bonne soirée
 

JeanMarie

XLDnaute Barbatruc
Re : calcul du nombre de mois entre deux dates

Bonsoir tout le monde

Mais si Monique, tu te mets aussi au VBA sans le savoir, en VBA c'est aussi DateDiff
Renvoie une valeur de type Variant (Long) indiquant le nombre d'intervalles de temps entre deux dates données.
Syntaxe
DateDiff(interval, date1, date2[, firstdayofweek][, firstweekofyear])


Code de la variable Interval
  • yyyy : Année
  • t : Trimestre
  • m : Mois
  • y : Jour de l'année
  • d : Jour
  • e : Jour de la semaine
  • ee : Semaine
  • h : Heure
  • n : Minute
  • s : Seconde

@+Jean-Marie
 

gbinforme

XLDnaute Impliqué
Re : calcul du nombre de mois entre deux dates

bonsoir à tous,

Alors j'ai testé les trois formules VBA + la formule de Monique.

En règle générale, les 4 résultats sont identiques, sauf quelques particularités qui démontrent presque les limites d'Excel...

Combien de mois entre le 01/01 et le 31/12 ?

datdif en trouve 11 !!!

Si je suis payé au mois, c'est pas ma solution...
 

Excel-lent

XLDnaute Barbatruc
Re : calcul du nombre de mois entre deux dates

Pour ma part, les deux solutions que je t'ai donné (excel et vba), elles comptes le nb de mois totaux, même les non échus.

Comme toi, je préfère toucher 12 salaires entre le 01/01 et le 31/12.

Quoique, 13 voir 14 mensualités me dérangerais pas!!!
 

Discussions similaires

Réponses
15
Affichages
453
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…