2017-10-17 7 views
0

J'essaie de calculer la moyenne pondérée, mais j'obtiens un «#Erreur».Le calcul de la moyenne pondérée ne fonctionne pas

Ma formule actuelle est en dehors du sol dans le tableau matriciel est:!

= SOMME (champs EstimatedEPSGrowth.Value * (Les champs ProposedValue.Value/SOMME (IIF (IsNothing (champs EstimatedEPSGrowth.Value), 0 , les champs! ProposedValue.Value))))

l'instruction If est là parce que chaque ligne ne peut avoir une croissance EPS, dans le cas où la croissance EPS sera fixé à 0 pour que la sécurité particulière

+0

Il semble qu'il divise en réalité en valeur proposée lorsque la croissance EPS est non nul; c'est ce que tu veux vraiment faire? Si oui, êtes-vous sûr que la valeur proposée n'est jamais nulle ou nulle? – Jayvee

+0

Il semble que si EstimatedEPSGrowth est 'rien', alors vous essayez de diviser par zéro. –

+0

Ceci est la version correcte car j'ai collé le faux, mais toujours le même #Error. = SOMME (Fields! EstimatedEPSGrowth.Value * (IIF (IsNothing (Fields! EstimatedEPSGrowth.Value), 0, Champs! ProposedValue.Value/SOMME (IIF (IsNothing (Fields! ProposedValue.Value), 0, Fields! ProposedValue. Value))))) – user172839

Répondre

0

Je pense que vous devrait vérifier si Fields! Proposed Value.Value = 0 si oui alors 0 sinon Fields! ProposedValue.Value/SUM (Champ ! S ProposedValue.Valu e)

J'ai écrit le code pour vous

SUM(
Fields!EstimatedEPSGrowth.Value* 
(
IIF(IsNothing(Fields!E‌​stimatedEPSGrowth.Va‌​lue),0, IIF(IsNothing(Fields!Proposed‌​Value.Value),0,Fields!ProposedValue.Value/SUM(Field‌​s!ProposedValue.Valu‌​e))) 
) 
)