MATR.SOMMA.PRODOTTO() non restituisce il valore voluto PDF Stampa E-mail
Scritto da Giovanna Arcadu   
Giovedì 17 Agosto 2006 16:27

Domanda

 Per calcolare una somma sotto due condizioni, immetto la formula:
=MATR.SOMMA.PRODOTTO((A2:A10=$H$2);(B2:B10=$H$3);(C2:C10))
Mi viene restituito risultato uguale a 0 (zero) eppure le due condizioni sono verificate e nell'intervallo C2:C10 ho solo valori positivi.
Dove sbaglio?

 

Risposta

La funzione MATR.SOMMA.PRODOTTO() così impostata, richiede la trasformazione dei valori logici VERO e FALSO, restituiti al verificarsi o meno delle due condizioni, in valori numerici rispettivamente 1 e 0.
La formula corretta è:
=MATR.SOMMA.PRODOTTO(1*(A2:A10=$H$2);1*(B2:B10=$H$3);(C2:C10))
[1*VERO = 1; 1*FALSO = 0]
Oppure:
=MATR.SOMMA.PRODOTTO(--(A2:A10=$H$2);--(B2:B10=$H$3);(C2:C10))
[--(VERO) = 1; --(FALSO) = 0]
Si potrebbe anche scrivere:
=MATR.SOMMA.PRODOTTO((A2:A10=$H$2)*(B2:B10=$H$3)*(C2:C10))

La sintassi della funzione MATR.SOMMA.PRODOTTO() è:
MATR.SOMMA.PRODOTTO(matrice1;matrice2;matrice3; ...)
Gli intervalli separati dal punto e virgola, nelle prime due formule, costituiscono tre matrici differenti (matrice1;matrice2;matrice3).
E' necessaria in questo caso la trasformazione di cui sopra.
Nella terza formula sono moltiplicati gli elementi corrispondenti dei tre intervalli e i prodotti vanno a costituire una matrice unica (matrice1).
Al verificarsi o meno delle condizioni impostate, i prodotti dei valori logici: VERO*VERO o VERO*FALSO oppure FALSO*FALSO restituiscono i valori numerici 1, 0 e 0 rispettivamente, per cui la funzione restituisce la corretta somma dei prodotti degli elementi numerici corrispondenti.


Sistema operativo: WIN32

Applicazioni: Excel 97, Excel 2000, Excel 2002/XP, Excel 2003

Ultimo aggiornamento Lunedì 06 Luglio 2009 21:57