LinkedIn Facebook

HomeBlog › Excel: funzioni condizionali

Excel:

Utilizzare Funzioni Condizionali che fanno riferimento a dati presenti in altre cartelle di lavoro

L’argomento di questa newsletter deriva da un caso concreto. Forse è molto specifico ma fa parte di una serie di piccoli trucchi che fanno comprendere come la profonda conoscenza di Excel, anche al di là di ciò che viene normalmente imparato, può aiutare a risolvere molti problemi.
Molte funzioni e funzionalità vengono qui accennate, alcune delle quali sono state già approfondite in precedenza o verranno approfondite in un secondo momento in spazi specifici: la funzione SE, la funzione SOMMA, gli errori nelle formule o funzioni, la funzione SOMMA.SE, le matrici, il lavoro di collegamento tra fogli di lavoro di cartelle di lavoro diverse.
La funzione SOMMA.SE restituisce l’errore #VALORE! quando i dati si trovano in un file diverso e questo file è chiuso.
Questo limite si supera operando come si faceva quando la funzione SOMMA.SE ancora non faceva parte di Excel ovvero nidificando la funzione SE dentro la funzione SOMMA.
Un problema ulteriore è dato dal fatto che la funzione SOMMA.SE accetta una matrice (ovvero un intervallo di celle come argomento) mentre la funzione Se NON accetta una matrice come argomento ma solo una singola cella.
Un esempio semplice può essere chiarificatore. Nella cella E1 sono calcolate le vendite di Bari basate sull’elenco dati presente in A1:B20. Nella funzione SOMMA.SE vengono prese delle matrici o intervalli celle come argomento: A1:A20 per l’intervallo criterio e B1:B20 per l’intervallo Somma.





Quando si prova a mettere la funzione SE dentro la funzione SOMMA per dire ad Excel: se la città presente nella cella D1 è una di quelle che si trova nell’intervallo celle A1:A20 allora fammi la somma dei valori presenti in B1:B20 la funzione è destinata al fallimento, come testimonia l’immagine sotto, perché la funzione Se non accetta come argomento del test una matrice o intervallo celle come A1:A20.
La funzione è scritta correttamente ma non si ottiene il risultato voluto: 5891 è, infatti, il totale di tutte le celle B1:B20 e non solo delle vendite di Bari che, come sappiamo dall’esempio precedente, è 1079.



Occorre fare una forzatura per far accettare alla funzione SE una cosa che normalmente non accetta ovvero un intervallo di celle come argomento.
Tale “forzatura” si ottiene confermando la formula dopo la sua immissione non con il tasto INVIO come normalmente si farebbe ma con la pressione combinata dei tasti CTRL, SHIFT ed INVIO.
In questo modo si ottiene una matrice ovvero il SE accetta l’intervallo celle A1:A10 come argomento.
Ora, supponiamo che i dati si trovino in un altro file.
Quando nella cella B1 del nostro foglio principale vogliamo sapere le vendite di Bari, fintanto che il foglio di origine è aperto, allora la funzione SOMMA.SE dà il risultato (diverso dal primo esempio ma solo perché i dati immessi nell’origine sono differenti).
Quando si chiude il file di origine, però, viene restituito l’errore #VALORE!, come evidenzia l’immagine.



Posto che il foglio di origine si chiama “Dati di base”, che i dati si trovano nel foglio denominato “Foglio1” che l’intervallo del criterio è nelle celle A1:A20 e che l’intervallo di celle da sommare è B1:B20, bisogna digitare la funzione che, nel caso venga trovata la città digitata in A1 nell’intervallo celle A1:A20 del “Foglio1” del file “Dati di base”, sommi i valori presenti nell’intervallo B1:B20 dello stesso foglio.
La funzione va confermata con CTRL+SHIFT+INVIO per fare accettare al SE la matrice A1:A20 come argomento.
A questo punto il dato viene calcolato anche quando la cartella di lavoro “Dati di base” è chiusa.




Se l'articolo è stato utile, seguimi sui Social networks cliccando i pulsanti in alto a destra di questa pagina.

Se vuoi condividere questo articolo nella tua Rete sociale, puoi utilizzare i bottoni Social a sinistra