La funzione SOMMA.SE
Tutti conosciamo la funzione SOMMA.SE che viene usata con questa sintassi:
SOMMA.SE(intervallo;criteri;int_somma)
Nell'argomento criteri possiamo usare anche gli operatori di confronto < > <= >= purchè indicati come stringa ossia racchiusi tra doppi apici: ">pera", "<=5", ">="&E14, ecc.
Se vogliamo indicare la sola uguaglianza
il segno = può essere omesso. Lo vedremo nel primo esempio qui sotto.
Qui di seguito possiamo vedere due dei casi più comuni.
Primo esempio: Se nella colonna C la frutta è quella indicata in E13 (pere) sommare i prezzi che sono nella colonna G. La formula è questa:
=SOMMA.SE(C4:C12;E13;G4:G12)
In questo caso le pere verranno incontrate nelle celle C4, C7, C9 e quindi verranno sommati i valori che si trovano nelle celle G4, G7, G9
Secondo esempio: se nella colonna F il numero dei pezzi è maggiore o uguale al valore che è indicato in E14 (50) sommare i prezzi che sono nella colonna F. La formula è questa:
=SOMMA.SE(F4:F12;">="&E14;G4:G12)
In questo caso incontreremo dei numeri che sono maggiori o uguali al numero 50 nelle celle F5, F8, F11 quindi verranno sommati i valori che si trovano nelle celle G5, G8, G11
Terzo esempio: se nella colonna F il numero dei pezzi è maggiore o uguale al valore indicato in E14 sommare solo questi numeri.
Se i valori da sommare si trovano nella stessa colonna indicata dal parametro intervallo, il parametro int_somma può essere omesso:
=SOMMA.SE(F4:F12;">="&E14)
In questo caso incontreremo dei numeri che sono maggiori o uguali al numero 50 nelle celle F5, F8, F11 per cui sono sommati i valori che si trovano in queste celle.
Questa che segue è la tabella esplicativa.
| C | D | E | F | G | |
|---|---|---|---|---|---|
| 3 | frutto | colore | formato | pezzi | prezzo |
| 4 | pere | rosse | cassetta | 25 | 50 |
| 5 | mele | gialle | singola | 50 | 100 |
| 6 | cigliege | rosse | cassetta | 25 | 50 |
| 7 | pere | verdi | cassetta | 25 | 50 |
| 8 | mele | rosse | cassetta | 25 | 50 |
| 9 | pere | rosse | singola | 9 | 18 |
| 10 | mele | gialle | singola | 15 | 30 |
| 11 | mele | verdi | cassetta | 30 | 60 |
| 12 | cigliege | gialle | cassetta | 35 | 70 |
| 13 | pere | 118 | |||
| 14 | 50 | 100 | |||
| 14 | La formula usata in G13 è | ||||
| 15 | =SOMMA.SE(C4:C12;E13;G4:G12) | ||||
| 16 | La formula usata in G14 è | ||||
| 17 | =SOMMA.SE(F4:F12;">="&E14;G4:G12) | ||||
La funzione SOMMA.SE: casi particolari
Ma se si vuole eseguire una somma usando più condizioni, la normale funzione SOMMA.SE non è più sufficiente e la questione si complica alquanto, ma non troppo.
Da ricerche approfondite ho scoperto che la cosa è fattibile utilizzando combinazioni di funzioni, ottenute con
Ho eseguito i prossimi test col foglio di Excel deve essere preparato in questo modo. Una volta presa familiarità con le formule potete tranquillamente adattarle alle singole esigenze.
Questa che segue è la tabella di esempio. Potete inserire le formule dove più vi aggrada e, una volta inserite le formule potete provare a cambiare i valori indicati nelle celle diveersamente colorate.
| A | B | C | D | E | F | G | ||
|---|---|---|---|---|---|---|---|---|
| 3 | frutto | colore | formato | pezzi | prezzo | |||
| 4 | pere | rosse | cassetta | 25 | 50 | |||
| 5 | mele | gialle | singola | 50 | 100 | |||
| 6 | cigliege | rosse | cassetta | 25 | 50 | |||
| 7 | pere | verdi | cassetta | 25 | 50 | |||
| 8 | mele | rosse | cassetta | 25 | 50 | |||
| 9 | pere | rosse | singola | 9 | 18 | |||
| 10 | mele | gialle | singola | 15 | 30 | |||
| 11 | mele | verdi | cassetta | 30 | 60 | |||
| 12 | cigliege | gialle | cassetta | 35 | 70 | |||
| 13 | Totali | 239 | 478 | Queste sono normali somme | ||||
| 14 | delle rispettive colonne | |||||||
| 15 | ||||||||
| 16 | frutta | pere | ||||||
| 17 | colore | rosse | ||||||
| 18 | formato | cassetta | ||||||
| 19 | q.tà | 25 |
Cominciamo a vedere le varie soluzioni.
Combinazione delle funzioni SOMMA(), SE() e CONCATENA()
Il confronto si esegue tra due coppie di valori per rispondere al quesito:
esegui la somma dei valori che si trovano nella colonna F se l'articolo che sta nella colonna C e se il suo colore che è indicato nella colonna D sono uguali all'articolo indicato nella cella C16 e al colore che ho indicato nella cella C17.
La formula è questa:
{=SOMMA(SE(CONCATENA(C4:C12;D4:D12)=CONCATENA(C16;C17);(F4:F12);0))}
Il risultato è 34
Attenzione: la presenza delle parentesi graffe indica che la formula è matriciale, ossia tenendo il cursore sulla barra delle formule occorre accettare la formula premendo la serie di tasti CTRL + SHIFT + INVIO.
Questa operazione farà apparire le parentesi graffe {} attorno alla formula, e farà visualizzare il risultato atteso.
Per copiare la formula nel foglio di lavoro occorre non includere nella selezione le due parentesi graffe { }
Combinazione delle funzioni SOMMA() e SE()
Risolve lo stesso quesito di sopra ma è di più semplice gestione, di facile lettura e permette di ampliare le condizioni portandole bel oltre le due condizioni viste sopra. La formula può essere scritta per una condizione AND o una condizione OR.
Condizione AND: se si verifica la condizione1 e la condizione2 e le altre eventuali condizioni.... L'operatore che unisce le varie condizioni è il segno *
Condizione OR: se si verifica la condizione1 o la condizione2 o le altre eventuali condizioni.... L'operatore che unisce le varie condizioni è il segno +
queste sono le relative formule:
AND
{=SOMMA(SE((C4:C12=C16)*(D4:D12=C17);F4:F12;0))}
il risultato sarà 34
{=SOMMA(SE((C4:C12=C16)*(D4:D12=C17)*(E4:E12=C18);F4:F12;0))}
il risultato sarà 25
OR
{=SOMMA(SE((C4:C12=C16)+(D4:D12=C17);F4:F12;0))}
il risultato sarà 109
Gli argomenti collegati dagli operatori * e + possono essere aumentati per soddisfare qualsiasi condizione AND e OR
Anche queste due formule debbono essere inserita come matriciali perciò una volta scritta occorre editare nuovamente (è sufficiente portare il cursore nella barra delle formule) e premere la combinazione di tasti CTRL + SHIFT + INVIO.
Questa operazione farà apparire le parentesi graffe {} attorno alla formula, e farà visualizzare il risultato atteso.
Combinazione delle funzioni SOMMA() e SE() coi SE nidificati
Altra variante può essere usata con una serie di SE nidificati come in questo esempio
{=SOMMA(SE(C4:C12=C16;SE(D4:D12=C17;F4:F12;0)))}
(a due condizioni) il cui risultato sarà 34
{=SOMMA(SE(C4:C12=C16;SE(D4:D12=C17;SE(E4:E12=C18;SE(F4:F12>=C19;F4:F12;0)))))}
(a quattro condizioni) il cui risultato sarà 25
Ancora formule matriciali!
Uso della funzione MATR.SOMMA.PRODOTTO
Come ultimo caso eseguo la SOMMA.SE usando MATR.SOMMA.PRODOTTO.
Anche usando questa funzione è possibile valutare più di due condizioni. La formula è la seguente e, contrariamente alle precedenti non deve essere inserita come formula matriciale:
=MATR.SOMMA.PRODOTTO((C4:C12=C16)*(D4:D12=C17)*F4:F12)
E' tutto per questa volta. Spero che questa rassegna di formule possa soddisfare appieno le vostre esigenze per quanto riguarda la somma condizionale.
Per facilitare gli esercizi allego anche il file che ho usato per gli esempi eseguiti: sommase.zip
Buon lavoro.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 3 | unito | frutto | colore | formato | pezzi | prezzo | |
| 4 | pererosse | pere | rosse | cassetta | 25 | 50 | |
| 5 | melegialle | mele | gialle | singola | 8 | 16 | |
| 6 | ciliegerosse | cigliege | rosse | cassetta | 25 | 50 | |
| 7 | pereverdi | pere | verdi | cassetta | 25 | 50 | |
| 8 | melerosse | mele | rosse | cassetta | 25 | 50 | |
| 9 | pererosse | pere | rosse | singola | 9 | 18 | |
| 10 | melegialle | mele | gialle | singola | 15 | 30 | |
| 11 | meleverdi | mele | verdi | cassetta | 5 | 10 | |
| 12 | ciliegegialle | cigliege | gialle | cassetta | 5 | 10 |