2013-01-07 10 views
12

Ho valori booleani in una colonna:TRUE e FALSE non funzionano all'interno di SUM()

A 
1 TRUE 
2 FALSE 
3 TRUE 
4 TRUE 

mi rendo conto che in Excel =TRUE+TRUE rendimenti 2 e =TRUE+FALSE rendimenti 1 che implica TRUE è pari a 1 e FALSE è uguale a 0. Tuttavia, SUM(A1:A4) restituisce sempre 0 indipendentemente dal fatto che si tratti di uno stile formula in serie ... Mi aspetto che sia 3 (il numero di TRUE nell'intervallo).

Un modo per ottenere 3 è utilizzare {=SUM(IF(A1:A4,1,0))} (stile formula array), che trovo ridondante ... Qualcuno potrebbe pensare ad una soluzione più semplice di quella?

risposta

11

È possibile provare a prefissare l'intervallo con -- e immettere come matrice. Il -- converte i booleani nei loro equivalenti interi:

=SUM(--(A1:A4)) 

Per il documentation sulla funzione SUM:

Se un argomento è una matrice o un riferimento, solo i numeri in quella matrice o riferimento sono contati. Celle vuote, valori logici o testo nell'array o nel riferimento vengono ignorati.

+1

Grazie ... ti capita di avere qualsiasi altra soluzione rispetto a '--'? – SoftTimur

+1

@SoftTimur Quali sono i tuoi vincoli? Il conteggio può essere la scelta migliore se non si desidera sommare. Tuttavia, se hai bisogno di usare 'SUM', penso che sarebbe la soluzione più corta. Altrimenti, il tuo approccio nel fare confronti con 'IF' sarebbe un altro modo. Fondamentalmente la funzione 'SUM' non somma i valori booleani in un intervallo in base alla progettazione, quindi le opzioni diventano un po 'più limitate :) – RocketDonkey

+1

Questa è una formula di matrice, che richiede l'uso di Ctrl-Shift-Invio. – denfromufa

10

Ho avuto successo con CONTA.PIÙ.SE in un range dove condizione è TRUE

+0

Nella mia circostanza i countifs/countif, sum ecc. Non funzionano con gli array booleani, ma il - inizialmente lo fissa. Stava funzionando 4 giorni fa però, lo stesso foglio di calcolo. Ora restituisce # N/A. Bizzarro. – AER

+0

Hmm ... eccellere può fare cose funky. Senza il foglio di calcolo, controllerei la tua formula e forse assicurarmi che i tuoi riferimenti siano corretti. Ho spostato le celle con nome e cose del genere in passato e ho ottenuto anche il risultato # N/A. – cowboydan

2

Se si desidera utilizzare somma sul vero falso campo/si poteva più il vero/falso condizione da 1 in modo che valuta su 0 o 1. Quindi la funzione somma funzionerebbe sulla colonna.

+0

Risposta totalmente sottovalutata, ed è quella corretta. Non c'è niente di più semplice di moltiplicare per 1, e funziona magnificamente. – newyuppie

Problemi correlati