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

Moyenne différence entre dates sur 2 colonnes

nevrard

XLDnaute Nouveau
Bonjour à tous,

Je bloque sur le problème suivant :

En colonne A nous avons une liste de dates (exemple : Date du devis)
En colonne B une liste de dates également mais pas toutes remplies (exemple : Date de la signature)
=> Une date de signature ne suit pas forcement une date de devis.

Je souhaite calculer le temps moyen (sur une seule case) en jours :
de la différence entre dates colonnes A et dates colonnes B (sauf si pas de dates en colonne B).
=> en français : lorsqu'il y a une signature, quel est le temps moyen entre la date du devis et la date de la signature

J'ai joint un fichier d'exemple. L'idée c'est d'avoir le résultat "13" mais sans passer par la création d'une colonne supplémentaire.

Avez-vous des pistes ?
J'ai essayé sommeprod sans passer par moyenne.
J'ai bien noté que moyenne ne prenait pas en compte les cellules vides par défaut. Mais associé à une différence (soustraction ou datedif) je bloque ...
 

Pièces jointes

  • Exemple.xlsx
    10.2 KB · Affichages: 13

Robert

XLDnaute Barbatruc
Repose en paix
Bonjour le fil, bonjour le forum,

Je soupçonne mapomme de se doper...

Une proposition VBA si ça peut intéresser quelqu'un :

VB:
Sub Macro1()
Dim O As Worksheet 'déclare la variable O (Onglet)
Dim DL As Integer 'déclare la variable DL (Dernière Ligne)
Dim NJ As Integer 'déclare la variable NJ (Nombre de Jours)
Dim NV As Integer 'déclare la variable NJ (Nombre de Valeurs)

Set O = Worksheets("Feuil1") 'définit l'onglet O
DL = O.Cells(Application.Rows.Count, "E").End(xlUp).Row 'définit la dernière ligne éditée DL de la colonne E de l'onglet O
For I = 6 To DL 'boucle des ligne 6 à DL
    'si la cellule en colonne F n'est pas vide, définit le nombre de jours NJ et le nombre de valeurs NV
    If O.Cells(I, "F") <> "" Then NJ = NJ + (O.Cells(I, "F") - O.Cells(I, "E")): NV = NV + 1
Next I 'prochaine ligne de la boucle
MsgBox "La moyenne est de " & Round(NJ / NV, 2) & " jours !" 'message
End Sub
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re,
Une autre en formule matricielle :
VB:
=SOMME(SIERREUR(EXP(LN(F6:F10-E6:E10))/NB(F6:F10);0))
 
Dernière édition:

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…