Ignorare i valori N / A in una somma (Microsoft Excel)
Chris ha una serie di fogli di lavoro in una cartella di lavoro, uno per ogni mese dell’anno. In un foglio di lavoro di riepilogo vuole sommare i valori nella stessa cella su ogni foglio di lavoro. Chris lo fa utilizzando una formula simile alla seguente:
=SUM(January:December!B19)
Funziona bene, ad eccezione di quei casi in cui una delle celle B19 nell’intervallo può contenere il valore # N / D. In tal caso, Chris ottiene anche # N / A nel risultato sul foglio di riepilogo. Quello che Chris vorrebbe è che i risultati # N / A vengano ignorati per la somma, come se le celle fossero vuote.
Ci sono un paio di modi per affrontare questo problema. Forse il metodo migliore è guardare la formula utilizzata nella cella B19 del foglio di lavoro di ogni mese. Ad esempio, diciamo che la formula su ogni foglio di lavoro è simile a questa:
=SUM(B1:B18)
È possibile modificare le formule su questi singoli fogli di lavoro in modo che prendano in considerazione la possibilità dei valori # N / D. Ad esempio, quanto segue funzionerebbe perfettamente con B19 su ogni foglio di lavoro:
=SUMIF(B1: B18,"<>#N/A")
Ciò fa sì che la somma nella cella B19, in ogni foglio di lavoro, sia basata su tutti i valori non N / D nell’intervallo. Per questo motivo, potresti pensare di poterlo fare sul foglio di riepilogo:
=SUMIF(January:December!B19,"<>#N/A")
Ciò non funzionerà, tuttavia, perché la funzione SUMIF non è di natura “tridimensionale”; non può essere utilizzato su una serie di fogli di lavoro nel modo mostrato. È per questo motivo che la soluzione migliore è tornare ai singoli valori, su ogni foglio di lavoro, che vengono conteggiati nel foglio di lavoro riepilogativo.
Se la tua formula sui fogli di lavoro dei singoli mesi non usa la funzione SOMMA, ovviamente non è così facile cambiarli per usare SOMMA.SE. In tal caso, potresti voler “racchiudere” la formula esistente in un controllo per vedere se la formula restituisce un valore di errore. Questa tecnica viene eseguita in questo modo:
=IF(ISERROR(<current_B19_formula>),0,<current_B19_formula>)
La funzione IF cerca un valore True / False, che viene restituito dalla funzione ISERROR. Pertanto, se la formula restituisce un valore di errore (come # N / D), la funzione SE restituisce 0, altrimenti restituisce il risultato della formula originale. Questo approccio controlla qualsiasi risultato di errore; se preferisci che controlli solo i risultati # N / A e li ignori, puoi usare la seguente variazione:
=IF(ISNA(<current_B19_formula>),0,<current_B19_formula>)
C’è una grande differenza tra questi approcci basati su IF e l’utilizzo dell’approccio SUMIF menzionato in precedenza nel suggerimento. L’approccio SOMMA.SE restituisce una somma per tutti i valori non N / D nell’intervallo, ma l’approccio basato su IF restituisce uno 0 per l’intera somma se sono presenti valori # N / D nell’intervallo. Ciò può ovviamente influire su ciò che appare sul tuo foglio di riepilogo, quindi dovrai determinare quale approccio è più adatto ai dati con cui stai lavorando.
ExcelTips è la tua fonte di formazione economica su Microsoft Excel.
Questo suggerimento (3156) si applica a Microsoft Excel 97, 2000, 2002 e 2003. Puoi trovare una versione di questo suggerimento per l’interfaccia a nastro di Excel (Excel 2007 e versioni successive) qui: