La funzione VAL.ERR e la funzione SE per evitare errori
Ultima modifica: 21-06-2016

Uso della Funzione SE

Può capitare una situazione del genere.

Vogliamo preparare a priori un foglio di lavoro con tutte le formule ancor prima di compilarlo. Nella colonna Tot mettiamo le formule come visibile nella tabella sottostante.

Descrizione Q.tà Costo Tot La formula
    0 =B2*C2
    0 =B3*C3
    0 =B4*C4
    0 =B5*C5

Ma otteniamo una serie di 0 (zero) che potrebbero non essere graditi. Questo perché nelle colonne indicate dalla formula non ci sono valori. Solo mettendo dei valori nelle colonne indicate dalle formule verranno, al posto degli 0 (zero) i giusti valori come è mostrato in questa seconda tabella

Descrizione Q.tà Costo Tot La formula
  5 2 10 =B2*C2
  7 3 21 =B3*C3
      0 =B4*C4
    0 =B5*C5

Questo problema è di facile soluzione. E' sufficiente che includiamo la formula o la funzione di Excel nella funzione Se . In pratica in queste formule diciamo:

Se il valore nella cella B2 è diverso da nulla esegui il calcolo, altrimenti lascia la cella vuota.

L'esempio è visibile in questo esempio:

Descrizione Q.tà Costo Tot La formula
  5 2 10 =SE(B2<>"";B2*C2;"")
  7 3 21 =SE(B3<>"";B3*C3;"")
        =SE(B4<>"";B4*C4;"")
        =SE(B5<>"";B5*C5;"")

 

Nascondere l'errore #N/D e #DIV/0! con la funzione VAL.ERR e la funzione SE

Molte volte può succedere che le nostre formule restituiscano il messaggio #N/D (valore non disponibile) oppure la ancora più terribile #DIV/0! (Divisione per 0 - zero)

 

Vediamo un esempio.

In questa tabella abbiamo un elenco che contiene i dati di alcune persone suddivisi in Cognome, Nome, e Partita IVA.

Dato un cognome nella quinta colonna, nella sesta colonna vogliamo il relativo Nome. Per cercare il nome sappiamo che dobbiamo usare il famoso CERCA.VERT.

12 Cognome Nome P.IVA   Cogn cerc Nome trovato
13 Dionisio Massimo 40468737659   Orlandi Marilena
14 Lagana' Roberto 08107150002   Giorgini #N/D
15 Orlandi Marilena 60847839230      
16 Calvi Stefano 63116541155   Orlandi Marilena
17 Poggi Mario 46135462107   Giorgini  
18 Maini Anna 63412085762      

Se il cognome indicato nella quinta colonna è presente nell'elenco e se la formula è scritta correttamente nella sesta colonna avremo il giusto nome corrispondente.

Ma può succedere anche che il cognome indicato nella quinta colonna non sia presente nella tabella in esame. In questo caso avremo in risposta della funzione un antiestetico #N/D (valore non disponibile) come è ben visibile nella seconda riga della sesta colonna.

Nella prima coppia di righe usiamo la funzione così come ci viene fornita da Excel

=CERCA.VERT(E13;$A$13:$C$18;2;0)
=CERCA.VERT(E14;$A$13:$C$18;2;0)

ed otteniamo:

Nella seconda coppia di righe usiamo una funzione poco nota: VAL.ERRORE

La sintassi è VAL.ERRORE(val) dove con (val) indichiamo la cella che contiene il valore da valutare

Questa funzione restituisce il valore logico Vero o Falso a seconda dell'esito e, se opportunamente abbinata alla funzione SE e alla formula che intendiamo usare, rende il nostro lavoro più gradevole.

In questo caso con questa formula diciamo ad Excel:

se il CERCA.VERT ci restituisce un errore non scrivere nulla, altrimenti esegui il CERCA.VERT

=SE(VAL.ERRORE(CERCA.VERT(E16;$A$13:$C$18;3;0));"";CERCA.VERT(E16;$A$13:$C$18;3;0))
=SE(VAL.ERRORE(CERCA.VERT(E17;$A$13:$C$18;3;0));"";CERCA.VERT(E17;$A$13:$C$18;3;0))

 

Un altro esempio

In A11 abbiamo 5

in B11 abbiamo 1

in F11 vogliamo eseguire una divisione: =A11/B11

il risultato sarebbe ovviamente 5: 5/1=5

Ma se in B11 avessimo 0 (zero) oppure la cella vuota (5/0) il risultato della divisione sarebbe #DIV/0!

Anche in questo caso possiamo usare la funzione VAL.ERRORE

=SE(VAL.ERRORE(A11/B11);"";A11/B11)

Scrivere facilmente formule complesse

Per questa funzione avremmo finito. Ma occorre spendere ancora alcune parole per alcuni chiarimenti.

 

Punto primo

Innanzitutto possiamo inserire una funzione di Excel senza scrivere un solo carattere.

La cosa è possibile cliccando sul pulsante Inserisci funzione che sta vicino alla barra delle formule e che fa apparire questa finestra dalla quale scegliamo la funzione desiderata. Scelta la funzione vien fuori la finestra di dialogo relativa alla funzione scelta.

In questa finestra basta posizionare il cursore nelle varie caselle di testo e fare clic sulla cella o sulle celle interessate Nelle caselle i riferimenti alle celle si scrivono da soli. E' ovvio che qualche volta dobbiamo scrivere, come in questo caso, qualche piccola cosa. Se non siamo sicuri di ciò che dobbiamo fare in questa finestra, in basso, sulla sinistra c'è sempre un rinvio alla "Guida relativa a questa funzione" che a parer mio è molto esaustiva.

 

Punto secondo

Le due formule appena presentate, a prima vista ci possono disorientare. Infatti se le dovessimo scrivere direttamente da tastiera non sarebbe difficile commettere errori di digitazione o, addirittura di forma.

Infatti in queste formule usiamo ben tre funzioni del foglio di Excel:

Quando mi trovo in queste situazioni, non so se tutti lo condividono, per facilitarmi nelle operazioni, io preferisco lavorare in questo modo.

in una cella vuota scrivo la formula che mi interessa (per esempio, in questo caso, nella cella J2):

=CERCA.VERT(E2;$A$2:$C$7;2;0)

in un'altra cella scrivo l'altra funzione (in questo caso nella K2)

=VAL.ERRORE(J2)

nell'altra la funzione finale (nella L2 in questo caso)

=SE(K2;"";J2)

A questo punto parto dalla formula finale per creare la formula complessa. In questa  ultima formula sostituisco i riferimenti alle celle con le formule in esse contenute.

Ma andiamo in ordine.

La formula è completa per essere trascritta nella giusta locazione e tutte le formule temporanee possono essere eliminate.