Re,
J'ai un peu avancé dans ma fonction de moyenne pondérée.
Le problème demeure au niveau du type de variable... Si un cellule est
vide, elle est interprétée comme contenant 0 (un absent a donc 0 !).
Il ne faut pas alors un type Variant, mais que mettre alors pour que
"vide" soit bien "vide" et pas "0" ? Peut-être suis-je ne train de faire
fausse route ?
Voici le code qui fonctionne bien en dehors de ce cas (toute critique
bienvenue !)
Function MoyPond(plage_coeff as Variant, plage_notes as Variant) as
Variant
total_notes_prod_coeff = 0
somme_coeff = 0
For i = Lbound(plage_coeff(),2) to UBound(plage_coeff(),2)
if Not(IsEmpty(plage_notes(1,i))) Then
If IsNumeric(plage_notes(1,i)) Then
total_somme_prod_note_coeff = total_somme_prod_note_coeff
+ plage_coeff(1,i)*plage_notes(1,i)
somme_coeffs = somme_coeffs + plage_coeff(1,i)
End If
End If
next
If somme_coeffs > 0 Then
MoyPond = total_somme_prod_note_coeff/somme_coeffs
Else
MoyPond = "absent"
End if
End Function
la fonction est utilisée avec qqch de la forme : =MOYPOND(B2:D2;B3:D3)
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]