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

Calcul de degrés-jour bi-énergie (complexe)

  • Initiateur de la discussion Initiateur de la discussion Armand Paré
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

A

Armand Paré

Guest
Bonjour, je tente d'intégrer la formule suivante dans un chiffrier Excel pour trouver les degrés-jour pour ma table de bi-énergie.

mdegre= degre-jour de la journée
z_Degre = degree-jour pour hier

mdegre est calculé de la manière suivante:
=SI((((Degre_Max_jour + Degre_Min_jour)/2)-15)<=3;3;(((Degre_Max_jour + Degre_Min_jour)/2)-15))


Voici la formule

If mDegre - z_Degre > 22

Do Case
Case mDegre - z_degre = 23
mDual = ((mdegre-z_degre)-22)*2
Case mDegre-z_degre = 24
mDual = ((mdegre-z_degre)-22)*2.1
Case mDegre-z_degre = 25
mDual = ((mdegre-z_degre)-22)*2.15
Case mdegre-z_degre = 26
mDual = ((mdegre-z_degre)-22)*2.2
Case mdegre-z_degre = 27
mDual = ((mdegre-z_degre)-22)*2.3
Case mdegre-z_degre = 28
mDual = ((mdegre-z_degre)-22)*2.4
Case mdegre-z_degre = 29
mDual = ((mdegre-z_degre)-22)*2.45
Case mdegre-z_degre = 30
mDual = ((mdegre-z_degre)-22)*2.5
Case mdegre-z_degre = 31
mDual = ((mdegre-z_degre)-22)*2.6
Case mdegre-z_degre = 32
mDual = ((mdegre-z_degre)-22)*2.7
Case mdegre-z_degre = 33
mDual = ((mdegre-z_degre)-22)*2.75
Other
mDual = (mdegre-z_degre)
Endcase
Endif

Cordialement

Armand
 
Salut,

Pas sûr d'avoir tout compris, mais tu peux créer des fonctions personnalisées en les mettant dans un module standard; Do case je ne connais pas en VBA.

function Mdegre(Degre_Max_jour, Degre_Min_jour)
mdegre=iif(((Degre_Max_jour + Degre_Min_jour)/2)-15)<=3;3;(((Degre_Max_jour + Degre_Min_jour)/2)-15))
end function

function Mdual(M_degre,Z_degre)
select case M_degre-Z_degre
case 23:mdual=2
'..à compléter
case 33:mdual=30.75 ' (33-22)*2.75
end select
end function

Tu peux t'en servir soit depuis une procédure classique en VBA soit dans une feuille de calcul.

A+++
 
Merci Zon,

Do Case et Case c'est du pareil au même. Une fonction que je ne conaissais pas avant cette semaine... Et pourtant très utile.

Finalement, j'ai utilisé en parti, ta formulation dans FileMaker et ça marche parfaitement. En fait, j'ai utilisé la fonction "Choix" ou "Choice".

Voici de que ça donne:
mdegre est le cumulatif des degrés-jour et czdegre est le cumulatif de j-1(la veille)

TEST( Total_mdegre - czdegre < 22 ; 0 ;
CHOIX(Total_mdegre - czdegre >33 ;
((Total_mdegre - czdegre) - 22 ) *
CHOIX(Total_mdegre - czdegre -23;
2;
2.1;
2.15;
2.2;
2.3;
2.4;
2.45;
2.5;
2.6;
2.7;
2.8 );
Total_mdegre - zdegre))

Merci encore

Armand
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…