Nombre d'appel par tranche horaire

Matjul

XLDnaute Occasionnel
Bonjour à tous,
Je souhaite superviser la sollicitation d'un central téléphonique.
Ainsi, je détiens une liste d'appel téléphonique au format jj/mm/aaaa hh:mm:ss.
Je souhaiterai ainsi faire apparaitre une courbe sur une période de 24h00 avec en abscisse les heures de 0h00 à 23h00 et en ordonnée le nombre d'appels reçu en moyenne par jour.

Le top serai que je puisse effectuer une courbe pour chaque jour de la semaine.

D'avance, je vous remercie des pistes que vous pourrez me donner pour solutionner mon problème .

Merci
 

ROGER2327

XLDnaute Barbatruc
Re : Nombre d'appel par tranche horaire

Bonjour à tous.


Une autre proposition en VBA avec un code léger et assez rapide :​
VB:
Sub toto()
Dim i&, j&, n&, d#, f#, hd&, hf&, jd&, jf&
Dim s(287, 6), v()
    With Feuil1.[E2]
        n = .Parent.Cells(.Parent.Rows.Count, .Column).End(xlUp).Row
        v = .Resize(n, 2).Value
    End With
    For i = 1 To n - 1
        d = Round(v(i, 1), 5)
        f = Round(v(i, 2) - 5.85480093676815E-06, 5)
        If 0 < f - d And f - d < 1 Then
            hd = Int(288 * (d - Int(d))): jd = (Int(d) - 2) Mod 7
            hf = Int(288 * (f - Int(f))): jf = (Int(f) - 2) Mod 7
            If jd = jf Then
                For j = hd To hf: s(j, jd) = 1 + s(j, jd): Next
            Else
                For j = hd To 287: s(j, jd) = 1 + s(j, jd): Next
                For j = 0 To hf: s(j, jf) = 1 + s(j, jf): Next
            End If
        End If
    Next
    Feuil1.[I3].Resize(288, 7).Value = s
End Sub
Les éventuels appels à durée négative ou à durée supérieure à un jour sont ignorés.


Bonne journée.



ℝOGER2327
#7162


Lundi 23 Gueules 141 (Occultation de Saint J Torma, euphoriste - fête Suprême Quarte)
29 Pluviôse An CCXXII, 1,2400h - chélidoine
2014-W08-1T02:58:34Z

P.s. : Code modifié le 18/2/14. Voir la pièce jointe du message #25 avec cette version modifiée.
 

Pièces jointes

  • Appel par tranche horaire-1.xlsm
    123 KB · Affichages: 70
Dernière édition:

ROGER2327

XLDnaute Barbatruc
Re : Nombre d'appel par tranche horaire

Bonjour.


Petite modification du code précédent, plus une version prenant en compte les longues conversations de plusieurs mois...​


ℝOGER2327
#7163


Mardi 24 Gueules 141 (Conversion de Saint Matorel, bateleur - fête Suprême Quarte)
30 Pluviôse An CCXXII, 1,0470h - traineau
2014-W08-2T02:30:46Z


P.s. : Remplacement de la pièce jointe. Voir le message #29.
 

Pièces jointes

  • Appel par tranche horaire-4.xlsm
    143 KB · Affichages: 81
Dernière édition:

Victor21

XLDnaute Barbatruc
Re : Nombre d'appel par tranche horaire

Bonjour à tous, bonjour, ROGER2327.

Attn : Roger.
J'ai cru comprendre que vous retranchez l'équivalent de 1/2 seconde à l'heure et date de fin avec :
f = Round(v(i, 2) - 5.85480093676815E-06, 5)
Mais je ne pige pas pourquoi vous multipliez par 288 la partie décimale de la date de fin :
hf = Int(288 * (f - Int(f)))
Auriez-vous l'obligence d'éclaire la lanterne du béotien curieux que je suis ?
 

Matjul

XLDnaute Occasionnel
Re : Nombre d'appel par tranche horaire

Bonjour et Merci beaucoup ROGER2327,
Tout fonctionne Nickel Chrome!!

J'ai une petite question subsidiaire, est il possible d'obtenir le même résultat en faisant cette fois ci référence à une table access comprenant 2 champs : Début et Fin.

Enfin pour chaque tranche horaire et jour quelle est la formule pour avoir le nombre moyen et médian?

Merci beaucoup pour votre aide si précieuse!!!
 

ROGER2327

XLDnaute Barbatruc
Re : Nombre d'appel par tranche horaire

Re...


Bonsour®

il y a 288 tranches de 5 minutes par jour !!!
24*(60/5)
:rolleyes:
Merci, Modeste geedee.

Quant à la question sur l'arrondi, je crois qu'il serait plus juste d'écrire :​
VB:
        d = Round(v(i, 1) + 5.78703703703704E-06, 5)
        f = Round(v(i, 2) - 5.78703703703704E-06, 5)
pour éviter que
mar. 18-02-2014 00:05:00,00___mar. 18-02-2014 00:10:00,00
ajoute 1 dans la tranche 00h00 - 00h05 du mardi.

La constante 5,78703703703704E-06 (=0,5/86400) est la durée d'une demi-seconde exprimée en jour.
C'est par erreur que j'ai écrit 5.85480093676815E-06 (=0,5/85400). Excusez-moi !


ℝOGER2327
#7165


Mardi 24 Gueules 141 (Conversion de Saint Matorel, bateleur - fête Suprême Quarte)
30 Pluviôse An CCXXII, 5,9728h - traineau
2014-W08-2T14:20:05Z
 

Statistiques des forums

Discussions
312 493
Messages
2 088 956
Membres
103 990
dernier inscrit
lamiadebz