XL 2016 Calcul plusieurs conditions VBA

MinstrelL

XLDnaute Nouveau
Bonjour le forum,

Je vais essayer d'être le plus clair possible. J'aimerais pouvoir calculer une consommation moyenne selon une plage horaire et ça, tous les jours pendant 1 an.
Je m'explique...
Par exemple, le 01/01/2017, j'ai un volume qui se vide pendant quelques heures. Mon tableau me donne une valeur en m3, toutes les 15 min. Je vais avoir à 15h45 un volume, 16h un autre volume plus petit, 16h15...etc... jusqu'à 19h.

J'aimerais calculer la consommation sur une plage horaire bien définie : Entre 16h et 17h. Je voudrais faire ce calcul aussi le jour suivant et ainsi de suite.
A noter qu'il pourrait ne pas y avoir de valeur à 16h, et donc je voudrais demander à Excel de prendre la valeur la plus proche au-dessus de 16h pour faire le calcul de la consommation. De même pour 17h, je prendrai donc la valeur la plus proche en-dessous de 17h.

En bref mon calcul serait :
Plage : 16h - 17h
Heure plus proche de 16h au dessus = H1
Heure plus proche de 17h en dessous = H2
Volume correspondant à H1 = V1
Volume correspondant à H2 = V2

Conso = abs(V1-V2)*60/abs(H1-H2)

A noter qu'il y a plusieurs plages horaires, mais avec un exemple je devrais pouvoir me débrouiller pour le reste.

J'espère que c'est clair, sinon je répondrai à vos questions, en espérant que quelqu'un passe par ici !

Merci beaucoup!

Paul
 

Pièces jointes

  • Régulation Marnage.xlsx
    352.7 KB · Affichages: 4

MinstrelL

XLDnaute Nouveau
Re-Bonjour le forum,

Je vais réitérer ma question car j'ai trouvé une autre complication à ce sujet. Le mieux c'est que je donne directement un exemple du résultat partiel que je souhaite. Enfin je pense qu'il sera nécessaire d'avoir recours à un code VBA mais je n'en suis pas certain.

Voici un résultat visuel pour mieux comprendre :
1034448


Au jour 01/01/2017, j'identifie les plages disponibles, les plages sont décrites sur la "feuil1"
Exemple pour la plage 13 :
Elle doit être 18:00 - 20h00, or il n'y que 18:00 - 19h00 disponible, on prendra donc la valeur la plus proche de 20:00 en dessous.
Même démarche pour la plage 10 :
Elle doit être 15:00 - 16h00, or il n'y que 15:45 - 16h00 disponible, on prendra donc la valeur la plus proche de 15:00 au dessus.

Pour chaque plage identifiée, on fera le calcul : (Volume 1 - Volume 2) * 60 / plage
Exemple avec plage 11 : (275,08-260,50) * 60 / 60
Exemple avec plage 10 : (278,45-275,08) * 60 / 15

Le dénominateur correspond à la durée de la plage en min. Le résultat est un débit en m3/h

Seul problème : Imaginons, si la plage se situait, sur l'image précédente, entre 18:45 - 21:15, il faudra ne pas prendre en compte le calcul car un volume bas et haut se chevauchent sur une plage.

Les résultats apparaîtront dans le tableau de la feuille "Export 0.1"

Je suis disponible pour toutes questions!
Je comprendrai si ce travail est trop complexe, je trouverai une autre solution!

Merci!

Paul
 

Pièces jointes

  • Régulation Marnage.xlsx
    742.5 KB · Affichages: 4

Discussions similaires

Réponses
2
Affichages
143

Statistiques des forums

Discussions
312 104
Messages
2 085 349
Membres
102 869
dernier inscrit
radyreth