Calculer la l'écart entre 2 dates puis faire la moyenne

dearmilady18

XLDnaute Nouveau
Bonjour,
J'ai une liste de nom qui sont associé à des dates. J'aimerais obtenir la moyenne des écarts entre chacune de ces dates par nom.

Je joint un exemple du fichier.

Merci d'avance!
 

Pièces jointes

  • Classeur2.xlsx
    10 KB · Affichages: 224
  • Classeur2.xlsx
    10 KB · Affichages: 238
  • Classeur2.xlsx
    10 KB · Affichages: 231

dearmilady18

XLDnaute Nouveau
Re : Calculer la l'écart entre 2 dates puis faire la moyenne

Re-bonjour,
J'explique plus clairement et je joint le fichier; Dans mon fichier, en utilisant la feuille 'Régulière', j'aimerais obtenir le nombre de livret reçu par personne et combien de temps cela prend pour terminer un livret en moyenne. J'ai déjà réussi à obtenir le nombre de livret utiliser sur la feuille 'écart et moyenne' dans la colonne 'B'. Je ne trouve pas comment faire la moyenne des écarts entre les dates. J'aimerais que cette moyenne apparaisse dans la colonne 'C' de la feuille 'écart et moyenne'.
Par exemple Martine Lalonde à reçu 4 livret; le 30 mars, le 2, le 12 et le 20 avril. Je veux savoir combien de temps elle a mis à terminer ses livrets en moyenne.
Bon sang que j'ai du mal à m'exprimer! :(

Merci d'avance pour ceux qui ont compris quelque chose!
 

Pièces jointes

  • Suivi des correspondances - Copie.xlsx
    49.1 KB · Affichages: 396

PMO2

XLDnaute Accro
Re : Calculer la l'écart entre 2 dates puis faire la moyenne

Bonjour,

Une piste mais en VBA qui, j'espère, ne va pas vous rebuter. Il s'agit d'une fonction personnalisée.
Tout d'abord votre classeur doit être enregistré comme prenant en charge les macros.
Je me suis référé entièrement à votre classeur exemple. Il est impératif que le nom de la feuille "Régulière" soit conservé ainsi que sa structure (en ce qui concerne la disposition de ses colonnes)

Copiez le code suivant dans un module standard

Code:
Const SOURCE As String = "Régulière"

Function Moyenne_pmo(Cellule As Range) As Variant
Dim S As Worksheet
Dim R As Range
Dim var
Dim i&
Dim cpt&
Dim diff&
Dim T()
Set S = Sheets(SOURCE)
Set R = S.Range("a3:e" & S.[a65536].End(xlUp).Row & "")
var = R
For i& = 1 To UBound(var, 1)
  If Trim(Cellule) = Trim(var(i&, 1)) Then
    If IsDate(var(i&, 5)) Then
      cpt& = cpt& + 1
      ReDim Preserve T(1 To cpt&)
      T(cpt&) = CLng(CDate(var(i&, 5)))
    End If
  End If
Next i&
If cpt& > 1 Then
  For i& = 1 To cpt& - 1
    diff& = diff& + T(i& + 1) - T(i&)
  Next i&
  Moyenne_pmo = diff& / (cpt& - 1)
Else
  Moyenne_pmo = ""
End If
End Function


UTILISATION
Dans votre feuille "écart et moyenne" entrez la formule =Moyenne_pmo(A4) dans une cellule de votre choix.
A4 correspond en l'occurrence à "Claude Banville". Vous pouvez tirer ou copier cette formule comme bon vous semble pour remplir, par exemple, la plage C3 : C79
Si l'intéressé a plus d'un livret la moyenne de jours s'inscrit ; sinon la cellule, bien que comportant la formule, reste sans résultat.
Si vous voulez que dans ce dernier cas quelque chose soit affichée, changez l'instruction
Code:
Moyenne_pmo = ""
par
Code:
Moyenne_pmo = "réponse vide"
ou ce qui vous semble le plus parlant.

Cordialement.

PMO
Patrick Morange
 

Discussions similaires